[研究]T-SQL,用 sys.extended_properties 替「資料表(table)」的「描述」、「擴充屬性」添加用途說明
2024-01-26
環境:Visual Studio 2022 + ASP.NET + WebForm + Web Application + C# + SQL Server 2019 + SQL Server Management Studio (SSMS) 19.x
********************************************************************************
T-SQL, SQL Server 2019, sys.extended_properties可以儲存欄位的描述資料,那可以用 sys.extended_properties 儲存 table 的描述嗎?
ChatGPT
是的,sys.extended_properties 可以用來儲存對象(例如表格、欄位、索引等)的描述資料,包括表格的描述。在 SQL Server 2019 中,您可以使用 sys.extended_properties 動態管理視圖(DMV)來查詢和設定對象的擴展屬性。
以下是一個範例,演示如何使用 sys.extended_properties 儲存和檢索表格的描述:
-- 創建表格 CREATE TABLE dbo.SampleTable ( ID INT PRIMARY KEY, Name NVARCHAR(100) ); -- 增加對表格的描述 EXEC sys.sp_addextendedproperty @name = N'MyTableDescription', @value = N'This is a sample table for demonstration purposes.', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'SampleTable'; -- 查詢表格的描述 SELECT obj.name AS TableName, ep.name AS PropertyName, ep.value AS PropertyValue FROM sys.objects obj JOIN sys.extended_properties ep ON obj.object_id = ep.major_id WHERE obj.type_desc = 'USER_TABLE' AND ep.name = 'MyTableDescription'; |
在上面的例子中,我們使用 sys.sp_addextendedproperty 存儲表格的描述。您可以將 @name 設置為您所選的描述屬性的名稱,而 @value 則是實際的描述內容。請注意,@level0type 和 @level0name 用於指定屬性的層次,以確定它屬於哪個模式(schema),而 @level1type 和 @level1name 用於指定對象的類型和名稱,以確定該描述屬於哪個表格。
您可以根據需要修改上述範例,以滿足您的特定需求。
********************************************************************************
SQL Server 在 SSMS 中並沒有類似 欄位 (field) 的 "描述" 可以自行增加每個欄位的用途說明
[研究]SQL Server 2019讓「資料庫圖表」顯示「描述」欄位內容https://shaurong.blogspot.com/2023/10/sql-server-2019.html
[研究]SQL Server Management Studio (SMSS) 19「資料表」「設計」時顯示「描述」欄位 (註解欄位)
https://shaurong.blogspot.com/2023/03/sql-server-management-studio-smss-19.html
https://shaurong.blogspot.com/2023/03/entity-relationship-diagramer.html
(完)
相關
sys.extended_properties (Transact-SQL) - SQL Server | Microsoft Learn
https://learn.microsoft.com/zh-tw/sql/relational-databases/system-catalog-views/extended-properties-catalog-views-sys-extended-properties?view=sql-server-ver16
sp_updateextendedproperty (Transact-SQL) - SQL Server | Microsoft Learn
https://learn.microsoft.com/zh-tw/sql/relational-databases/system-stored-procedures/sp-updateextendedproperty-transact-sql?view=sql-server-ver16
[研究]T-SQL,用 sys.extended_properties 儲存資料表(table)的「描述」、「擴充屬性」
https://shaurong.blogspot.com/2024/01/t-sql-sysextendedproperties-table.html
[研究]SQL Server 2019讓「資料庫圖表」顯示「描述」欄位內容https://shaurong.blogspot.com/2023/10/sql-server-2019.html
[研究]SQL Server Management Studio (SMSS) 19「資料表」「設計」時顯示「描述」欄位 (註解欄位)
https://shaurong.blogspot.com/2023/03/sql-server-management-studio-smss-19.html
https://shaurong.blogspot.com/2023/03/entity-relationship-diagramer.html
沒有留言:
張貼留言