-
指存儲在數(shù)據(jù)庫中供所有用戶程序調(diào)用的子程序叫存儲過程、存儲函數(shù)。
相同點:完成特定功能的程序
區(qū)別:是否用return語句返回值,存儲函數(shù)可以,存儲過程不可以
查看全部 -
存儲函數(shù)實例,注意,為空時要返回0,不然會出錯,nvl(傳輸值,0)查看全部
-
存儲函數(shù)的語法結(jié)構(gòu)查看全部
-
創(chuàng)建存儲過程的語法。
查看全部 -
使用包
包頭:
create or replace package 包名 as
type 返回名 is ref cursor;
????procedure 存儲過程名 (參數(shù)列表);
end package;
包體:
begin?
????open 游標 for select * from table where X=X
end;
/
查看全部 -
存儲過程調(diào)試:
不推薦遠程調(diào)試;圖形工具放在虛擬機所在服務器的ip地址。
把圖形工具的jar包拷到服務器地址,解壓縮包,執(zhí)行exe文件,啟動工具
新建一個oracle數(shù)據(jù)庫連接
調(diào)試存儲過程,在存儲過程上右鍵點擊編譯進行調(diào)試
給用戶授權(quán)調(diào)試權(quán)限
sqlplus / as sysdba //主機認證登錄
show usr//查詢登錄用戶,顯示超級管理員
grant 。。。。。。to 賬戶
查看全部 -
帶參數(shù)的存儲過程
1、創(chuàng)建帶參數(shù)的存儲過程(如果是存儲函數(shù)需要指出參數(shù)是輸入還是輸出)
create or replace procedure raisesalary(empNo IN number)
as
--說明部分
psal emp.salary%type;
begin
????select salary into psal from emp where no = empNo;
????updatte emp set salary = salary + 100?where no = empNo;
????dbms_output.put_line("漲前:"+‘||psal||’+“漲后”+‘||(psal+100)’)
end;
/
2、執(zhí)行
begin
????raisesalary();
????raisesalary();
????comment();
end;
/
3、plsql查詢幫助
desc dbms_output
4、存儲過程是子程序,一般不需要提交和回滾,但是可以允許
查看全部 -
一、創(chuàng)建存儲過程、存儲函數(shù)
create 【or replace】 procedure 過程名(參數(shù)列表)
as
????--說明部分
begin
存儲程序
end
/
二、調(diào)用存儲過程
1、execute 過程名
2、begin
????存儲過程名;
?????存儲過程名;
end
/
三、命令行調(diào)用存儲過程
1、進入oracle目錄
2、plsql 賬號/密碼@192.168.101.24:1521/orcl
3、host cls
4、打開屏幕輸出開關(guān)set serverport on
5、調(diào)用
查看全部 -
存儲在數(shù)據(jù)庫中供所有用戶調(diào)研的子程序叫做存儲過程、存儲函數(shù)。
區(qū)別:存儲函數(shù)可以用return語句返回值
相同:執(zhí)行特定功能的程序
查看全部 -
包體
查看全部 -
包的聲明
查看全部 -
執(zhí)行
查看全部 -
執(zhí)行
查看全部 -
函數(shù)和過程的選擇取決于多少個返回值
查看全部 -
調(diào)用函數(shù)
查看全部
舉報