Re: [SQL ] 可以用SELECT抓Stored Procedure的資料 …
※ 引述《JYHuang (夏天到了,冷不起來了說)》之銘言:
: DBMS是SQL 2005
: 因為這支Stored Procedure是滿久以前的人寫的。
: 改的話怕會動到其它程式。
: 能不能做到類似只選取其中欄位的功能嗎?
: 像是這樣
: SELECT col1,col2,(col3/col4) as num
: FROM main.dbo.sp1 @para1,@para2
: Google找到的資料說可以用openrowset
: 不過這個元件在系統上是被關閉的..
做一個暫存資料表去接收原來的預存程序,再撈暫存表的資料
試試
----------------------------------------------
假設要原來的預存程序為 prA,參數為@para1
寫一個新的預存程序
CREATE Procedure prSelectFromPS
@paraA int
AS
--建立一個暫存資料表,與預存程序結果集結構完全相同
CREATE TABLE #temp
(
col1 int,
col2 char(10),
col3 int,
col4 int,
col5 datetime,
...
)
--將結果集填入暫存資料表
INSERT #temp
EXEC prA @para1 = @paraA
--從暫存資料表中撈資料
SELECT
col1,col2,(col3/col4) as num
FROM
#temp
DROP TABLE #temp
--------------------------------------------
然後執行寫好的預存程序
exec prTestselectPr @paraA = 1234
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.109.29.224
Database 近期熱門文章
PTT數位生活區 即時熱門文章