簡體   English   中英

在 SQL Server 2012 中,如何從視圖、函數或存儲過程中獲取列名和數據類型?

[英]In SQL Server 2012, how do I get the column name and data type from a view, function, or stored procedure?

我能夠從數據庫表中獲取列名和數據類型:

SELECT COLUMN_NAME, DATA_TYPE 
FROM information_schema.columns
WHERE TABLE_NAME = 'xxx'

如何從視圖、函數或存儲過程中獲取列名和數據類型? 我想我必須使用每個的結果來獲取它們,但我不確定。

謝謝您的幫助

查看

SELECT * FROM sys.columns c where c.object_id = OBJECT_ID('<schema>.<view name>')

表值函數的列:

SELECT * FROM INFORMATION_SCHEMA.ROUTINE_COLUMNS rc WHERE rc.TABLE_NAME = '<udf name>'

存儲過程的

對於 SQL Server 2012 及更高版本:

SELECT name, system_type_name
FROM sys.dm_exec_describe_first_result_set_for_object
(
  OBJECT_ID('<shcema>.<sp name>'), 
  NULL
);

取自檢索存儲過程的列名和類型? . 閱讀那里的答案以了解可能的方法(例如在 2012 年之前)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM