2011-06-02 44 views
6

Sql Server Management Studio(2008)有什麼方法可以查看查詢結果中每個字段的數據類型嗎?在SQL Server Management Studio中查看結果集的模式

在這種情況下,我正在運行一個返回結果集的存儲過程,我想知道nvarchar列的長度和小數的精度。

過去,我創建了一個視圖,它包含存儲過程中的基礎查詢,然後查看列列表,但是在這種情況下,過程中的查詢太複雜了。

任何想法?

回答

6

快速和髒的片段,要求結果集中的所有字段都被命名或別名;

select * into #T 
from 
    openrowset('SQLNCLI', 'Server=.;Trusted_Connection=yes;', 'exec thedb.dbo.sp_whatever') 
exec('use tempdb exec sp_columns #T drop table #T') 
+0

相同的方法和死熱 - 對不起,我不能標記兩個答案。指向服務器的亞歷克斯K =。而sp_columns比sp_help更具體。非常感謝。 – 2011-06-02 16:20:29

+1

必須啓用「Ad-hoc分佈式查詢」才能使用此功能: sp_configure'show advanced options',1; RECONFIGURE; sp_configure'Ad Hoc Distributed Queries',1; RECONFIGURE; GO – 2013-04-03 17:47:07

4

最好的辦法可能是使用OPENROWSET將過程的輸出存儲到表中,然後檢查該表。例如:

SELECT * INTO YourHoldingTable 
    FROM OPENROWSET('SQLNCLI', 'Server=YourServerName;Trusted_Connection=yes;', 'EXEC YourDatabase.YourSchema.YourProcedureName') 
GO 

sp_help 'YourHoldingTable' 
GO 

DROP TABLE 'YourHoldingTable' 
GO 
相關問題