我需要一個SQL查詢來枚舉SQL Server 2005中特定數據庫的所有視圖(我只需要視圖名稱)。SQL查詢列出SQL Server 2005數據庫中的所有視圖
回答
要完成襯托(用什麼已經建議):
SELECT * FROM sys.views
這給每個視圖額外的屬性,不能從sys.objects中(其中包含適用於所有類型的屬性)或INFORMATION_SCHEMA.VIEWS。雖然INFORMATION_SCHEMA方法確實提供了開箱即用的視圖定義。
SELECT *
FROM sys.objects
WHERE type = 'V'
儘量避免使用一般的「sys.objects中」 - 用更具體的意見,而不是 - 'sys.views' – 2010-05-25 10:33:26
運行此添加DatabaseName在哪裏條件。
SELECT TABLE_NAME, ROW_NUMBER() OVER(ORDER BY TABLE_NAME) AS 'RowNumber'
FROM INFORMATION_SCHEMA.VIEWS
WHERE TABLE_CATALOG = 'DatabaseName'
或刪除條件添加使用。
use DataBaseName
SELECT TABLE_NAME, ROW_NUMBER() OVER(ORDER BY TABLE_NAME) AS 'RowNumber'
FROM INFORMATION_SCHEMA.VIEWS
SELECT SCHEMA_NAME(schema_id) AS schema_name
,name AS view_name
,OBJECTPROPERTYEX(OBJECT_ID,'IsIndexed') AS IsIndexed
,OBJECTPROPERTYEX(OBJECT_ID,'IsIndexable') AS IsIndexable
FROM sys.views
來源:http://blog.sqlauthority.com/2010/10/29/sql-server-list-of-all-the-views-from-database/ – MikeTeeVee 2013-03-12 08:37:32
select v.name
from INFORMATION_SCHEMA.VIEWS iv
join sys.views v on v.name = iv.Table_Name
where iv.Table_Catalog = 'Your database name'
有些時候你需要用schema
名稱來訪問,作爲一個例子,你正在使用AdventureWorks數據庫,你需要用模式來訪問。
SELECT s.name +'.'+v.name FROM sys.views v inner join sys.schemas s on s.schema_id = v.schema_id
比標準的「sys.views」 。並非所有人都在DBO模式中轉儲表 – Damian 2017-07-31 14:11:33
- 1. 查詢SQL Server 2012數據庫實例中的所有視圖
- 2. 從SQL Server 2008端查詢SQL Server 2005數據庫
- 3. SQL Server 2005查找某個數據類型的數據庫中的所有列
- 4. SQL請求列出Sql-Server實例中的所有數據庫?
- 5. SQL Server 2005:查詢數據庫上次還原時的T-SQL?
- 6. SQL查詢在SQL Server 2005
- 7. SQL Server 2005查詢
- 8. 查詢SQL Server 2005中
- 9. 查詢SQL Server 2005中
- 10. SQL Server數據庫查詢
- 11. SQL查詢數據庫的Microsoft SQL Server
- 12. 如何在sql server 2005中編寫sql server數據庫圖表?
- 13. 查詢來獲取數據庫的SQL Server 2005中
- 14. SQL Server 2005數據庫中的複雜查詢
- 15. SQL Server 2005的XML查詢
- 16. 刪除SQL Server 2005數據庫中的所有行
- 17. 如何重建SQL Server 2005中的所有數據庫
- 18. 返回所有包含錯誤數據的列SQL Server 2005查詢
- 19. 查詢以列出包含SQL Server 2005特定列的所有表格
- 20. 如何在SQL Server 2008上執行SQL Server 2005生成的數據庫查詢?
- 21. 如何將SQL Server 2005表導出到SQL Server Compact數據庫
- 22. 如何將數據庫從SQL Server 2008導出到SQL Server 2005
- 23. SQL Server查詢獲取表中所有列的數據類型?
- 24. 在將sql server 2005數據庫轉換爲sql server數據庫時出錯2000
- 25. 將所有者添加到SQL Server 2005數據庫中
- 26. 從sql server 2005數據庫導出表/視圖名稱與列名稱
- 27. 一個SQL Server 2005 Express的查詢,將每個數據庫
- 28. SQL Server:列出查詢中使用的所有列
- 29. SQL Server 2005子查詢
- 30. 在SQL Server DISTINCT 2005查詢
錯誤(無用)對象名稱「sys.views」。我正在查詢master DB。 – Steam 2013-11-20 18:02:23
@Steam發佈一個單獨的問題。 – Gili 2015-08-21 18:39:46