- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1. insert into t1 values(...)
应为: insert into t1(...) values(...)
2.to_char(sysdate,YYYYMMDDHHMMSS)
改为:
to_char(sysdate,YYYYMMDDHH24MISS)
3. select count(*) into v_count from t1 where c1=?;
永远不会触发 no_data_found 错误,应该判断 v_count=0
4.返回值问题
合理的处理办法:
在过程的开始 result:=false;
在过程的结尾 result:=true;
中间不需要对 result 赋值。
不合理的处理办法:
在过程的开始 result:=true;
中间代码每一处判断不符合时需 result:=false 赋值。
在过程的结尾不需对 result 赋值
5. select c1,c2 in from t1 where c3 = v_c3;
if v_c1 = 0 or v_c2 = 0 then
找不到时会报错,不会返回 0
应该用 when no_data_found 判断
6. ... where c1 = || v_c1; c1 字段为字符型, 要加单引号, 否则用不上 c1 索引 ,oracle 内部
转换成了 ... where c1 = ||chr(39)|| to_char(v_c1)||chr(39);
改为: where c1 = ||chr(39) ||v_c1||chr(39);
7. 如果只判断是否存在数据,应加 and rownumlt;2 速度更快
select count(*)
into v_count
from t1
where c1 = v_c1;
应加条件: and rownumlt;2
7. WHERE EXISTS (SELECT *
FROM t1
应为:
WHERE EXISTS (SELECT x
FROM t1
8. RAISE_APPLICATION_ERROR(-20000, infoMsg); 不要都用 20000 错误号
RAISE_APPLICATION_ERROR 的可用错误号范围为 -20000 至 -20999
更多信息请查看 IT 技术专栏
文档评论(0)