资源描述:
《历史上最强的sqlfaqfororacle》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、历史上最强的sqlFAQforOracleORACLE之常用FAQV1.0,已经停止更新,准备出chm版本为便于大家阅读.此帖置顶.请不要在后面跟上一些"好","顶"之类的帖子,如果真的要感谢Piner,请多多提交FAQ.谢谢合作--byFenng-----------------------------------------------------------------------------------------------------------------第一部分、SQL&PL/SQL[Q]怎么样查询特殊字符,
2、如通配符%与_[A]select*fromtablewherenamelike'A_%'escape''[Q]如何插入单引号到数据库表中[A]可以用ASCII码处理,其它特殊字符如&也一样,如insertintotvalues('i'
3、
4、chr(39)
5、
6、'm');--chr(39)代表字符'或者用两个单引号表示一个orinsertintotvalues('I''m');--两个''可以表示一个'[Q]怎样设置事务一致性[A]settransaction[isolationlevel]readcommitted;默认语句
7、级一致性settransaction[isolationlevel]serializable;readonly;事务级一致性[Q]怎么样利用游标更新数据[A]cursorc1isselect*fromtablenamewherenameisnullforupdate[ofcolumn]……updatetablenamesetcolumn=……wherecurrentofc1;[Q]怎样自定义异常[A]pragma_exception_init(exception_name,error_number);如果立即抛出异常rais
8、e_application_error(error_number,error_msg,true
9、false);其中number从-20000到-20999,错误信息最大2048B异常变量SQLCODE错误代码SQLERRM错误信息[Q]十进制与十六进制的转换[A]8i以上版本:to_char(100,'XX')to_number('4D','XX')8i以下的进制之间的转换参考如下脚本createorreplacefunctionto_base(p_decinnumber,p_baseinnumber)returnvarch
10、ar2isl_strvarchar2(255)defaultNULL;l_numnumberdefaultp_dec;l_hexvarchar2(16)default'0123456789ABCDEF';beginif(p_decisnullorp_baseisnull)thenreturnnull;endif;if(trunc(p_dec)<>p_decORp_dec<0)thenraisePROGRAM_ERROR;endif;loopl_str:=substr(l_hex,mod(l_num,p_base)+1,1)
11、
12、
13、l_str;l_num:=trunc(l_num/p_base);exitwhen(l_num=0);endloop;returnl_str;endto_base;/createorreplacefunctionto_dec(p_strinvarchar2,p_from_baseinnumberdefault16)returnnumberisl_numnumberdefault0;l_hexvarchar2(16)default'0123456789ABCDEF';beginif(p_strisnullorp_from_b
14、aseisnull)thenreturnnull;endif;foriin1..length(p_str)loopl_num:=l_num*p_from_base+instr(l_hex,upper(substr(p_str,i,1)))-1;endloop;returnl_num;endto_dec;/[Q]能不能介绍SYS_CONTEXT的详细用法[A]利用以下的查询,你就明白了selectSYS_CONTEXT('USERENV','TERMINAL')terminal,SYS_CONTEXT('USERENV','L
15、ANGUAGE')language,SYS_CONTEXT('USERENV','SESSIONID')sessionid,SYS_CONTEXT('USERENV','INSTANCE')instance,SYS_CONTEXT('USERENV','ENTRYID')entryid,S