- 1、本文档共101页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PLSQL 总结-2精品
解决问题: 第3步 每条部门记录获取并显示后, 下面接下来需要获取并显示此部门的员工. 为此, 打开员工表游标, 在嵌套循环中获取并显示其记录, 然后关闭此游标. 然后同样处理下一条部门记录. 依此类推. 下面幻灯片给出了代码. 解决方案 示例2 现在需要一个报表,列举每个地点,紧跟在地点后,列出该地所有部门. 我们还是需要两个游标, 每个表一个. 访问部门表的游标被打开多次, 每次返回一个地点的部门. 下张幻灯片给出了报表生成代码. 示例2 使用多重游标 FOR 循环 使用多重游标 时可用FOR 循环 (和其它游标技术如 FOR UPDATE), 就像使用单个游标时一样. DECLARE CURSOR c_loc IS SELECT * FROM locations; CURSOR c_dept(p_locid NUMBER) IS SELECT * FROM departments WHERE location_id = p_locid;BEGIN FOR v_locrec IN c_loc LOOP DBMS_OUTPUT.PUT_LINE(v_locrec.city); FOR v_deptrec IN c_dept(v_locrec.location_id) LOOP DBMS_OUTPUT.PUT_LINE(v_deptrec.department_name); END LOOP; END LOOP;END; 示例 列出所有部门的所有员工, 增长部分员工的工资: 使用多个游标 本部分讲解了: 利用多个游标生成多层报表 在嵌套循环中声明和使用多个游标 声明和使用多个带参数的游标 带参数的游标 参数是一个变量,它的名称用于 游标的定义中. 游标打开时, 实际参数值传递给 Oracle 服务, 用于决定哪些记录会被选入游标的活动集. 这意味着你可以在同一块中或不同块中多次打开游标, 每次使用不同参数获取不同活动集. 下面幻灯片的例子中,你可传递任意 region_id 给游标,然后游标返回对应地区的国家名称. 带参数的游标 定义带参数的游标 游标定义时声明的每个参数,在游标打开时( OPEN语句中)必须提供一个值. 参数数据类型和定义标量变量时相同, 但不能给出大小(size)和精度. 参数名在游标的 SELECT语句的 WHERE 子句中使用. 语法: 定义带参数的游标 语法中: cursor_name 是前面定义的游标名 parameter_name 是参数名 datatype 是是参数的标量数据类型 select_statement 是不带INTO子句的 SELECT 语句 打开带参数的游标 语法如下: 带参数的游标 打开游标时给参数传递实际的值. 因此你可以多次打开同一游标,每次使用不同参数获取不同的数据(活动集). 下例中, 游标被多次打开. 带参数的游标 DECLARE v_deptid employees.department_id%TYPE; CURSOR empcur(p_deptid NUMBER) IS SELECT employee_id, salary FROM employees WHERE department_id = p_deptid; v_emp_rec empcur%ROWTYPE;BEGIN SELECT MAX(department_id) INTO v_deptid FROM employees; OPEN empcur(v_deptid); LOOP FETCH empcur INTO v_emp_rec; EXIT WHEN empcur%NOTFOUND; DBMS_OUTPUT.PUT_LINE(v_emp_rec.employee_id || || v_emp_rec.salary); END LOOP; CLOSE empcur;END; 带参数的游标 也可在游标 FOR 循环中使用带参数的游标: 带多个参数的游标 下例中游标有两个参数: 带多个参数的游标 下例中游标用于获取所有收入超过$10000的 IT 程序员. DECLARE CURSOR emp_cursor3(p_job VARCHAR2, p_salary NUMBER) IS SELECT employee_id, last_name FROM employees WHERE job_id = p_job AND salary p_salary;BEGIN FOR v
您可能关注的文档
- DT路测性能相关参数分析方法0922精品.ppt
- EDA实验教程-电子钟精品.ppt
- DSC仪器使用方法及注意事项精品.ppt
- ELE小组心得体会精品.ppt
- D-Link防火墙售后配置资料精品.ppt
- e-Chain-WorkFlow易擎工作流引擎产品介绍(开发、实施)精品.ppt
- E+H导波雷达精品.ppt
- EST(五、几种常见的特殊句型)精品.ppt
- eviews - 第07章 离散因变量和受限因变量模型精品.ppt
- E004 传感器工作原理及故障精品.ppt
- 《GB/T 32879-2025电动汽车更换用电池箱连接器》.pdf
- 中国国家标准 GB/T 21649.2-2025粒度分析 图像分析法 第2部分: 动态图像分析法.pdf
- 中国国家标准 GB/T 20899.9-2025金矿石化学分析方法 第9部分:碳量的测定.pdf
- 《GB/T 20899.9-2025金矿石化学分析方法 第9部分:碳量的测定》.pdf
- GB/T 20899.9-2025金矿石化学分析方法 第9部分:碳量的测定.pdf
- 《GB/T 33820-2025金属材料 延性试验 多孔状和蜂窝状金属高速压缩试验方法》.pdf
- GB/T 33820-2025金属材料 延性试验 多孔状和蜂窝状金属高速压缩试验方法.pdf
- 中国国家标准 GB/T 33820-2025金属材料 延性试验 多孔状和蜂窝状金属高速压缩试验方法.pdf
- GB/T 45910-2025信息技术 生物特征识别模板保护方案的性能测试.pdf
- 《GB/T 45910-2025信息技术 生物特征识别模板保护方案的性能测试》.pdf
文档评论(0)