Я хочу найти строку в именах столбцов, присутствующих в базе данных.
Я работаю над проектом обслуживания, и некоторые из баз данных, с которыми я имею дело, имеют более 150 таблиц, поэтому я ищу быстрый способ сделать это.
Что вы порекомендуете?
Я хочу найти строку в именах столбцов, присутствующих в базе данных.
Я работаю над проектом обслуживания, и некоторые из баз данных, с которыми я имею дело, имеют более 150 таблиц, поэтому я ищу быстрый способ сделать это.
Что вы порекомендуете?
Ответы:
Вы можете использовать следующий запрос, чтобы перечислить все столбцы или столбцы поиска по таблицам в базе данных.
USE AdventureWorks
GO
SELECT t.name AS table_name,
SCHEMA_NAME(schema_id) AS schema_name,
c.name AS column_name
FROM sys.tables AS t
INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID
WHERE c.name LIKE '%EmployeeID%'
ORDER BY schema_name, table_name;
Вы можете использовать представления information_schema для вывода списка всех объектов в базах данных SQL Server 2005 или 2008.
SELECT * FROM information_schema.tables
SELECT * FROM information_schema.columns
http://blog.sqlauthority.com/2008/08/06/sql-server-query-to-find-column-from-all-tables-of-database/
Существует также SQL Search - бесплатный инструмент, который интегрируется с SQL Server Management Studio.
Позднее, но, надеюсь, полезно, так как оба инструмента бесплатны.
ApexSQL Search - хорошая вещь об этом инструменте в том, что он также может искать данные, показывать зависимости между объектами и связывать другие полезные вещи.
SSMS Toolpack - бесплатно для всех версий, кроме SQL 2012. Множество отличных опций, которые не связаны только с поиском, таких как фрагменты, различные настройки и многое другое.