データベースにある列の名前の文字列を検索したい。
私はメンテナンスプロジェクトに取り組んでおり、扱っているデータベースの一部には150を超えるテーブルがあるため、これをすばやく行う方法を探しています。
おすすめは何ですか?
SOで
—
CoderHawk
データベースにある列の名前の文字列を検索したい。
私はメンテナンスプロジェクトに取り組んでおり、扱っているデータベースの一部には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と統合する無料のツールです。
1つ後期ですが、両方のツールが無料なので、うまくいけば便利です。
ApexSQL Search –このツールの良い点は、データの検索、オブジェクト間の依存関係の表示、その他の便利な機能の組み合わせができることです。
SSMS Toolpack – SQL 2012を除くすべてのバージョンで無料。スニペット、さまざまなカスタマイズなど、検索だけに関係しない多くの優れたオプション。