--先刪除原先的表emp
drop table emp;
--建立表emp
create table emp
(ename varchar2(20),
empjob varchar2(20),
sal number);
--select * from emp;
--為表輸入資料
insert into emp values('smith','clerk',800);
insert into emp values('allen','salesman',1600);
insert into emp values('ward','salesman',1250);
insert into emp values('jones','manager',3440);
insert into emp values('king','persident',5000);
--給員工漲工資,總裁1000,經理800,其他400
--set serveroutput on
--修改表中某條記錄的值:update emp set empno=4 where ename='jones';
declare
--定義游標。這個cemp就是儲存多個變數的值的,相當於乙個集合
cursor cemp is select empno,empjob from emp;
--定義變數
pempno emp.empno%type;
pjob emp.empjob%type;
begin
--開啟游標
open cemp;
--迴圈游標中的值,給變數賦值
loop
--取出乙個員工依據員工號對應乙個員工
fetch cemp into pempno,pjob;
--退出,當滿足這個條件的時候退出
exit when cemp%notfound;
--開始判斷員工的職位
if pjob='president' then update emp set sal=sal+1000 where empno=pempno;
else if pjob='manager' then update emp set sal=sal+800 where empno=pempno;
else update emp set sal=sal+400 where empno=pempno;
end if;
end loop;
--關閉游標
close cemp;
--oracle資料庫預設是開啟事務的
--對於oracle,預設的事務隔離級別是read committed
--提交所修改的東西
commit;
dbms_output.put_line('漲工資完成');
end;
/
PL SQL 員工漲工資問題
為員工漲工資,從最低工資漲起,每人漲10 但工資總額不能超過5萬元,請計算漲工資的人數和漲工資後的工資總額,並輸出漲工資人數及工資總額。sql語句 select empno,sal from emp order by sal 游標 迴圈 退出條件 1 工資總額 5萬 2 notfound 變數 1 ...
c 第1次實驗 2 求員工周工資
一問題與分析 檔名稱 b.obj 作 者 汪榮悅 完成日期 2016 年 3月 21日 版 本 號 v1.0 對任務及求解方法的描述部分 輸入描述 無 問題描述 無 程式輸出 某公司工資按周發放,標準是每小時制20元,若員工周工作時間超過40小時,超出部分每小時30元。程式設計 序輸入一名員工一周的...
史玉柱 給員工高工資的時候公司利潤率最高
史玉柱 給員工高工資的時候公司利潤率最高 史玉柱點評謝莉的原話如此 我建議你走高工資的路。我剛才問你調節稅,實際上我是想看工資水平的。根據我過去下海到現在也十好幾年了,總結下來,給員工高工資的時候,實際上是成本最低 公司的利潤率是最高的時候。如果用高工資,在你和他的這種關係上面,你是主動的,如果你比...