1、宣告乙個記錄變數emp_record 將emp表所有成員放入變數中,列印編號為7788的員工名稱和工資資訊。
**:
declare
emp_record emp%rowtype;
begin
select
*into emp_record
from emp
where empno=
7788
; dbms_output.put_line(
'雇員名稱為:'
||emp_record.ename)
; dbms_output.put_line(
'雇員工資為:'
||emp_record.sal)
;end
;
執行結果截圖:
2、查詢emp表中職工號7788的工資,輸出工資的值並且如果工資小於3000那麼把工資更改為3000,異常部分對no_data_found異常進行處理,輸出沒有該員工。
**:
declare
v_sal emp.sal%
type
;begin
select sal into v_sal
from emp
where empno=
7788
; dbms_output.put_line(
'員工工資:'
||v_sal)
;if v_sal<
3000
then
update emp
set sal=
3000
where empno=
7788
;--使用update函式更新emp表中資料
endif
;exception
when no_data_found then
dbms_output.put_line(
'沒有該員工');
end;
執行結果截圖:
3、建立乙個記錄型別type_record,型別包含v_name,v_salary,v_job,v_deptno等分量,要求記錄型別中各個分量的資料型別和emp表中ename,sal,job,deptno列的資料型別一致(%type實現)。建立乙個變數,變數名為v_ record,讀取emp表中職工號為7788的ename,sal,job,deptno為該變數賦值,輸出該變數的值。
**:
declare
type type_record is record(
v_name emp.ename%
type
,v_sal emp.sal%
type
,v_job emp.job%
type
,v_deptno emp.deptno%
type);
v_record type_record;
begin
select ename,sal,job,deptno
into v_record
from emp
where empno=7788
;dbms_output.put_line(
'員工姓名:'
||v_record.v_name)
;dbms_output.put_line(
'工資:'
||v_record.v_sal)
;dbms_output.put_line(
'職務:'
||v_record.v_job)
;dbms_output.put_line(
'部門編號'
||v_record.v_deptno)
;end
;
執行結果截圖:
Oracle PL SQL 語句塊用法
set serveroutput on begin update scott.emp set sal 800.00 where empno 7369 if sql found then dbms output.put line 表已更新 else dbms output.put line 表沒有更新...
Oracle PL SQL語言基礎 控制語句
預定義異常種類 異常處理 異常說明 access into null 在未初始化物件時出現 case not founf 在case 語句中的選項與使用者輸入的資料不匹配時出現 collection is null 在給尚未初始化的表或陣列賦值時出現 cursor already open 使用者試...
Oracle PL SQL語句塊的使用
oracle database,又名 oracle rdbms,或簡稱 oracle 是甲骨文公司的一款關聯式資料庫管理系統。5.1 建立資料檔案大小20m的表空間 create tablespace usertbs1 datafile d tmp usertbs1.dbf size 20m 5.2...