回答編集履歴

2

追記: 単なるSELECT文

2023/09/15 05:00

投稿

ikedas
ikedas

スコア4443

test CHANGED
@@ -1,3 +1,7 @@
1
+ * 単にカラムの名前を知りたいだけなら、`SELECT`文を実行すれば結果のヘッダにカラム名が出ますよね。カラムの内容は重要ではないので最初の1行だけ出力すればいいです。
2
+ `SELECT * FROM テーブル名 FETCH FIRST ROW ONLY;`
3
+ または (標準SQL非準拠だがMySQLなどでも使える方法)
4
+ `SELECT * FROM テーブル名 LIMIT 1;`
1
5
  * pgAdminでしたら[Tableダイアログ](https://www.pgadmin.org/docs/pgadmin4/7.6/table_dialog.html)画面で「Columns」タブを選ぶとどんなカラムがあるかわかります。
2
6
 
3
7
  * psqlでしたらデータベースサーバに接続して[メタコマンド](https://www.postgresql.jp/document/15/html/app-psql.html#APP-PSQL-META-COMMANDS)を実行すればいろいろな情報を見られます。

1

追加: pg_dumpによる方法

2023/09/15 04:41

投稿

ikedas
ikedas

スコア4443

test CHANGED
@@ -3,4 +3,7 @@
3
3
  * psqlでしたらデータベースサーバに接続して[メタコマンド](https://www.postgresql.jp/document/15/html/app-psql.html#APP-PSQL-META-COMMANDS)を実行すればいろいろな情報を見られます。
4
4
  `\d テーブル名パターン` でカラムの一覧が見れます (`テーブル名パターン`にはテーブル名と同じものを書けばたいてい問題ないです)。
5
5
 
6
+ * [pg_dump](https://www.postgresql.jp/document/15/html/app-pgdump.html)でデータベースの内容をSQL文として出力できます。テーブルの定義は`CREATE TABLE`文として出力されるので、どんなカラムがあるかもわかります。
7
+
6
8
  * システムカタログから情報を得ることもできます。各テーブルのカラムの情報は[pg_attribute](https://www.postgresql.jp/document/15/html/catalog-pg-attribute.html)カタログに入っています。説明は略します。
9
+