-
システムカタログをクエリする方法: PostgreSQLは、データベースのメタデータを格納するシステムカタログを提供しています。以下のクエリを使用すると、指定したスキーマ内のすべてのテーブルを取得できます。
SELECT table_name FROM information_schema.tables WHERE table_schema = 'スキーマ名';
上記のクエリの「スキーマ名」の部分を実際のスキーマ名に置き換えて実行してください。
-
データベースの反映を使用する方法: 反映(reflection)は、実行中のデータベースの構造をクエリするための便利な方法です。以下のコード例では、Pythonのpsycopg2ライブラリを使用して、指定したスキーマ内のすべてのテーブルを取得しています。
import psycopg2 conn = psycopg2.connect(database="データベース名", user="ユーザー名", password="パスワード", host="ホスト名", port="ポート番号") cursor = conn.cursor() cursor.execute("SELECT table_name FROM information_schema.tables WHERE table_schema = 'スキーマ名';") tables = cursor.fetchall() for table in tables: print(table[0]) cursor.close() conn.close()
上記のコードの「データベース名」、「ユーザー名」、「パスワード」、「ホスト名」、「ポート番号」、「スキーマ名」の部分を実際の値に置き換えて使用してください。