33 lines
1.7 KiB
SQL
33 lines
1.7 KiB
SQL
|
|
SELECT
|
|
|
|
t.TABLE_NAME AS [TableName],
|
|
c.COLUMN_NAME AS [ColumnName],
|
|
c.ORDINAL_POSITION AS [ColumnIndex],
|
|
CAST(ISNULL(ep.[value], '') AS NVARCHAR(MAX)) AS [ColumnDescription],
|
|
c.DATA_TYPE AS [ColumnType],
|
|
CAST(CASE WHEN c.CHARACTER_MAXIMUM_LENGTH IS NULL THEN c.NUMERIC_PRECISION ELSE c.CHARACTER_MAXIMUM_LENGTH END AS NVARCHAR(10)) AS [ColumnSize],
|
|
CAST(CASE WHEN EXISTS (
|
|
SELECT 1 FROM HissAI_Res.INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc
|
|
INNER JOIN HissAI_Res.INFORMATION_SCHEMA.KEY_COLUMN_USAGE kcu ON tc.CONSTRAINT_NAME = kcu.CONSTRAINT_NAME AND tc.TABLE_SCHEMA = kcu.TABLE_SCHEMA AND tc.TABLE_NAME = kcu.TABLE_NAME
|
|
WHERE tc.CONSTRAINT_TYPE = 'PRIMARY KEY'
|
|
AND kcu.TABLE_SCHEMA = t.TABLE_SCHEMA
|
|
AND kcu.TABLE_NAME = t.TABLE_NAME
|
|
AND kcu.COLUMN_NAME = c.COLUMN_NAME
|
|
) THEN 1 ELSE 0 END AS BIT) AS [ColumnIsPK],
|
|
CAST(CASE WHEN c.IS_NULLABLE = 'YES' THEN 1 ELSE 0 END AS BIT) AS [ColumnIsNull],
|
|
CAST(COLUMN_DEFAULT AS NVARCHAR(MAX)) AS [ColumnDefault]
|
|
FROM
|
|
HissAI_Res.INFORMATION_SCHEMA.TABLES t
|
|
INNER JOIN
|
|
HissAI_Res.INFORMATION_SCHEMA.COLUMNS c ON t.TABLE_SCHEMA = c.TABLE_SCHEMA AND t.TABLE_NAME = c.TABLE_NAME
|
|
LEFT OUTER JOIN
|
|
HissAI_Res.sys.columns sc ON t.TABLE_SCHEMA + '.' + t.TABLE_NAME = OBJECT_SCHEMA_NAME(sc.object_id) + '.' + OBJECT_NAME(sc.object_id) AND c.COLUMN_NAME = sc.name
|
|
LEFT OUTER JOIN
|
|
HissAI_Res.sys.extended_properties ep ON t.TABLE_SCHEMA + '.' + t.TABLE_NAME = OBJECT_SCHEMA_NAME(ep.major_id) + '.' + OBJECT_NAME(ep.major_id) AND sc.column_id = ep.minor_id AND ep.name = 'MS_Description'
|
|
WHERE
|
|
t.TABLE_NAME = 'T_App_Config' and (ep.class=1 or ep.class is null )
|
|
ORDER BY
|
|
c.ORDINAL_POSITION ASC;
|
|
|
|
|