文章分类 - Tech
摘要:某种意义上也可以说是 sqlserver 和 mysql 的常用函数对比。 数学函数 1.绝对值 S:select abs(-1) value O:select abs(-1) value from dual 2.取整(大) S:select ceiling(-1.001) value O:select ceil(-1.001) value from dual 3....
阅读全文
posted @ 2007-06-05 13:02
mp3 swf
摘要:大多数人很容易将CSS属性display和visibility混淆,它们看似没有什么不同,其实它们的差别却是很大的。visibility属性用来确定元素是显示还是隐藏,这用visibility="visible|hidden"来表示,visible表示显示,hidden表示隐藏。当visibility被设置为"hidden"的时候,元素虽然被隐藏了,但它仍然占据它原来所在的位置。visibilit...
阅读全文
posted @ 2006-11-20 16:37
mp3 swf
摘要:ORACLE SQL性能优化系列 (十四) 完结篇 46. 连接多个扫描 如果你对一个列和一组有限的值进行比较, 优化器可能执行多次扫描并对结果进行合并连接. 举例: SELECT * FROM LODGING WHERE MANAGER IN (‘BILL GATES’,’KEN MULLER’); 优化器可能将它转换成以下形式 SELECT * FROM LODGING WHERE ...
阅读全文
posted @ 2006-06-22 08:33
mp3 swf
摘要:ORACLE SQL性能优化系列 (十三) 43. 用WHERE替代ORDER BY ORDER BY 子句只在两种严格的条件下使用索引. ORDER BY中所有的列必须包含在相同的索引中并保持在索引中的排列顺序. ORDER BY中所有的列必须定义为非空. WHERE子句使用的索引和ORDER BY子句中所使用的索引不能并列. 例如: 表DEPT包含以下列: DEPT_COD...
阅读全文
posted @ 2006-06-22 08:33
mp3 swf
摘要:ORACLE SQL性能优化系列 (十一) 36. 用UNION替换OR (适用于索引列) 通常情况下, 用UNION替换WHERE子句中的OR将会起到较好的效果. 对索引列使用OR将造成全表扫描. 注意, 以上规则只针对多个索引列有效. 如果有column没有被索引, 查询效率可能会因为你没有选择OR而降低. 在下面的例子中, LOC_ID 和REGION上都建有索引. 高效: SELEC...
阅读全文
posted @ 2006-06-22 08:32
mp3 swf
摘要:ORACLE SQL性能优化系列 (十二) 39. 总是使用索引的第一个列 如果索引是建立在多个列上, 只有在它的第一个列(leading column)被where子句引用时,优化器才会选择使用该索引. 译者按: 这也是一条简单而重要的规则. 见以下实例. SQL> create table multiindexusage ( inda number , indb number ,...
阅读全文
posted @ 2006-06-22 08:32
mp3 swf
摘要:ORACLE SQL性能优化系列 (十) 31. 强制索引失效 如果两个或以上索引具有相同的等级,你可以强制命令ORACLE优化器使用其中的一个(通过它,检索出的记录数量少) . 举例: SELECT ENAME FROM EMP WHERE EMPNO = 7935 AND DEPTNO + 0 = 10 /*DEPTNO上的索引将失效*/ AND EMP_TYPE || ...
阅读全文
posted @ 2006-06-22 08:32
mp3 swf
摘要:ORACLE SQL性能优化系列 (八) 25. 用索引提高效率 索引是表的一个概念部分,用来提高检索数据的效率. 实际上,ORACLE使用了一个复杂的自平衡B-tree结构. 通常,通过索引查询数据比全表扫描要快. 当ORACLE找出执行查询和Update语句的最佳路径时, ORACLE优化器将使用索引. 同样在联结多个表时使用索引也可以提高效率. 另一个使用索引的好处是,它提供了主键(...
阅读全文
posted @ 2006-06-22 08:31
mp3 swf
摘要:ORACLE SQL性能优化系列 (九) 27. 基础表的选择 基础表(Driving Table)是指被最先访问的表(通常以全表扫描的方式被访问). 根据优化器的不同, SQL语句中基础表的选择是不一样的. 如果你使用的是CBO (COST BASED OPTIMIZER),优化器会检查SQL语句中的每个表的物理大小,索引的状态,然后选用花费最低的执行路径. 如果你用RBO (RULE ...
阅读全文
posted @ 2006-06-22 08:31
mp3 swf
摘要:ORACLE SQL性能优化系列 (七 ) 24. 用EXPLAIN PLAN 分析SQL语句 EXPLAIN PLAN 是一个很好的分析SQL语句的工具,它甚至可以在不执行SQL的情况下分析语句. 通过分析,我们就可以知道ORACLE是怎么样连接表,使用什么方式扫描表(索引扫描或全表扫描)以及使用到的索引名称. 你需要按照从里到外,从上到下的次序解读分析的结果. EXPLAIN PLAN...
阅读全文
posted @ 2006-06-22 08:30
mp3 swf
摘要:ORACLE SQL性能优化系列 (六) 20. 用表连接替换EXISTS 通常来说 , 采用表连接的方式比EXISTS更有效率 SELECT ENAME FROM EMP E WHERE EXISTS (SELECT ‘X’ FROM DEPT WHERE DEPT_NO = E.DEPT_NO AND DEPT_CAT = ‘A’); (更高效) SELECT ENAME FRO...
阅读全文
posted @ 2006-06-22 08:30
mp3 swf
摘要:ORACLE SQL性能优化系列 (四) 13. 计算记录条数 和一般的观点相反, count(*) 比count(1)稍快 , 当然如果可以通过索引检索,对索引列的计数仍旧是最快的. 例如 COUNT(EMPNO) (译者按: 在CSDN论坛中,曾经对此有过相当热烈的讨论, 作者的观点并不十分准确,通过实际的测试,上述三种方法并没有显著的性能差别) 14. 用Where子句替换HAV...
阅读全文
posted @ 2006-06-22 08:29
mp3 swf
摘要:7. 减少访问数据库的次数 当执行每条SQL语句时, ORACLE在内部执行了许多工作: 解析SQL语句, 估算索引的利用率, 绑定变量 , 读数据块等等. 由此可见, 减少访问数据库的次数 , 就能实际上减少ORACLE的工作量. 例如, 以下有三种方法可以检索出雇员号等于0342或0291的职员. 方法1 (最低效) SELECT EMP_NAME , SALARY ,...
阅读全文
posted @ 2006-06-22 08:29
mp3 swf
摘要:ORACLE SQL性能优化系列 (三) 8. 使用DECODE函数来减少处理时间 使用DECODE函数可以避免重复扫描相同记录或重复连接相同的表. 例如: SELECT COUNT(*),SUM(SAL) FROM EMP WHERE DEPT_NO = 0020 AND ENAME LIKE ‘SMITH%’; SELECT COUNT(*),SUM(SAL) FROM EMP...
阅读全文
posted @ 2006-06-22 08:28
mp3 swf
摘要:1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQL句级或是会话(session)级对其进...
阅读全文
posted @ 2006-06-22 08:28
mp3 swf
摘要:ORACLE SQL性能优化系列 (二) 4. 选择最有效率的表名顺序(只在基于规则的优化器中有效) ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,因此FROM子句中写在最后的表(基础表 driving table)将被最先处理. 在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表.当ORACLE处理多个表时, 会运用排序及合并的方式连接它们.首先,扫描...
阅读全文
posted @ 2006-06-22 08:28
mp3 swf
摘要:更新密码update SECUSER set PASSWORD = 'DB-F3-ED-BD-7D-F0-4B-FD-A9-34-C9-70-43-D8-DD-0A' where userid='sa'
阅读全文
posted @ 2006-06-05 13:43
mp3 swf
摘要:随着各地ADSL网络的蓬勃发展,实现永久连接、随时在线已不再是遥远的梦,但是,我们必须明白,永久连入Internet同样也意味着遭受入侵的可能性大大增加。知己知彼,方能百战不殆,让我们了解一下黑客入侵ADSL用户的方法和防范手段吧。 黑客入侵ADSL用户的方法 在很多地方都是包月制的,这样的话,黑客就可以用更长的时间进行端口以及漏洞的扫描,甚至采用在线暴力破解的方法盗取密码,或者使用嗅探工具守...
阅读全文
posted @ 2006-03-09 12:45
mp3 swf
摘要:---- 人们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,而忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明显。笔者在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。在对它们进行适当的优化后,其运行速度有了明显地提高!下面我将从这...
阅读全文
posted @ 2006-02-20 10:20
mp3 swf
摘要:NET 连接池救生员 发布日期: 4/1/2004 | 更新日期: 4/1/2004 NET 连接池救生员 防止可淹没应用程序的池溢出 William Vaughn 大多数 ADO.NET 数据提供程序使用连接池,以提高围绕 Microsoft 断开连接的 .NET 结构构建的应用程序的性能。应用程序首先打开一个连接(或从连接池获得一个连接句柄),接着运行一个或多个查询,然后处理行集,最后将连接...
阅读全文
posted @ 2006-02-10 10:18
mp3 swf

浙公网安备 33010602011771号