第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

游標的問題

1.寫一個存儲過程
? 輸入:員工編號
? 輸出: 如果這個存在,則輸出部門編號,如果部門不存在,則輸出0
? 部門存在,則顯示這個部門的所有的員工的信息

正在回答

1 回答

/*
1.寫一個存儲過程
? 輸入:員工編號
? 輸出: 如果這個存在,則輸出部門編號,如果部門不存在,則輸出0
? 部門存在,則顯示這個部門的所有的員工的信息
SQL語句:
select depno from emp where empno = ??;
判斷存在一條記錄,或者不存在記錄,有兩種方式實現(xiàn)
1. 通過系統(tǒng)例外NO_DATA_FOUND實現(xiàn)
2. 通過游標屬性%notfound實現(xiàn)
--這里選擇通過游標實現(xiàn)
select * from emp;
--集合-->游標-->循環(huán)-->退出條件:%notfound

變量:初始值? 如何得到
v_depno number :=0;
v_empno number := &empno;

*/

set serveroutput on
accept empno prompt 'Please input empno:';

declare

--定義游標
?? ?cursor c_emp(t_empno number) is select depno from emp where empno = t_empno;
?? ?v_depno emp.depno%type;
--所有員工信息的游標
?? ?cursor c_all_emp is select * from emp;
?? ?v_all_emp emp%rowtype;
--定義輸入接收的變量
?? ?v_empno number := &empno;
begin
?? ?--打開光標
?? ?open c_emp(v_empno);
?? ?--得到部門號
?? ?fetch c_emp into v_depno;
?? ?if c_emp%notfound then
?? ??? ?dbms_output.put_line('0部門存在.');
?? ??? ?--輸出所有員工信息
?? ??? ?--打開所有員工游標
?? ??? ?open c_all_emp;
?? ??? ?loop
?? ??? ??? ?--得到一個員工的信息
?? ??? ??? ?fetch c_all_emp into v_all_emp;
?? ??? ??? ?exit when c_all_emp%notfound;
?? ??? ??? ?--打印一個員工的信息
?? ??? ??? ?dbms_output.put_line(v_all.emp.empno||' '||v_all_empno.depno||'...');
?? ??? ??? ?
?? ??? ?end loop;
?? ??? ?--關閉所有員工游標
?? ??? ?close c_all_emp;
?? ?else
?? ??? ?dbms_output.put_line('depno is '||v_depno);
?? ?end if;

--關閉光標
?? ?close c_emp;

end;
/

0 回復 有任何疑惑可以回復我~
#1

qq__5778 提問者

謝謝你啊
2017-03-30 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Oracle數(shù)據(jù)庫開發(fā)必備利器之PL/SQL基礎
  • 參與學習       75161    人
  • 解答問題       213    個

Oracle數(shù)據(jù)庫高級開發(fā)必備的基礎,通過實例帶你熟練掌握

進入課程

游標的問題

我要回答 關注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號