PlusMagi's Blog By Pitt Phunsanit SQL Server SQL Server: ค้นหา Table Description

SQL Server: ค้นหา Table Description

ทำ database ต่อจากคนอื่นแบบไม่มีคู่มือ อาศัยดูจาก description ของตารางที่บางคนมีจรรยาบรรณเขียนอธิบายให้ไว้
find_from_table_name_description.sql

DECLARE @search NVARCHAR (max) = '%Pitt%';

SELECT
	DB_NAME () AS DatabaseName
	,
 SCHEMA_NAME (t.schema_id) AS SchemaName
	,
 t.name AS TableName
	,
 CAST (ep_t.value AS NVARCHAR (MAX)) AS TableDescription
	,
	-- New Columns Requested
	c.name AS ColumnName
	,
 CAST (ep_c.value AS NVARCHAR (MAX)) AS ColumnDescription
	,
 c.column_id AS ColumnOrder
	,
	-- Combined Name for reference
	DB_NAME () + '.' + SCHEMA_NAME (t.schema_id) + '.' + t.name + '.' + c.name AS FullyQualifiedObjectName
FROM
	sys.tables t
INNER JOIN
 sys.columns c
 ON
	t.object_id = c.object_id
	-- Join for TABLE Description (minor_id = 0) LEFT JOIN
 sys.extended_properties ep_t
 ON
	t.object_id = ep_t.major_id
	AND ep_t.minor_id = 0
	AND ep_t.name = 'MS_Description'
	-- Join for COLUMN Description (minor_id = column_id) LEFT JOIN
 sys.extended_properties ep_c
 ON
	c.object_id = ep_c.major_id
	AND c.column_id = ep_c.minor_id
	AND ep_c.name = 'MS_Description'
WHERE
	t.name LIKE @search
	OR CAST (ep_t.value AS NVARCHAR (MAX)) LIKE @search
	OR c.name LIKE @search
	OR CAST (ep_c.value AS NVARCHAR (MAX)) LIKE @search
ORDER BY
	SchemaName
	, TableName
	, ColumnOrder;

อ่านเพิ่มเติม

ป้ายกำกับ:, , , , ,