版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、Oracle技術實驗報告(五)實驗名稱Oracle 編程(一)姓名學號班級成績實 驗 內(nèi) 容實驗(1)熟練掌握編寫和調(diào)試PL/SQL塊的方法。頭驗(2)熟練掌握編寫和調(diào)試存儲過程方法。曰的(3)熟練掌握編寫和調(diào)試函數(shù)方法。曰的(4)熟練掌握各種控制結(jié)構語句的使用。(1) 編寫一個PL/SQL塊,輸出emp表中所有員工的員工名、員工號、 工資和部門號。BEGINFOR v_emp IN (SELECT * FROM EMP) LOOP II ' I I II ' I Ill ' If;END LOOP;END;/(2) 創(chuàng)建一個存儲過程,以員工號為參數(shù),輸出該員工的工資。
2、(提示:如果不存在該員工,則顯示“員工號不存在”)CREATE OR REPLACE PROCEDURE OUTPUT_SAL(p_emp no %type)ASV_sal %type;BEGINSELECT sal INTO v_sal FROM emp WHERE emp no=p_emp no;(v_sal); EXCEPTIONWHEN NO_DATA_FOUND THEN(員工號不存在';END;(3) 編寫一個PL/SQL塊,查詢名為“ SMITH'的員工信息,并輸出 其員工號、工資、部門號。如果該員工不存在,則插入一條新 記錄,員工號為2007,員工名為“ SMI
3、TH',工資為1500,部門 號為10。如果存在多個名為“SMITH'的員工,則輸出所有名為“SMITH'的員工號、工資和部門號。(提示:要使用NO_DATE_FOUN和 TOO_MANY_ROW兩個異常。) DECLAREV_emp no %type;V_sal %type;V_dept no %type;BEGINSELECT emp no,sal,dept no INTOV_empno,v_sal,v_deptno FROM emp WHERE ename='SMITH' (v_empno| ',|v_sal| ''|v_d
4、eptno);EXCEPTIONWHEN NO_DATA_FOUND THENINSERT INTO EMP(emp no, en ame,sal,dept no)VALUES(2007SMITH,1500,10);WHEN TOO_MANY_ROWS THENFOR v_emp IN (SELECT empno,sal,deptno FROM emp WHERE ename='SMITH) LOOPII)II ) END LOOP;END;/(4) 倉U建一個存儲過程,以部門號為參數(shù),輸出該部門入職日期最 早的員工姓名。(提示:如果不存在該部門,則顯示“無此部門或此部門無員工!” )
5、CREATE OR REPLACE PROCEDURE CC(p_deptno %type)ASV_en ame %type;BEGINselect en ame into v en ame from emp where dept no=p dept no實 驗 內(nèi)容and hiredate=(select min( hiredate) from emp wheredept no=p_dept no);(v_en ame);excepti onwhe n n o_data_fo und the n('無此部門或此部門沒有員工!');END;(5) 創(chuàng)建一個函數(shù),以員工號為參數(shù),
6、返回該員工的工資。CREATE OR REPLACE FUNCTIONRET_SAL(p_emp no %type)RETURN %typeASv_sal %type;BEGINSELECT sal INTO v_sal FROM emp WHERE emp no=p_emp no;RETURN v_sal;EXCEPTIONWHEN NO_DATA_FOUND THENRETURN -1;END;/(6) 編寫一個PL/SQL塊調(diào)用(5)中創(chuàng)建的函數(shù)。如果不存在該 員工,則顯示“員工號不存在!”命令:DECLAREV_emp no %type;V_sal %type;BEGINV_emp n
7、o:=&x;V_sal:=ret_sal(v_emp no);If v_sal=-1 the n(員工號不存在);Else(v_sal);End if;END;/(7) 創(chuàng)建一個函數(shù),以部門號為參數(shù),返回該部門的平均工資。CREATE OR REPLACE FUNCTION RET_AVGSAL(p_dept no %type)RETURN %typeASv_avgsal %type;BEGINSELECT avg(sal) INTO v_avgsal FROM empWHERE deptno=p_deptno;IF v_avgsal IS NULL THENRETURN -1;ELS
8、ERETURN v_avgsal; END IF;END;/(8) 編寫一個PL/SQL塊調(diào)用(7)中創(chuàng)建的函數(shù)。如果不存在該 部門,貝U顯示“部門號不存在!”。DECLAREV_dept no %type; V_avgsal %type;BEGINV_dept no:=&x;V_avgsal:=ret_avgsal(v_dept no);If v_avgsal=-1 the n(部門號不存在!);Else (v_avgsal); End if;END;/(9) 倉U建一個函數(shù),以員工號為參數(shù),返回該員工所在部門的平 均工資。CREATE OR REPLACE FUNCTIONRET_
9、AVGSAL_EMPNO(p_emp no%type)RETURN %typeASv_dept no %type;v avgsal %type;BEGINSELECT dept no INTO v_dept no FROM emp WHERE empno=p_empno;SELECT avg(sal) INTO v_avgsal FROM emp WHERE deptno=v_deptno;RETURN v_avgsal;EXCEPTIONWHEN NO_DATA_FOUND THENRETURN -1;END;/(10) 編寫一個PL/SQL塊調(diào)用(9)中創(chuàng)建的函數(shù)。如果不存在該 部門,則顯
10、示“員工號不存在!”DECLAREV_empno %type;v_avgsal %type;BEGINV_emp no:=&x;V_avgsal:=RET_AVGSAL_EMPNO(v_emp no);If v_avgsal=-1 the n(員工號不存在!'Else(v_avgsal);End if;END;/(11) 創(chuàng)建一個存儲過程,以一個整數(shù)為參數(shù),輸出工資最高的前 幾個(參數(shù)值)員工的姓名。CREATE OR REPLACE PROCEDURE max_ n(p_n int)AS v_i in t:=1;BEGINfor v_emp in (SELECT * FROM emp ORDER BY sal desc) loopJExit whe n v_i=p_n;v i:=v i+1;end loop;END;/(12)創(chuàng)建一個存儲過程,以兩個整數(shù)為參數(shù),輸出工資排序在兩 個參數(shù)之間的員工姓名。CREATE OR REPLACE PR
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版農(nóng)村土地整治舊房買賣合同范本4篇
- 二零二五年度牛奶飲品行業(yè)標準制定與執(zhí)行合同4篇
- 2025年度品牌跨界合作與聯(lián)名推廣合同8篇
- 二零二五年度城市綠地用地使用權轉(zhuǎn)讓合同
- 二零二五年度農(nóng)藥技術支持代理銷售合同樣本
- 2025年度鐵藝圍欄出口貿(mào)易采購合同
- 二零二五年度新材料研發(fā)采購合同(中英文版)3篇
- 二零二五年度外匯市場投資培訓借款合同投資培訓
- 2025年度個人二手房買賣合同履約保證金合同
- 二零二五年度人工智能(AI)技術咨詢服務合同2篇
- 人員測評與選拔的主要方法課件
- 2024年內(nèi)蒙古電力集團招聘筆試參考題庫含答案解析
- 阿米巴落地實操方案
- 藥物制劑工(三級)理論試題題庫及答案
- 高強度間歇訓練(HIIT)對代謝健康的長期影響
- ICU患者導管留置登記表
- 中建商務工作指南手冊
- 耳鼻咽喉:頭頸外科疾病診斷流程與冶療策略
- 貴州省2023年中考英語真題
- 個人借條電子版模板
- 中國思想史 馬工程329P
評論
0/150
提交評論