[SQL Server] テーブル一覧や列の一覧を取得する方法

SQL Server 2005以降でテーブル一覧や列の一覧を取得する方法

sys.tablesと
sys.columnsを使用する

テーブル一覧の取得

SQL Server内のユーザテーブルごとに1行のデータが返ってくる
<SQL>
SELECT * FROM sys.tables
sys.tables (Transact-SQL) (Microsoft)



列一覧の取得

ビューやテーブルなど列を持つオブジェクトの列ごとに1行のデータが返ってくる
<SQL>
SELECT * FROM sys.columns
sys.columns (Transact-SQL) (Microsoft)



特定のテーブルの列名取得

以上を応用して特定のテーブルの全ての列名を取得したいときはこうする
<SQL>
SELECT t.name,c.name
FROM sys.tables t
INNER JOIN sys.columns c
ON t.object_id=c.object_id
WHERE t.name='T_HOGE'

このブログの人気の投稿

[Access VBA] SQLServerのテーブルをODBC接続でAccessにインポートする方法

[Access SQL] Access SQLで切り捨てを行う方法

[SQL] COUNTするときに条件指定する方法