存儲過程調用
import java.sql.*;
public class ProcereTest
{
public static void main(String args[]) throws Exception
{
//載入驅動
DriverManager.registerDriver(new sun.jdbc.odbc.JdbcOdbcDriver());
//獲得連接
Connection conn=DriverManager.getConnection("jdbc:odbc:mydata","sa","");
//創建存儲過程的對象
CallableStatement c=conn.prepareCall("{call getsum(?,?)}");
//給存儲過程的第一個參數設置值
c.setInt(1,100);
//注冊存儲過程的第二個參數
c.registerOutParameter(2,java.sql.Types.INTEGER);
//執行存儲過程
c.execute();
//得到存儲過程的輸出參數值
System.out.println (c.getInt(2));
conn.close();
}
}
❷ 在oracle中 存儲過程如何調用存儲過程
如果是在三層中的話,把DAL、BLL寫出來,然後在Web層中調用BLL中的方法,就這樣。。
❸ 存儲過程調用存儲過程的語法
執行存儲過程proc2,調用了存儲過程proc1
create prco proc1
as
begin
print '被執行的存儲過程proc1'
end
create proc proc2
as
begin
exec proc1
end
exec proc2
❹ 存儲過程的調用
效果一樣,但是存儲過程有它的優點:
存儲過程的優點:
1.存儲過程只在創造時進行編譯,以後每次執行存儲過程都不需再重新編譯,而一般SQL語句每執行一次就編譯一次,所以使用存儲過程可提高資料庫執行速度。
2.當對資料庫進行復雜操作時(如對多個表進行Update,Insert,Query,Delete時),可將此復雜操作用存儲過程封裝起來與資料庫提供的事務處理結合一起使用。
3.存儲過程可以重復使用,可減少資料庫開發人員的工作量
4.安全性高,可設定只有某此用戶才具有對指定存儲過程的使用權
❺ 如何調用存儲過程
過程:沒有返回值,select 不可能調用
調用過程有專門的語法:call 過程名([實參列表])
❻ 怎麼調用一存儲過程
EXECSP_INSERT_MOCTE_PL@GDDB,@GDDH,'5601','2013060005','000612','9001'
你不會調用帶參數的存儲過程嗎
❼ oracle 存儲過程中調用存儲過程
一個帶參數的存儲過程。
SQL> CREATE OR REPLACE PROCEDURE HelloWorld1 (
2 p_user_name VARCHAR2
3 ) AS
4 BEGIN
5 dbms_output.put_line('Hello ' || p_user_name || '!');
6 END HelloWorld1;
7 /
Procere created.
SQL> CREATE OR REPLACE PROCEDURE CallHelloWorld1 (
2 p_user VARCHAR2
3 ) AS
4 BEGIN
5 -- 調用存儲過程的 存儲過程
6 HelloWorld1(p_user);
7 END CallHelloWorld1;
8 /
Procere created.
執行
SQL> set serveroutput on
SQL> exec CallHelloWorld1( 'Tom' );
Hello Tom!
PL/SQL procere successfully completed.
❽ SQL存儲過程如何調用存儲過程
1、首先先創建一個存儲過程,代碼如圖,存儲過程主要的功能是為表JingYan插入新的數據。
❾ 怎樣從存儲過程中調用函數
一,存儲過程:
1、 在oracle的 配置和移植工具 àNET MANAGER中配置連接
2、 在plsql中新建SQL窗口,編寫存儲過程
3、 在plsql中新建測試窗口,在begin end之間調用
4、 查看編譯錯誤:在命令窗口中show errors procere procere_name
或者 編輯的方式打開存儲過程,在編譯時會有錯誤提示
二,存儲過程基本語法
create procere <過程名>(<參數列表,無參時忽略>)
as|is
變數聲明、初始化
begin
業務處理、邏輯代碼
exception
異常捕獲、容錯處理
end <過程名>;
參數:<參數名> in|out|in out <參數類型,無長度說明> ,如:v_name varchar2
in:入參
out:出參
in out:出入參
註:as|is表示as或is
調用語法:
1)、exec <過程名>;
2)、execute <過程名>;
3)、在PL/SQL語句塊中直接調用。
例:
create or replace procere up_wap(v_param1 in out varchar2,v_param2 in out varchar2)
is
v_temp varchar2(20);
begin
dbms_output.put_line('交換前參數1:'||v_param1||' 參數2:'||v_param2);
v_temp:=v_param1;
v_param1:=v_param2;
v_param2:=v_temp;
dbms_output.put_line('交換後參數1:'||v_param1||' 參數2:'||v_param2);
exception
when others then dbms_output.put_line('There is a error when the procere up_wap executing!');
end up_wap;
/
-- 調用存儲過程
declare
v_param1 varchar2(20):='param1';
v_param2 varchar2(20):='param2';
begin
up_wap(v_param1 => v_param1,v_param2 => v_param2);
end;