欢迎来到天天文库
浏览记录
ID:34725375
大小:83.68 KB
页数:5页
时间:2019-03-10
《plsql学习基础知识》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、PLSQL学习(一)基础知识 很久以前自己整理的PLSQL一些基础知识,翻出来看看都是比较基础的内容,还是放上来好了。参考的资料是《PL/SQL用户指南与参考》中译版,觉得这是一部很不错的入门书,感谢把这本书翻译出来的网友。 1、乘方的不同应用: 在SQL中乘方只能使用函数Power(a,b)来计算 但在PLSQL中可直接使用a**b表示 2、赋值语句Returning: insertintot1values(90,'SERVICE','BEIJING') Returningrowid,nameintorow_id,info; 注:只限ins
2、ert、update、delete一条记录时进行赋值 3、自定义参数——&: 可SQL和PLSQL中均可使用自定义参数,即需要自己输入值的参数 select*fromldcomwherecomcode=&aandname=&b; PLSQL: declareiint:=&a; nint:=&b; 4、绑定变量的使用: 可使用绑定变量的办法提高SQL效率 SQL>variablexnumber; SQL>exec:x:=8600; SQL>select*fromldcomwherecomcode=:x; 注:PLSQL中的dec
3、lare即隐士绑定,无需再申明 可用Print查看绑定变量 SQL>printx; 也可使用查询 SQL>select:xfromdual; 实际的简单应用: variablexnumber; declare v_datedate; begin foriin1..10loop:x:=i;selectsysdate+:xintov_datefromdual;dbms_output.put_line(v_date);endloop;end; / 在executeimmediate中的应用: decl
4、are v_xt1.num%type; begin executeimmediate'updatet1setnum=8888whereid=:areturningnuminto:b' using2returningintov_x; dbms_output.put_line(v_x); end; 注意returning的返回值在动态SQL中的操作格式 5、%TYPE和%ROWTYPE的区别: %TYPE针对某一字段类型(数组也是单一的类型) %ROWTYPE针对某一整表的类型(游标也是整表) 6、计数循环的逆序法: foriin
5、reverse10..100loop 注意reverse的位置不要记错 7、一般的游标使用法: 1、游标的正常使用需要四步 ①定义游标 cursorc2(dept_nonumberdefault10)is----注意定义dept_no的方法 selectname,agentcodefromlaagentwhererownum<=dept_no; ②打开游标 openc3(dept_no=>20);----可以重新定义dept_no ③提取游标数据 fetchc2intodept_name,dept_loc;----字符类型、个数相
6、等 fetchc3intodeptrec;----deptrec为rowtype exitwhenc3%notfound; ④关闭游标 CLOSEc3; ⑤游标属性 %FOUND--布尔型属性,当最近一次读记录时成功返回,则值为TRUE; %NOTFOUND--布尔型属性,与%FOUND相反; %ISOPEN--布尔型属性,当游标已打开时返回TRUE; %ROWCOUNT--数字型属性,返回已从游标中读取的记录数。 2、使用for自动打开、提取、关闭游标 FORc1_recINc1LOOP FORc1_recIN(SE
7、LECTdname,locFROMdept)LOOP 3、注:单一的SQL语句都是一个隐式的游标,属性为 SQL%FOUND--布尔型属性,当最近一次读记录时成功返回,则值为TRUE; SQL%NOTFOUND--布尔型属性,与%FOUND相反; SQL%ISOPEN--布尔型属性,当游标已打开时返回TRUE; SQL%ROWCOUNT--数字型属性,返回已从游标中读取的记录数。 例如:DELETEFROMempWHEREdeptno=v_deptno;IFSQL%NOTFOUNDTHEN... 8、ForUp
此文档下载收益归作者所有