oracle中pl/sql程序高级类型的使用
来源:互联网 发布:c语言库函数大全 编辑:程序博客网 时间:2024/05/20 18:52
-- 1.pl/sql程序结构 ********************-- 定义部分declare...-- 执行部分begin...-- 异常处理部分exception...-- 结束end;-- 定义部分-- 2.最简pl/sql程序 ********************-- 执行部分beginupdate scott.dept set dname='技术部' where deptno = 60;commit;-- 结束end;-- 3.有输出显示的pl/sql程序 ********************declarev_dname varchar(40);begin select dname into v_dname from scott.dept where deptno=60; dbms_output.put_line(v_dname);end;-- 4.有输入输出的pl/sql程序 ********************declarev_dname varchar(40);begin-- update scott.dept set dname='技术部' where deptno = 60; select dname into v_dname from scott.dept where deptno=&deptno; dbms_output.put_line(v_dname);end;-- 5.%type类型的使用********************declarev_dname scott.dept.dname%type;beginselect dname into v_dname from scott.dept where deptno=&deptno;dbms_output.put_line('部门名称:'||v_dname);end;-- 6.%rowtype的使用********************declarev_dept scott.dept%rowtype;beginselect * into v_dept from scott.dept where deptno=&deptno;dbms_output.put_line('部门编号:'||v_dept.deptno||' 部门名称:'||v_dept.dname||' 地点:'||v_dept.loc);end;-- 7.record的使用********************declaretype emp_record_type is record( ename scott.emp.ename%type, dname scott.dept.dname%type);v_emp_record emp_record_type;begin select e.ename , d.dname into v_emp_record from scott.emp e,scott.dept d where e.empno=&empno and e.deptno = d.deptno; dbms_output.put_line('员工名称:'||v_emp_record.ename||' 所在部门:'||v_emp_record.dname);end;-- 8.table 类型的使用********************declaretype emp_record_type is record( ename scott.emp.ename%type, dname scott.dept.dname%type);type emp_table_type is table of emp_record_typeindex by varchar2(20);v_emp_table emp_table_type;beginselect e.ename , d.dname into v_emp_table(0) from scott.emp e,scott.dept d where e.deptno=d.deptno and e.empno=&no1;select e.ename , d.dname into v_emp_table(1) from scott.emp e,scott.dept d where e.deptno=d.deptno and e.empno=&no2; dbms_output.put_line('员工名称:'||v_emp_table(0).ename||' 所在部门:'||v_emp_table(0).dname); dbms_output.put_line('员工名称:'||v_emp_table(1).ename||' 所在部门:'||v_emp_table(1).dname);end;-- 9.table类型的多行使用********************declaretype dname_type is table of scott.dept.dname%type;v_dname dname_type;beginselect dname bulk collect into v_dname from scott.dept ;for i in v_dname.first .. v_dname.last loopdbms_output.put_line('部门名称:'||v_dname(i));end loop;end;-- 10.record、table 类型的联合使用********************declaretype emp_record_type is record( ename scott.emp.ename%type, dname scott.dept.dname%type);type emp_table_type is table of emp_record_type;v_emp_table emp_table_type;beginselect e.ename , d.dname bulk collect into v_emp_table from scott.emp e,scott.dept d where e.deptno=d.deptno and (e.empno=&no1 or e.empno=&no2);FOR i IN v_emp_table.first .. v_emp_table.last LOOP dbms_output.put_line('员工名称:'||v_emp_table(i).ename||' 所在部门:'||v_emp_table(i).dname);end loop;end;-- 11.array 类型的使用********************declaretype emp_array is array(4) of scott.emp%rowtype;v_emp emp_array;beginselect * bulk collect into v_emp from scott.emp where rownum<5;for i in v_emp.first .. v_emp.last loop dbms_output.put_line('员工名称:'||v_emp(i).ename||' 部门编号:'||v_emp(i).deptno);end loop;end;
0 0
- oracle中pl/sql程序高级类型的使用
- 在oracle的PL程序块中执行一个varchar2类型变量中的sql 语句
- 高级PL/SQL的使用;
- Oracle 中Java 对象与PL/SQL类型的映射及使用
- Oracle 11g PL/SQL程序块,存储图片等BLOB字段类型的列PL/
- oracle的PL/SQL定义类型
- PL/SQL程序的变量类型
- 在PL/SQL中使用日期类型
- Oracle PL/SQL 高级编程
- PL/SQL中oracle的sql优化
- ORACLE数库之PL/SQL高级篇 存储过程,函数,包,触发器的使用
- Oracle:PL/SQL 中如何使用Array
- Oracle:PL/SQL 中如何使用Array
- Oracle中PL/SQL引擎和SQL引擎DATE类型的不同处理
- Oracle PL/SQL使用
- Oracle-PL/SQL使用
- Oracle PL SQL专家指南 高级PL/SQL解决方安案的设计与开发
- 使用Oracle的PL/SQL发送Email
- Jquery滑块展示
- 使用git和github管理自己的项目---真实开发环境的策略
- 6. 自定义函数
- JSP学习笔记五之application和page对象
- Spring MVC 通过@Value注解读取.properties配置
- oracle中pl/sql程序高级类型的使用
- 学习C++反汇编-构造函数
- 集训队专题(7)1003 Task Schedule
- 机器学习: 贝叶斯决策 2
- 对象 接口 抽象类
- hdu 1584 蜘蛛牌【dfs+简单剪枝】
- Nginx一个server主机上80、433http、https共存
- 空间统计史话:元首的黑科技
- yii2 strace 追踪,本地文件