sql存儲過程返回多個結果
1. sql server存儲過程中可以用Return返回值么
對的,可以返回整數,而且只能返回一個,很久沒用存儲過程了。我是做ERP的,用的最多的是就是用sql寫報表了。
2. sql存儲過程怎麼返回string類型的返回值怎麼返回多個值
1.如果是返回一個值,可以在存儲過程里增加參數進行返回,如:
create proc aaa(@ReturnValue varchar(100) output)
……
你在存儲過程里設置@ReturnValue的值就行了。
VB里運行存儲過程,然後訪問ReturnValue參數就行了。
2、如果是返回多列數據,就直接在存儲過程里select表,VB里運行存儲過程後,可以獲取返回表。
3. SQL存儲過程返回的兩個結果集,怎麼插入到臨時表
在接收結果的過程或代碼中循環讀取結果數據,再插入即可,又或者你可以在將要返回結果集的存儲過程中直接插入臨時表
4. 怎樣得到mysql存儲過程多條語句的結果集
存儲過程經常需要返回多個結果集。 Mysql 中直接用 select 即可返回結果集。而 oracle 則需要使用游標來返回結 果 集。這一點 Mysql 相對比較方便,如下代碼即可實現輸出兩個結果集:
CREATE PROCEDURE test_proc_multi_select()
BEGIN
select * from testproc;
select * from testproc where id=1;
END;
java 中利用循環,即可獲取結果集數據:
con = MConnection.getConn();
String sql = "{call test_proc_multi_select()}";
cs = con.prepareCall(sql);
boolean hadResults = cs.execute();
int i = 0;
while (hadResults) {
System.out.println("result No:----" + (++i));
ResultSet rs = cs.getResultSet();
while (rs != null && rs.next()) {
int id1 = rs.getInt(1);
String name1 = rs.getString(2);
System.out.println(id1 + ":" + name1);
}
hadResults = cs.getMoreResults(); // 檢查是否存在更多結果集
}
5. C#獲取 sqlserver 存儲過程返回多表數據
返回的時候用dataset就可以,比如你存儲過程這樣寫
select * from A
select * from B
select * from C
select * from D
select * from D
在執行完存儲過程後返回一個dataset
dataset ds = 執行存儲過程
ds.tables[0]就是表A
ds.tables[1]就是表B
ds.tables[2]就是表C
剩下的依次類推.