- 1、本文档共74页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 在许多情况下,在第一次将包实例化的时候需要运行初始化代码。可以通过在包主体中,在所有对象的后面,添加初始化部分来使之进行初始化。初始化的语法是: Create or replace package body pk1 Is Begin initial-code; End; * 定义一个包,使其中包括下面 功能: 1 建立过程,当传入学号和选课门数,首先判断SC_Number表是否存在,若不存在则创建该表格(包括学号和选修门数两列),将传入值插入或修改到SC_Number表中(该生不存在则插入,若存在则修改其选课门数)(私有过程) 2 建立过程(重载),当用户输入学号(或姓名),课程号,成绩,将该信息插入到SC表格中,若该课程已经满额,则提示相关信息;若该生已经选择了该课程,则修改该课程的成绩为输入成绩;若该生或该课程不存在,则提示相关错误。插入成功后调用上一个过程将学生选课情况修改。 练习 * 定义一个包,使其中包括下面 功能: 3 建立过程,当用户输入学号,将该生对应的选课信息(SC),学生基本信息(Student),SC_Number中关于该生的信息全部删除,若该生不存在,则给出相关提示。 4 建立过程,实现删除SC_Number表格的功能。 练习 * 返回结果集的存储过程 返回值中包括一结果集,例如: Create or replace procedure p1(v_sno varchar, rc out sys_refcursor, nCnt out number) is Begin select count(*) into nCnt from sc where trim(sno)=v_sno; open rc for select * from sc where trim(sno)=v_sno; exception …… --捕获异常 End; * 返回结果集的存储过程 接收一结果集,例如: declare c1 sys_refcursor; rs sc%rowtype; nCnt number; v_sno varchar2(20); Begin v_sno:=‘001’; p1(v_sno,c1,nCnt); --接下页 * 返回结果集的存储过程 接收一结果集,例如: if nCnt=0 then return; end if; loop fetch c1 into rs; exit when c1%notfound; dbms_output.put_line(rpad(rs.sno,10,’ ’ ) ||rpad(rs.cno,10,’ ’)||rs.grade); end loop; End; * Oracle中的锁 在两个不同的会话(Session)中,同时更新一张表,Oracle会自动加行锁。比如: Update student set ssex=‘m’ where sno=‘001’; 当该事务没有结束时(没提交或回滚),其他会话就不能对001学生进行修改。 若我们希望加表锁,则使用以下语句: lock table student in share mode; --共享锁 lock table student in exclusive mode; --排他锁 Oracle的排他锁并不能阻止其他人读。它和共享锁最大的区别是,一张表可以加多个共享锁,但只能加一个排他锁。 * Oracle中的锁 若需要手动加行锁(排他锁),则可以使用Select … for update [wait n]语句实现,只有提交了事物才释放锁: Declare rc sys_refcursor; Begin open rc for select * from student where ssex=‘m’ for update; update student set sage=sage+1 where ssex=‘m’; commit; close rc; End; * Oracle中的锁——行锁和表锁的比较 表锁是粒度最大的锁,在Oracle中这种方法比较浪费资源。行锁是在数据块上标记的,开销很小。 如果编写了一个大批量的更新,它会影响给定表
您可能关注的文档
- 6圆锥和角度公差与检测答辩.ppt
- 2016特岗教师考试心理学串讲探索.ppt
- 地质循环与地质作用分析.ppt
- 6章尺寸链原理与应用答辩.ppt
- 第一单元第4课日月水火技巧.ppt
- 第一单元课文复习技巧.ppt
- 弟子规:步从容,立端正分析.ppt
- 第一单元幸福的摇篮(王)技巧.ppt
- 07-第七章-推出机构答辩.ppt
- 第一讲_如何读懂电路图技巧.ppt
- 2025年天津市冷链物流基地配套道路建设可行性研究报告.docx
- 2025年天津市母婴护理会所专业化服务升级路径可行性研究报告.docx
- 2025年成都市私立医院医美抗衰中心创建可行性研究报告.docx
- 2025年成都市淡化海水在城市道路清洗领域的应用可行性研究报告.docx
- 2025年上海市环卫厨余垃圾生物处理技术应用可行性研究报告.docx
- 2025年天津市花西子针对户外运动妆容的可行性.docx
- 2025年上海市生物发电于秸秆炭化还田协同发电的可行性研究.docx
- 2025年天津市物造纸在可降解农用地膜领域的应用可行性研究报告.docx
- 2025年天津市无人值守充电站智能运维可行性研究报告.docx
- 2025年天津市竹荪种植连作障碍防治技术可行性研究报告.docx
最近下载
- 地理●北京卷丨北京市2023年普通高中学业水平等级性考试地理试卷及答案.docx VIP
- 最新附合导线平差计算表Excel自动计算.xls VIP
- 拆卸电梯施工方案.docx VIP
- Power Up教材配套测试一级别期末测试.pdf VIP
- 14外国文学名著-中考英语时文阅读练习(含答案解析).doc VIP
- JTG 3441—2024 公路工程无机结合料稳定材料试验规程.docx VIP
- 附件:《环境空气温室气体及其示踪物(CO2、CH4、N2O和CO)光腔衰荡光谱法连续自动监测系统运行和质控技术指南》.pdf VIP
- 一至六年级语文复习资料.pdf VIP
- 【简便计算】小数乘除法简便计算专项练习人教版五年级上册数学(含解析).pdf VIP
- 备战2023年英语中考作文真题(书面表达)黄金模板05 解决问题型议论文.pdf VIP
文档评论(0)