用儲存過程代替資料集

2021-03-31 08:57:00 字數 655 閱讀 8074

問題提出:ghosthjt (天煞孤星)

解答:yang_(揚帆破浪), j9988(j9988)

如果能夠方便的得到儲存過程結果集的表結構。那儲存過程的使用就方便了很多了。比如:

insert into #tmp exec sp_who

要執行這一句,前提必須知道sp_who的結果集的表結構。

這樣的語句又不能執行:select * into #tmp from exec sp_who

解答:1:

select * into #z from openrowset(

'sqloledb',

'server=server;uid=sa;pwd=sapwd;database=master','exec sp_who') as a

2: 如果儲存過程中用到臨時表,要用set fmtonly off

select * into #z from openrowset(

'sqloledb',

'server=server;uid=sa;pwd=sapwd;database=master','set fmtonly  off; exec 儲存過程名') as a

oracle使用儲存過程返回資料集

很多時候,我們想通過儲存過程獲得一個輸出集。我們知道sql server的儲存過程在執行之後,返回的就是一個集合。但是oracle如果要獲得一個輸出集合,就要麻煩一點了。oracle獲得輸出集合是通過遊標實現的,而且遊標需要在package中進行宣告。下面就拿分頁的儲存過程為例。首先,先建立一個包p...

mysql用儲存過程迴圈遍歷操作結果集

最近有個需求,要批量建立一批資料,但要以另一張表篩選出的結果集作為條件,邏輯很簡單,只是需要用到儲存過程,之前都沒用過,所以寫篇文章記錄下,下面的 可以作為示例。建立儲存過程之前需判斷該儲存過程是否已存在,若存在則刪除 drop procedure if exists init template 將...

皕傑報表資料集呼叫儲存過程

皕傑報表可以以資料集的方式來操作儲存過程 第一步 建立一個遊標 create or replace package types as type bj cursor is ref cursor end 第二步 建立儲存過程 create or replace procedure bj test pro...

c 呼叫oracle儲存過程返回資料集

2008 12 20 10 59 57 分類 net 字號訂閱 create or replace package pkg tabletype istype tabletype is ref cursor procedure sp cpzd cpno in varchar2,status in va...

基於百萬資料集的登入儲存過程

現在jtthink資料庫有使用者表 user sys有100萬使用者,書寫登入 1 設定user name為唯一索引,搜尋更加快 2 儲存過程書寫如下 1 begin 2 routine body goes here.34 set gid 0 5 set user name 6 set result...