DB08数据库第八章教学.ppt

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DB08数据库第八章教学.ppt

create PROCEDURE P_Sno @ls_sno varchar(10) AS BEGIN TRANSACTION DECLARE @au_id varchar(11), @au_fname varchar(20), @au_lname varchar(40), @message varchar(80), @title varchar(80) DECLARE authors_cursor3 CURSOR FOR SELECT au_id, au_fname, au_lname FROM authors WHERE state = 'CA' ORDER BY au_id OPEN authors_cursor3 FETCH NEXT FROM authors_cursor INTO @au_id, @au_fname, @au_lname WHILE @@FETCH_STATUS = 0 BEGIN --PRINT ' ' --@message = ' Books by Author:' PRINT @au_id fetch next from authors_cursor3 into @au_id,@au_fname,@au_lname END CLOSE authors_cursor3 COMMIT TRANSACTION; CREATE OR REPLACE PROCEDURE RAISE_SALARY1(emp_id INTEGER,INCREASE REAL) IS CURRENT_SALARY REAL; BEGIN SELECT SAL INTO CURRENT_SALARY FROM EMP WHERE empno =emp_id; UPDATE EMP SET SAL=SAL+INCREASE WHERE empno=emp_id; EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE(emp_id ||'无此编号'); END; 8.2.4 存储过程 三、游 标 在PL/SQL中,如果SELECT语句只返回一条记录,可以将该结果存放到变量中。 当查询返回多条记录时,就要使用游标对结果集进行处理 一个游标与一个SQL语句相关联。 PL/SQL中的游标由PL/SQL引擎管理 8.2.4 存储过程 declare cursor empcur is select * from emp; emprow emp%rowtype; begin open empcur; loop fetch empcur into emprow; dbms_output.put_line('编号:'||emprow.empno||' 姓名:'||emprow.ename||' 工资:'||emprow.sal); exit when empcur%notfound; end loop; close empcur; end; DECLARE v_ename EMP.ENAME%TYPE; v_salary EMP.SAL%TYPE; CURSOR c_emp IS SELECT ename,sal FROM emp; BEGIN OPEN c_emp; FETCH c_emp INTO v_ename,v_salary; WHILE c_emp%FOUND LOOP DBMS_OUTPUT.PUT_LINE(v_ename||'的工资: '||v_salary); FETCH c_emp INTO v_ename,v_salary; END LOOP; CLOSE c_emp; END; 一、 查询结果为多条记录的SELECT语句 8.1.4 使用游标的SQL语句 使用游标的步骤 1. 说明游标 2. 打开游标 3.推进游标指针并取当前记录 4. 关闭游标 1. 说明游标 8.1.4 使用游标的SQL语句 使用DECLARE语句 语句格式 EXEC SQL DECLARE <游标名> CURSOR FOR <SELECT语句>; 功能 是一条说明性语句,这时DBMS并不执行SELECT指定的查询操作。 使用OP

文档评论(0)

zhoujiahao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档