sql存儲過程數據集
引用
4
樓
oraclefans_
的回復:想麻煩了。。你直接返回遊標就是一個結果集合。。CREATE
OR
REPLACE
PROCEDURE
USP_RETN_VAL(
RETN_VAL_CUR
OUT
sys_refcursor)ISBEGIN
OPEN
RETN_VAL_CUR
FOR
SELECT
*
FROM
TBL1;END;調用declare
cur
sys_refcurso……謝謝
但是我是想執行一個存儲過程後,直接返回表裡所有數據,不要再去操作游標。
Ⅱ sql 存儲過程裡面如何 對數據集循環
A. 在簡單的游標中使用 FETCH
以下示例為 Person.Contact 表中姓氏以字母 B 開頭的行聲明了一個簡單的游標,並使用 FETCH NEXT 逐個提取這些行。FETCH 語句以單行結果集形式返回在 DECLARE CURSOR 中指定的列的值。
USEAdventureWorks
GO
DECLAREcontact_cursorCURSORFOR
SELECTLastNameFROMPerson.Contact
WHERELastNameLIKE'B%'
ORDERBYLastName
OPENcontact_cursor
--Performthefirstfetch.
FETCHNEXTFROMcontact_cursor
--Check@@FETCH_.
WHILE@@FETCH_STATUS=0
BEGIN
--.
FETCHNEXTFROMcontact_cursor
END
CLOSEcontact_cursor
DEALLOCATEcontact_cursor
GO
B. 使用 FETCH 將值存入變數
以下示例與示例 A 相似,但 FETCH 語句的輸出存儲於局部變數而不是直接返回到客戶端。PRINT 語句將變數組合成單一字元串並將其返回到客戶端。
USEAdventureWorks
GO
--.
DECLARE@LastNamevarchar(50),@FirstNamevarchar(50)
DECLAREcontact_cursorCURSORFOR
SELECTLastName,FirstNameFROMPerson.Contact
WHERELastNameLIKE'B%'
ORDERBYLastName,FirstName
OPENcontact_cursor
--.
--Note:
--intheSELECTstatement.
FETCHNEXTFROMcontact_cursor
INTO@LastName,@FirstName
--Check@@FETCH_.
WHILE@@FETCH_STATUS=0
BEGIN
--.
PRINT'ContactName:'+@FirstName+''+@LastName
--.
FETCHNEXTFROMcontact_cursor
INTO@LastName,@FirstName
END
CLOSEcontact_cursor
DEALLOCATEcontact_cursor
GO
Ⅲ SQL SERVER怎麼獲取存儲過程返回的數據集
數據集可以用print的方式返回。
1、創建測試表、插入數據:
createtabletest
(idintnotnull,
namevarchar(10))
insertintotestvalues(1,'張三')
insertintotestvalues(2,'李四')
表裡數據如圖:
Ⅳ 如何在一個PL/SQL存儲過程中輸出一個數據集
如何在一個PL/SQL存儲過程中輸出一個數據集
我記得sql
server
可以直接返回的
不需要傳入數據集參數,只要最後一條是你要執行的SQL就會自動返回.
Ⅳ sql存儲過程與結果集
直接這么寫:
INSERT INTO TABLE1(field1,field2,...)
SELECT value1,value2,... from TABLE2 WHERE ...
存儲過程最後直接寫一個select 語句,外界就可以拿到這個結果集了,不需要用OUTPUT參數
Ⅵ 使用SQL存儲過程返回多結果集怎麼處理
1、返回結果集
這是客戶端應用程序返回結果的最通用的方法。結果集是通過使用SELECT語句選擇數據產生的。結果集可以從永久表、臨時表或局部變數中產生。將結果返回到另一個存儲過程不是一種有效的方法。存儲過程不能訪問另一個存儲過程建立的結果集。
例如從永久表中返回結果集:
USE pubs
GO
CREATE PROCEDURE ap_CreateResultFromPermtable
AS
SELECT au_iname FROM authors
例如從局部變數中創建結果集:
USE pubs
GO
CREATE PROCEDURE ap_CreateResultFromVariable
AS
DECLARE @au_iname char(20)
SELECT @au_iname = au_iname FROM authors
WHERE au_id = 『172-32-1176』
SELECT @au_id
GO
Ⅶ 如何查看SQL存儲過程執行的結果集
打開SQL Server Management Studio找到存儲過程所在的資料庫。在對象資源管理器詳細信息中可以看到存儲過程的文件夾。
點擊打開這個文件夾可以,在搜索中輸入要搜索的存儲過程名稱。
同樣也可以在資料庫目錄結構處選擇存儲過程右鍵菜單中的篩選設置。
在這里可以進行詳細的條件篩選設置。將需要查看的存儲過程搜索出來。
找到這個SQL存儲過程之後,也可以右鍵點擊菜單中的修改,進入SQL存儲過程編輯。
查看SQL存儲過程過程是否帶有參數,因為要執行SQL存儲過程時需要使用的參數。
知道SQL存儲過程的參考類型和基本功能之後,就可以使用的EXEC 存儲過程名+參數來執行SQL存儲過程。
最後在下方查看SQL存儲過程執行結果。
Ⅷ SQL的存儲過程是什麼
存儲過程(Stored Procere)是一組為了完成特定功能的SQL語句集,經編譯後存儲在資料庫中。用戶通過指定存儲過程的名字並給出參數(如果該存儲過程帶有參數)來執行它。存儲過程是資料庫中的一個重要對象,任何一個設計良好的資料庫應用程序都應該用到存儲過程。總的來說,存儲過程具有以下一些優點:
◆存儲過程允許標准組件式編程
◆存儲過程能夠實現較快的執行速度
◆存儲過程能夠減少網路流量
◆存儲過程可被作為一種安全機制來充分利用
基本語法如下:
完整的語法規則如下:
CREATE PROC [ EDURE ] procere_name [ ; number ]
[ { @parameter data_type }
[ VARYING ] [ = default ] [ OUTPUT ]
] [ ,...n ]
[ WITH
{ RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ]
[ FOR REPLICATION ]
AS sql_statement [ ...n ]
Ⅸ sql server存儲過程如何輸出結果集
sql
server
存儲過程
輸出
結果集
還是比較簡單的.
直接在
存儲過程裡面執行
SQL
語句就可以了。
例如:
--
測試返回結果集的存儲過程
CREATE
PROCEDURE
testProc
AS
BEGIN
SELECT
'Hello
1'
AS
A,
'World
1'
AS
B
UNION
ALL
SELECT
'Hello
2'
AS
A,
'World
2'
AS
B;
END
go
剩下的,
就是你用
別的開發語言,
例如
C#
什麼的
,
調用這個存儲過程,
獲取結果集了。
Ⅹ sql 存儲過程,返回數據集 並返回總行數
1、打開SQLServerManagementStudio找到存儲過程所在的資料庫。在對象資源管理器詳細信息中可以看到存儲過程的文件夾。