
MySql和Oracle
MySql和Oracle
IT源哥
十多年在华为、互联网公司的经验,对CRM、大数据有着深刻的了解和实战经验,主要分享各种项目经验,包括架构、Java、大数据等文章
展开
-
书评《DB2数据库性能调整和优化(第2版)》
收到优快云给我送的《DB2数据库性能调整和优化(第2版)》,我确实心里挺高兴的,目前项目所使用的数据库,正准备从Oracle切换到DB2,而这本书刚好能满足我的需要。 打开书籍,发现这是一本非常实用的书,里面有大量的图例,并配有详细的说明,第9章的SQL优化,在实际开发中非常实用,如果没有深厚的功底,无法写出这样的书来,第10张的案例,看了这些案例,发现跟我们以前发现过的一些事故非常相似,原创 2013-07-30 18:56:34 · 1542 阅读 · 0 评论 -
如何对表操作进行监控
如何对表操作进行监控我们在跟踪定位一些系统问题的时候,经常需要知道哪些地方对一个表进行了操作,查询代码很麻烦,其实有一个简单的方法,就是跟踪表,如下语句,就可以给表t_table增加监控了。BEGIN dbms_fga.add_policy ( test, t_table, fga );END;/我们可以用下面语句就可以查询到对表t_ta原创 2007-12-28 09:53:00 · 2870 阅读 · 0 评论 -
oracle中如何删除重复数据
我们可能会出现这种情况,某个表原来设计不周全,导致表里面的数据数据重复,那么,如何对重复的数据进行删除呢? 重复的数据可能有这样两种情况,第一种时表中只有某些字段一样,第二种是两行记录完全一样。一、对于部分字段重复数据的删除 先来谈谈如何查询重复的数据吧。 下面语句可以查询出那些数据是重复的: select 字段1,字段2,count(*原创 2005-12-23 14:45:00 · 7297 阅读 · 10 评论 -
对查询的优化
对查询的优化~ 查询速度慢的原因很多,常见如下几种: 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内存不足 5、网络速度慢 6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)8、sp_lock,sp_who,活动的转载 2005-11-27 13:57:00 · 1827 阅读 · 0 评论 -
SQL语句优化技术分析
翻译:Jerry [2005-11-11]原文出处:http://www.51testing.com原文作者:不详转载请注明:来自Sawin系统分析之窗操作符优化IN 操作符用IN写出来的SQL的优点是比较容易写及清晰易懂,这比较适合现代软件开发的风格。但是用IN的SQL性能总是比较低的,从ORACLE执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别: ORACLE试图将其转换转载 2005-11-27 13:55:00 · 1388 阅读 · 0 评论 -
UNION 和UNION ALL 的区别
在数据库中,UNION和UNION ALL关键字都是将两个结果集合并为一个,但这两者从使用和效率上来说都有所不同。UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。实际大部分应用中是不会产生重复的记录,最常见的是过程表与历史表UNION。如:select * from gc_dfysunionselect * from ls_jg_原创 2005-11-27 13:36:00 · 2803 阅读 · 2 评论 -
由于查询语句中日期的格式引起的问题
我这边有一个系统,在一个环境下运行完全正常,但迁到另外一个环境后,其中一个查询功能就莫名其妙的出现了问题,我通过检查,发现有一个很复杂的查询语句,在一个数据库环境下查询完全正常,在另外一个环境下查询就出问题了,报的错误是字符串的格式不对。我首先就怀疑是数据库环境的问题,但检查发现,两边的数据库环境都是oracle817。其次我又怀疑是由于数据库中的数据引起的问题,后来检查发现数据没有问题。这样我就原创 2005-11-27 01:29:00 · 4095 阅读 · 5 评论 -
数据库未来展望
数据库未来展望IBM 软件部信息管理解决方案总经理Janet Perna你也许无法相信未来数据管理产品的功能。因此让我们从目前数据库的一些新特性着手。一位年轻人因患某种相对罕见的流感而到医院就诊。这是检查医师本周遇到的第三个相似的病例,他需要更多的信息。困惑不解的医师取了血样并安排了其他一些程序。然后,他坐在计算机前面,(通过一个简单的图形用户界面)申请了一系列血样分析项目,并将结果与世界各地具有转载 2005-10-23 18:25:00 · 2845 阅读 · 0 评论 -
如何将数据库中被锁表解锁
我们在操作数据库的时候,有时候会由于操作不当引起数据库表被锁定,这么我们经常不知所措,不知怎么给这些表解锁,在pl/sql Developer工具的的菜单“tools”里面的“sessions”可以查询现在存在的会话,但是我们很难找到那个会话被锁定了,想找到所以被锁的会话就更难了,下面这叫查询语句可以查询出所以被锁的会话。如下:SELECT sn.username, m.SID,sn.SERI原创 2005-03-23 17:53:00 · 5923 阅读 · 0 评论 -
字符串分拆函数
在Oracle中,如果一个包含分隔符的字符串(比如说“55*62*77”,这个字符串是用*号做分隔符,可以拆分成三个数“55”,“62”和“77”),要将它们拆分出来比较麻烦,下面这个存储过程就是为了方便对字符串的分拆而写的。CREATE OR REPLACE FUNCTION GetParamStr(--字符串分拆函数 i_SrcStr VARCHAR2, -- 包含参数的字符原创 2005-03-21 15:56:00 · 2091 阅读 · 0 评论 -
一个用来生成流水号的存储过程
我们经常需要用一个流水号来唯一表示一条数据,我们有时采用队列来自动生成一个唯一的流水号,但是采用队列经常不能满足我们的需求,比如说,这个队列只能设定一个最小值,最大值,然后进行累加,不能将产生这个流水号的日期包括今这个流水号中;一种类型就要新建一个队列等。下面这个存储过程可以产生一个流水号,它的格式是当前日期(格式YYYYMMDD)+6位的流水号数字,不同的类型只要给出一个不同的类型名称就可以了。原创 2005-03-21 15:19:00 · 3508 阅读 · 0 评论