В моей базе данных есть много таблиц, в которых есть столбец StudentId. Как получить список таблицы, в которой есть этот столбец в SQL Server 2005?
Я также хотел бы добавить, что Red-Gate Software имеет абсолютно бесплатный инструмент под названием SQL Search , который просто великолепен в использовании и легко справляется с этой задачей.
SELECT * FROM INFORMATION_SCHEMA.TABLES t INNER JOIN INFORMATION_SCHEMA.COLUMNS c ON t.TABLE_NAME = c.TABLE_NAME WHERE c.COLUMN_NAME='StudentId'
SELECT t.name FROM sys.table t INNER JOIN sys.column c ON c.objectid = t.objectid AND c.name LIKE 'studentid'
Сделайте SELECT * FROM sys.columns WHERE name = 'colname', и затем вы можете присоединиться к sys.tables по object_id. У меня сейчас нет Sql Server на моем компьютере, но это должно быть очень близко.
SELECT * FROM sys.columns WHERE name = 'colname'