上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 63 下一页
摘要: select,update,delete 语句中的子查询应当有规律地查找少于20%的表行.如果一个语句查找的行数超过总行数的20%,它将不能通过使用索引获得性能上的提高. 索引可能产生碎片,因为记录从表中删除时,相应也从表的索引中删除.表释放的空间可以再用,而索引释放的空间却不能再用.频繁进行删除操作的被索引的表,应当阶段性地重建索引,以避免在索引中造成空间碎片,影响性能.在许可的条件下,也可以阶段性地truncate表,truncate命令删除表中所有记录,也删除索引碎片. 阅读全文
posted @ 2011-08-25 09:01 郭振斌 阅读(545) 评论(0) 推荐(0) 编辑
摘要: EXECUTE IMMEDIATE代替了以前Oracle8i中DBMS_SQL package包.它解析并马上执行动态的SQL语句或非运行时创建的PL/SQL块.动态创建和执行SQL语句性能超前,EXECUTE IMMEDIATE的目标在于减小企业费用并获得较高的性能,较之以前它相当容易编码.尽管DBMS_SQL仍然可用,但是推荐使用EXECUTE IMMEDIATE,因为它获的收益在包之上。 使用技巧 1. EXECUTE IMMEDIATE将不会提交一个DML事务执行,应该显式提交。 如果通过EXECUTE IMMEDIATE处理DML命令,那么在完成以前需要显式提交或者作为EXECUTE 阅读全文
posted @ 2011-08-25 08:49 郭振斌 阅读(440) 评论(0) 推荐(0) 编辑
摘要: 1. 静态SQLSQL与动态SQL Oracle编译PL/SQL程序块分为两个种:其一为前期联编(early binding),即SQL语句在程序编译期间就已经确定,大多数的编译情况属于这种类型;另外一种是后期联编(late binding),即SQL语句只有在运行阶段才能建立,例如当查询条件为用户输入时,那么Oracle的SQL引擎就无法在编译期对该程序语句进行确定,只能在用户输入一定的查询条件后才能提交给SQL引擎进行处理。通常,静态SQL采用前一种编译方式,而动态SQL采用后一种编译方式。 本文主要就动态SQL的开发进行讨论,并在最后给出一些实际开发的技巧。 2. 动态SQL程序开... 阅读全文
posted @ 2011-08-24 11:27 郭振斌 阅读(540) 评论(0) 推荐(0) 编辑
摘要: 一般的PL/SQL程序设计中,在DML和事务控制的语句中可以直接使用SQL,但是DDL语句及系统控制语句却不能在PL/SQL中直接使用,要想实现在PL/SQL中使用DDL语句及系统控制语句,可以通过使用动态SQL来实现。 首先我们应该了解什么是动态SQL,在Oracle数据库开发PL/SQL块中我们使用的SQL分为:静态SQL语句和动态SQL语句。所谓静态SQL指在PL/SQL块中使用的SQL语句在编译时是明确的,执行的是确定对象。而动态SQL是指在PL/SQL块编译时SQL语句是不确定的,如根据用户输入的参数的不同而执行不同的操作。编译程序对动态语句部分不进行处理,只是在程序运行时动态地创. 阅读全文
posted @ 2011-08-24 11:23 郭振斌 阅读(5406) 评论(0) 推荐(0) 编辑
摘要: PL/SQL里的游标可以分为显式和隐式两种,而隐式有分为select into隐式游标和for .. in 隐式游标两种。所以,我们可以认为,有3种游标用法:A. 显式游标B. select into隐式游标C. for .. in 隐式游标如何正确的选择使用哪种游标,将对你的程序的性能,可读性,代码量等产生重大影响……--By RollingPig,本文简单的列举了PL/SQL中用到的几种不同类型的游标写法,并简单对比了不同游标写法的优缺点,同时给出了一个选择的基本原则。本文并不包括太多的实际运行/性能测试,有兴趣的话,大家可以根据示例自己测试。1.三种游标形式的简单例子A. 显式游标普通显 阅读全文
posted @ 2011-08-24 11:11 郭振斌 阅读(945) 评论(0) 推荐(0) 编辑
摘要: plsql与.net异常处理~procedure XX_PP() isbegin ...exception when e_error then raise_application_error(-20001, "e_error exception: " || sqlerrm); end; try{ ...}catch(exception e){ Respone.Write(e.message); } 阅读全文
posted @ 2011-08-19 13:54 郭振斌 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 一些OU的11g学习studentguide的地址Summary:OracleDatabase11g:JavaDevelopmentStudentGuidehttp://www.oracledatabase12g.com/archives/oracle-database-11g-java-development-student-guide.htmlOracleDatabase11g:XMLDevelopmentStudentGuidehttp://www.oracledatabase12g.com/archives/oracle-database-11g-xml-development-st. 阅读全文
posted @ 2011-08-19 13:46 郭振斌 阅读(776) 评论(0) 推荐(0) 编辑
摘要: 一、什么是Oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据。它使数据库工具,错误消息,排序次序,日期,时间,货币,数字,和日历自动适应本地化语言和平台。影响Oracle数据库字符集最重要的参数是NLS_LANG参数。它的格式如下: NLS_LANG = language_territory.charset它有三个组成部分(语言、地域和字符集),每个成分控制了NLS子集的特性。其中:Language: 指定服务器消息的语言, 影响提示信息是中文还是英文Territor 阅读全文
posted @ 2011-08-15 10:12 郭振斌 阅读(755) 评论(0) 推荐(0) 编辑
摘要: DECLARE v_header_id NUMBER; CURSOR cur_part_list IS SELECT * FROM ske_sys_part_list FOR UPDATE NOWAIT;BEGIN FOR rec_part IN cur_part_list LOOP SELECT ske_sys_part_list_s.nextval INTO v_header_id FROM dual; IF rec_part.header_id IS NULL THEN UPDATE ske_sys_part_list SET header_id = v_header_id WHERE 阅读全文
posted @ 2011-08-14 23:20 郭振斌 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 最近做网站时,套用了一个ext框架,使用Response.Redirect或javascript都无法弹出新窗口。最后使用如下:ClientScript.RegisterStartupScript(this.GetType(), "onclick", "window.open('" + str_url + "','打印','location=no,resizable=yes,scrollbars=yes')", true); 阅读全文
posted @ 2011-08-12 16:11 郭振斌 阅读(1166) 评论(0) 推荐(0) 编辑
上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 63 下一页