欢迎来到天天文库
浏览记录
ID:15079968
大小:41.50 KB
页数:13页
时间:2018-08-01
《oracle学习笔记38418》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、ORACLE学习笔记384181、定义记录类型的语法typeworker_record_typeisrecord(idnumber(4),namevarchar2(20));worker_recordworker_record_type;2、表类型定义语法(用下标区分表类型变量中的每一个元素如:表类型变量(下标));typemy_table_typeistableofvarchar2(20)indexbybinary_integer;my_tablemy_table_type;TYPEtable
2、_typeISTABLEOFVARCHAR2(20)INDEXBYBINARY_INTEGER;TYPEmy_table_typeISTABLEOFtable_typeINDEXBYBINARY_INTEGER;my_tablemy_table_type;3、定义数组的语法TYPEmy_varray_typeISVARRAY(2)OFNUMBER;v_arraymy_varray_type:=my_varray_type(0,0);4、for循环FORiIN1..2LOOPv_array(i):
3、=i*100;DBMS_OUTPUT.PUT_LINE('Index'
4、
5、to_char(i)
6、
7、'is:'
8、
9、to_char(v_array(i)));ENDLOOP;5、例外处理;SETserveroutputONDECLAREv_dnamedept.dname%TYPE;v_dept_recdept%ROWTYPE;BEGINBEGINSELECTdnameINTOv_dnameFROMdept;EXCEPTIONWHENTOO_MANY_ROWSTHENDBMS_OUTPUT.PUT_L
10、INE('取部门名称错误处理放在这儿。');WHENOTHERSTHENNULL;END;BEGINSELECT*INTOv_dept_recFROMdept;EXCEPTIONWHENTOO_MANY_ROWSTHENDBMS_OUTPUT.PUT_LINE('取部门信息的错误处理放在这儿。');WHENOTHERSTHENNULL;END;DBMS_OUTPUT.PUT_LINE('取得结果部门的名称是:'
11、
12、v_dname);DBMS_OUTPUT.PUT_LINE('取得结果部门的信息如
13、下:');DBMS_OUTPUT.PUT_LINE('编号:'
14、
15、v_dept_rec.deptno);DBMS_OUTPUT.PUT_LINE('名称:'
16、
17、v_dept_rec.dname);DBMS_OUTPUT.PUT_LINE('驻在地:'
18、
19、v_dept_rec.loc);END;/6、分支语句;DECLAREgradechar:='B';BEGINIFgrade='A'THENDBMS_OUTPUT.PUT_LINE('Excellent');ELSIFgrade='B'THEND
20、BMS_OUTPUT.PUT_LINE('VeryGood');ELSIFgrade='C'THENDBMS_OUTPUT.PUT_LINE('Good');ELSIFgrade='D'THENDBMS_OUTPUT.PUT_LINE('Fair');ELSIFgrade='F'THENDBMS_OUTPUT.PUT_LINE('Poor');ELSEDBMS_OUTPUT.PUT_LINE('Nosuchgrade');ENDIF;CASEgradeWHEN'A'THENDBMS_OUTPUT
21、.PUT_LINE('Excellent');WHEN'B'THENDBMS_OUTPUT.PUT_LINE('VeryGood');WHEN'C'THENDBMS_OUTPUT.PUT_LINE('Good');WHEN'D'THENDBMS_OUTPUT.PUT_LINE('Fair');WHEN'F'THENDBMS_OUTPUT.PUT_LINE('Poor');ELSEDBMS_OUTPUT.PUT_LINE('Nosuchgrade');ENDCASE;END;7、循环语句LOOPD
22、BMS_OUTPUT.put(ret);ret:=ret+1;EXITWHENret>5;ENDLOOP;again:=again-1;IFagain>=0THENDBMS_OUTPUT.PUT_LINE('');DBMS_OUTPUT.PUT_LINE('下面转到标号label0处继续执行');GOTOlabel0;ENDIF;FORretIN1..5LOOPDBMS_OUTPUT.put(ret);ENDLOOP;8、定义游标cursor游标名[(形式参数表)]isselect子句;打开游标
此文档下载收益归作者所有