當前位置:首頁 » 存儲配置 » 存儲過程返回參數

存儲過程返回參數

發布時間: 2022-05-15 21:47:38

A. oracle 存儲過程中怎麼返回參數

存儲過程定義參數時,變數名的後面加上關鍵字OUT,在存儲過程執行中對這個參數進行賦值。等存儲過程執行結束之後,可以在sqlplus中獲得這個參數返回的值。

B. 存儲過程返回參數一般有什麼用

執行查詢命令和批量更新命令以及統計結果,可以使用返回參數查看操作了多少條記錄或具體統計值有多少。

C. SQL 取存儲過程的返回值

存儲過程應該有返回值的,
問題應該出現在你vb6的調用語句中(第二個參數是輸出類型的參數,
是否有正確設置).
你可以在查詢分析器中執行此存儲過程,
看看返回的結果.
還有,
此存儲過程中的select語句最好加上top
1限制,
因為你只要判斷是否能選到結果而已:
select
top
1
*
from
tb_package
where
packagenumber=@a

D. 怎麼從sqlserver的存儲過程獲得返回的數據

SQL Server中存儲過程的返回值不是通過return語句返回的(return語句是在用戶自定義函數中使用的),而是通過存儲過程的參數來返回,在定義存儲過程的參數時使用關鍵字output來指定此參數是返回值。
而在調用存儲過程時,也必須使用關鍵字給接收返回值的變數,這樣才能在調用時獲得存儲過程的返回值。
示例:

create procere dbo.pr_add @a int, @b int, @c int outputas set @c = @a + @bgo

調用:

declare @v intexecute dbo.pr_add 1, 2, @v outputselect @v

E. 存儲過程返回值

create procere InsertNull
@TableName varchar(50),
@Result int output
AS
declare @dtName varchar(1000)
set @dtName='insert into ' + @TableName +' default values'
exec(@dtName)
set @Result=SCOPE_IDENTITY()
select @Result As Result --注意,這里顯示出來
go

然後exec insertnull ...參數
就相當於select Result

如果在程序里,執行這句之後,就能訪問Result欄位了

F. delphi客戶端調用存儲過程返回參數,請問怎麼解決

有位同夥告訴我一種辦法,但答復我不太明白,我的目標是如許的,三層構造下客戶端給存儲過程幾個參數,返回幾個參數答復如下:我有一個經驗,後台資料庫是SqlServer2000:
1.存儲過程不返回記錄集,只返回參數。
TClientDataSet.CommandText:=
'
Declare
@OutputData
int
Excute
StoredProc1
@OutputData
Output
如許就可以返回輸出的參數了。
以上調用輸出可能有錯,但語句是對的,你式一下。
2.存儲過程要返回記錄集,也要返回參數。
你只好再中心層寫辦法調用了。
返回參數值:=
clientdataset.fieldbyname('outputdata').asstring;
在delphi中該怎麼定義參數,怎麼處理,還請明示1。
這個commandtext到底該怎麼寫?Excute
StoredProc1
@OutputData
Output
中的outputdate在存儲過程中是否應當定義?2。Select
@OutputData
起什麼感化?3。多參數怎麼解決,參數名稱是否和存儲過程中應當一樣?4。open打開到底返回的是記載照樣參數?分別怎麼處理?
Select
@OutputData
'
你要用open打開,返回是一筆記錄。如不雅存儲過程名稱位disp1
傳入參數在存儲過程平分別為@time1,@time2
傳出參數位@get1,@get2均為float

G. c#如何取得存儲過程的返回值

比如你的存儲過程返回參數變數名字為@res,而且sqlcommand cmd已經聲明定義;
那麼在執行sql語句之前
應該:
cmd.Parameters["@res"].Direction = ParameterDirection.InputOutput;
然後執行sql語句;
執行完畢再:
int res=(int)cmd.Parameters["@res"].Value;
結束,res就是存儲過程的返回值了

H. 如何獲取存儲過程返回值

樓主會在c#中使用存儲過程嗎?
如果會的話,sql執行函數賦值給一個變數就可以了
sqlconnection
cnn
=
new
sqlconnection();
cnn.connectionstring
=
"data
source
=
數據源;uid=sa;pwd
=
;database=資料庫名";
cnn.open();//資料庫連接
//設置存儲過程參數
sqlparameter
prm;
sqlcommand
cmd
=
new
sqlcommand();
cmd.connection
=
cnn;
cmd.commandtype
=
commandtype.storedprocere;
cmd.commandtext
=
"存儲過程名";
//項目類型
prm
=
new
sqlparameter();
prm.parametername
=
"參數名1";
prm.sqldbtype
=
sqldbtype.varchar;
prm.size
=
50;
prm.value
=
combobox1.text;
prm.direction
=
parameterdirection.input;
cmd.parameters.add(prm);
...
//可以繼續設置參數,參數個數由存儲過程的具體內容決定
cmd.executenonquery();//執行存儲過程
實際上如果要獲取存儲過程的返回值,只要將上面一句代碼修改成:
int
retn
=
cmd.executenonquery();
就可以了

I. 如何調用存儲過程的返回值

存儲過程
中的第一個參數
@title
將接收由調用程序指定的輸入值,而第二個參數
@ytd_sales
將向調用程序返回該值。SELECT
語句使用
@title
參數以獲得正確的
ytd_sales
值,並將該值賦予
@ytd_sales
輸出參數。
CREATE
PROCEDURE
get_sales_for

J. 如何 mysql 存儲過程返回值

mysql中要獲得存儲過程的返回值,可以增加一個out參數,用來返回。

mysql中存儲過程的例子:
CREATE PROCEDURE addvoucher (
IN userid INT,
IN voucherid INT,
OUT result INT
)
BEGIN
SELECT
@endate_a := endate ,@batch_a := batch ,@c_count_a := c_count,
@isdead_a := isdead
FROM
t_voucher
WHERE
id = voucherid;

SET autocommit = 0;
IF EXISTS (
SELECT
*
FROM
t_user_voucher tuv,
t_voucher tv
WHERE
tv.id = tuv.voucherid
AND tv.batch =@batch_a
) THEN

SET result = 1;-- 已存在

SELECT
result;

ELSE

IF @c_count_a > 0 THEN

IF (
TO_DAYS(@endate_a) - TO_DAYS(NOW())
) > 0 THEN

IF @isdead_a = 1 THEN
INSERT INTO t_user_voucher (userid, voucherid, isdead)
VALUES
(userid, voucherid, 1);
UPDATE t_voucher SET c_count = c_count-1 where id = voucherid;

SET result = 0;-- 成功
END;

熱點內容
注冊表中心伺服器地址生成規則 發布:2024-11-16 04:30:19 瀏覽:962
安卓360雙系統怎麼設置 發布:2024-11-16 04:29:32 瀏覽:756
戰網如何找回密碼 發布:2024-11-16 04:21:56 瀏覽:862
安卓手機如何自定義儲存庫 發布:2024-11-16 04:19:06 瀏覽:901
無線網密碼哪裡看到 發布:2024-11-16 04:17:02 瀏覽:922
玩樂高侏羅紀游戲需要哪些配置 發布:2024-11-16 04:05:50 瀏覽:537
數字編程話 發布:2024-11-16 04:05:43 瀏覽:750
電腦配置測試軟體哪個好用 發布:2024-11-16 03:45:01 瀏覽:353
十台電腦伺服器需要什麼配置 發布:2024-11-16 03:44:52 瀏覽:70
天龍八部答題源碼 發布:2024-11-16 03:44:06 瀏覽:221