データベースに存在する列の名前で文字列を検索したい。

私はメンテナンスプロジェクトに取り組んでおり、扱っているデータベースのいくつかには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 Server2005または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 もあります。これはSQLServer ManagementStudioと統合する無料のツールです。

代替テキスト

コメント

  • SQL検索は優れたツールですが、結果ウィンドウは、250件の結果に任意に制限されていると思います。前回このツールを使用したとき、RedGateにはこの制限を解除する方法がありませんでした。そうは言っても、それはまだ非常に便利なツールであり、SQL ServerDBAまたは開発者に推奨します。価格も適正です!

回答

遅いですが、両方のツールが無料なので便利です。

ApexSQL検索 –このツールの良いところは、データの検索、オブジェクト間の依存関係の表示、その他の便利な機能の組み合わせもできることです。

ここに画像の説明を入力

SSMSツールパック –無料SQL 2012を除くすべてのバージョン。スニペット、さまざまなカスタマイズなど、検索だけに関連しない多くの優れたオプション。

ここに画像の説明を入力

回答

これは昔からのすべてのSQLDBAが使用しているものです。

EXEC sp_help "your table name"; 

1行の場合は、EXECと入力する必要もありません。

sp_help "your table name" 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です