2010-02-11 5 views
0

Мне нужно получить детали схемы для имени переданной таблицы, используя information_schema. В качестве части вывода необходимо имя столбца, Constraint_Name, Constraint_Type.Чтение Information_Schema таблицы SQL

Как это может быть сделано

Благодаря

ответ

0

OK РЕШИТЬ ЭТО КАК

WITH CONSTRAINTLIST 
AS 
(
SELECT KCU.TABLE_NAME, KCU.COLUMN_NAME, TC.CONSTRAINT_TYPE 
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS TC 
JOIN INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS KCU ON KCU.CONSTRAINT_SCHEMA =  TC.CONSTRAINT_SCHEMA 
    AND KCU.CONSTRAINT_NAME = TC.CONSTRAINT_NAME 
    AND KCU.TABLE_SCHEMA = TC.TABLE_SCHEMA 
    AND KCU.TABLE_NAME = TC.TABLE_NAME 
WHERE  TC.CONSTRAINT_TYPE IN ('PRIMARY KEY') 
) 
SELECT COL.COLUMN_NAME, CL.CONSTRAINT_TYPE FROM INFORMATION_SCHEMA.COLUMNS COL 
LEFT JOIN CONSTRAINTLIST CL 
ON COL.COLUMN_NAME = CL.COLUMN_NAME AND COL.TABLE_NAME = CL.TABLE_NAME 
    WHERE COL.TABLE_NAME = 'TABLE_NAME' 
Смежные вопросы