版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章PL/SQL与Oracle服务器之间的交互2023/9/291————真理就在面前、真理就在手下————2023/9/29————真理就在面前、真理就在手下————2目标在PL/SQL中包含SELECT语句
在PL/SQL中包含DML语句
在PL/SQL中控制事物(transactions)确定SQL数据维护语言(DML)语句的输出2023/9/29————真理就在面前、真理就在手下————3PL/SQL中的SQL语句通过使用SELECT
命令从数据库中提取数据行通过使用DML命令对数据库中的数据行进行修改利用COMMIT、ROLLBACK、或SAVEPOINT命令来控制事物(交易)2023/9/29————真理就在面前、真理就在手下————4PL/SQL中的SELECT语句通过使用SELECT
语句从数据库中提取数据语法:SELECTselect_listINTO {variable_name[,variable_name]... |record_name}
FROM table[WHERE condition];2023/9/29————真理就在面前、真理就在手下————5PL/SQL中的SELECT语句需要使用
INTO
子句查询必须返回而且只能返回一行例:DECLAREv_deptno NUMBER(8);v_loc NUMBER(8);BEGINSELECT deptno,locINTO v_deptno,v_locFROM dept_plWHERE dname=‘保卫部';
...END;/2023/9/29————真理就在面前、真理就在手下————6从数据库中提取数据提取特定雇员的雇佣日期和工资例:DECLAREv_hire_dateemp_pl.hiredate%TYPE;v_salemp_pl.sal%TYPE;BEGINSELECThiredate,salINTOv_hire_date,v_salFROMemp_plWHEREempno=7788;...END;/2023/9/29————真理就在面前、真理就在手下————7从数据库中提取数据返回特定部门中所有员工的工资总合。例:SETserveroutputONSETverifyOFFDECLAREv_sum_salemp.sal%TYPE;v_deptno NUMBERNOTNULL:=&p_department_id;BEGINSELECT SUM(sal)--groupfunctionINTO v_sum_salFROM empWHERE deptno=v_deptno;DBMS_OUTPUT.PUT_LINE(v_deptno||'号部门的工资总和为:'||v_sum_sal);END;2023/9/29————真理就在面前、真理就在手下————8命名惯例DECLAREenameemp.ename%TYPE;hiredateemp.hiredate%TYPE;salemp.sal%TYPE;v_empnoemp.empno%TYPE:=7788;BEGINSELECT ename,hiredate,salINTO ename,hiredate,salFROM empWHERE empno=v_empno;END;/2023/9/29————真理就在面前、真理就在手下————9INSERTUPDATEDELETE使用PL/SQL来维护数据通过使用DML命令对数据库的表进行修改:INSERTUPDATEDELETEMERGEMERGE2023/9/29————真理就在面前、真理就在手下————10插入数据向部门(dept)表中添加一新的部门信息例:BEGININSERTINTOdept(deptno,dname,loc)VALUES(deptid_sequence.NEXTVAL,'公关部', '公主坟区');END;/2023/9/29————真理就在面前、真理就在手下————11修改数据增加所有文员员工(CLERK)的工资例:SETverifyOFFDECLARE v_sal_increaseemp.sal%TYPE:=&p_salary_increase;BEGINUPDATE empSET sal=sal+v_sal_increaseWHERE job='CLERK';END;/2023/9/29————真理就在面前、真理就在手下————12删除数据从EMP_PL
表中删除特定职务并且工资高于某一标准的全部员工的数据例:SETverifyOFFDECLAREv_jobemp_pl.job%TYPE:='&p_job';v_salemp_pl.sal%TYPE:=&p_salary;BEGIN DELETEFROMemp_plWHEREjob=v_jobAND sal>v_sal;END;/2023/9/29————真理就在面前、真理就在手下————13合并行根据匹配条件利用EMP表向COPY_EMP表中插入数据行或修改COPY_EMP表中的数据行BEGINMERGEINTOcopy_empcUSINGempeON(c.empno=e.empno)WHENMATCHEDTHENUPDATESETc.empno=e.empno,c.ename=e.ename,c.job=e.job,c.mgr=e.mgr,c.hiredate=e.hiredate,……WHENNOTMATCHEDTHENINSERTVALUES(e.empno,e.ename,e.job,e.mgr,e.hiredate,e.sal,m,e.deptno);END;2023/9/29————真理就在面前、真理就在手下————14命名惯例使用命名惯例来避免在WHERE子句中的二义性数据库的列和标识符应该使用不同的名因为PL/SQL首先检查数据库的表中的列,所以可能产生语法错误本地变量和形式参数名优先于数据库的表名列名优先于本地变量
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度物流服务合同:某电商企业与物流公司合作2篇
- 全新智能医疗设备研发与生产合同(2024版)2篇
- 2024年度演艺经纪合同(详细演出内容、报酬和分成比例)3篇
- 二零二四年度煤矿安全生产监管服务合同3篇
- 2024年度体育赛事组织与推广合同
- 2024年度供需双方沙子石子购销合同协议书3篇
- 建筑垃圾资源化处理承包合同20243篇
- 2024年云计算服务与技术支持合同6篇
- 2024年度融资租赁合同:飞机租赁与购买option协议2篇
- 2024年度游戏开发与运营合同.(2024版)2篇
- 消防栓点检记录表(样表)
- (完整ppt)隧道施工方法课件
- 失禁性皮炎的护理--PPT课件
- 2002年挑战杯作品文集 (65)
- 控压钻井技术及实践(装备与实例)课件
- 贵州省农村义务教育阶段学校特设岗位教师聘任合同书说明...~(doc)-下载
- 无陪护病房实施方案计划
- 合作社档案管理制度管理办法
- 合成车间及甲类仓库泄爆墙施工方案RE
- 锅炉烟管维修施工方案
- 曼昆《经济学原理》(微观)第五版测试题库 (10)
评论
0/150
提交评论