1. ホーム
  2. sql-server

[解決済み] TSQLを使用してデータベース内のすべてのテーブルのリストを取得するにはどうすればよいですか?

2022-03-20 14:04:52

質問

SQL Server上の特定のデータベース内のすべてのテーブルの名前を取得する最良の方法は何ですか?

どのように解決するのですか?

SQL Server 2000、2005、2008、2012、2014、2016、2017、2019のいずれか。

SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'

特定のデータベースのテーブルのみを表示する場合

SELECT TABLE_NAME 
FROM [<DATABASE_NAME>].INFORMATION_SCHEMA.TABLES 
WHERE TABLE_TYPE = 'BASE TABLE'

または

SELECT TABLE_NAME 
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_TYPE = 'BASE TABLE' 
    AND TABLE_CATALOG='dbName' --(for MySql, use: TABLE_SCHEMA='dbName' )

追記:SQL Server 2000の場合。

SELECT * FROM sysobjects WHERE xtype='U'