-
游標(biāo)的語(yǔ)法查看全部
-
pl/sql的程序結(jié)構(gòu)查看全部
-
oracle自動(dòng)調(diào)用pmon(process moniter)查看全部
-
set serveroutput on declare pename emp.ename%type; begin select ename into pename from emp where empno=1234; exception when no_data_found then dbms_output.put_line('沒(méi)有找到該員工'); when othes then dbms_output.put_line('其他例外'); end; /查看全部
-
系統(tǒng)異常: Zero_Divide(被零除) Value_error(算數(shù)或轉(zhuǎn)化錯(cuò)誤) Timeout_on_resource(在等待資源時(shí)發(fā)生超時(shí),多發(fā)生在分布式數(shù)據(jù)庫(kù)) Data_not_found Too_many_rows查看全部
-
--查詢某個(gè)部門(mén)中員工的姓名 set serveroutput on declare --定義帶參數(shù)的光標(biāo) cursor cemp(dno number) is select ename from emp where deptno=dno; begin open cemp(10); loop fetch cemp into penae; exit when cemp%notfound; dbms_output.put_line(pename); end loop; close cemp; end; /查看全部
-
1光標(biāo)的屬性 %found %notfound %isopen : 判斷光標(biāo)是否打開(kāi) %rowcount : 影響的行數(shù) 2.光標(biāo)數(shù)的限制:默認(rèn)情況下,oracle數(shù)據(jù)庫(kù)只允許在同一個(gè)會(huì)話中,打開(kāi)300個(gè)光標(biāo) >--切換到管理員,查看數(shù)據(jù)庫(kù)初始化設(shè)置 >show user >conn sys/password@192.168.56.101:1521/orcl as sysdba >show parameter cursor 修改光標(biāo)數(shù)的限制: alter system set open_cursors=400 scope=both; scope的取值:both(兩個(gè)同時(shí)更改),memory(只更改當(dāng)前實(shí)例,不更改參數(shù)文件),spfile(只更改參數(shù)文件,不更改當(dāng)前文件,數(shù)據(jù)庫(kù)需要重啟) if cemp%isopen then dbms_output.put_line('光標(biāo)已經(jīng)打開(kāi)'); end if; loop --取出一條記錄 fetch cemp into pempno,pjob; exit when cemp%notfound; --打印rowcount的值 dbms_output.put_line('rowcount'||cemp%rowcount); end loop;查看全部
-
1.引用型變量 declare --定義引用型變量:查詢并打印7839的姓名和薪水 --pname varchar2(20); --psal number; pname emp.ename%type; psal emp.sal%type; begin --得到7839的姓名和薪水,并賦值(PL/SQL一共兩種賦值方式) select ename,sal into pname,psal from emp where empno = 7839; --打印姓名和薪水 dbms_output.put_line(pname||'的薪水是'||psal); end; --記錄型變量(數(shù)組) declare --定義記錄型變量:查詢并打印7839的姓名和薪水,注意代表一行 emp_rec emp%rowtype; begin --得到7839一行的信息 select * into emp_rec from emp where empno = 7839; --打印姓名和薪水 dbms_output.put_line(emp_rec.ename||'的薪水是'||emp_rec.sal); end;查看全部
-
1、PL/SQL是對(duì)sql語(yǔ)言的過(guò)程化擴(kuò)展 2、PL/SQL是面向過(guò)程的語(yǔ)言查看全部
-
set serveroutput on查看全部
-
no_data_found、too_many_rows查看全部
-
瀑布模型查看全部
-
set serveroutput on declare --定義光標(biāo)代表給哪些員工漲工資 --alter table "scott"."emp" rename column "job" to empjob cursor cemp is select empno,empjob from emp; pmepno emp.empno%type; pjob emp.empjob%type; begin --rollback;(回退) 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; elsif 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; --對(duì)于oracle,默認(rèn)的事務(wù)隔離級(jí)別是read committed; --事務(wù)的ACID(原子性、一致性、隔離性、持久性) commit; end; /查看全部
-
循環(huán)語(yǔ)句: --while循環(huán)打印數(shù)字的1~10 set serveroutput on declare --定義循環(huán)變量 pnum number := 1; begin while pnum <= 10 loop --循環(huán)體 dbms_output.put_line(pnum); --使該變量+1 pnum := pnum+1; end loop; end; / --loop循環(huán)打印數(shù)字的1~10(推薦) set srveroutput on declare --定義循環(huán)變量 pnum number:=1; begin loop --退出條件 exit when pnum>0; --打印該變量的值 dbms_output.put_line(pnum); --循環(huán)變量+1 pnum:=pnum+1; end loop; end; / --for循環(huán)打印數(shù)字1~10 set serveroutput on declare --定義循環(huán)變量 pnum number:=1; begin for pnum in 1..10 loop --循環(huán)體 dbms_output.put_line(pnum); end loop; end; /查看全部
-
參數(shù)打開(kāi)光標(biāo)時(shí)傳入查看全部
舉報(bào)
0/150
提交
取消