Postgresカラム名とinformation_schema

PostgreSQLテーブルやその他のオブジェクトに関する情報が必要な場合は、そのオブジェクトのスキーマを調べると便利です。 PostgreSQLでは、これらのスキーマは、他の重要な情報とともに、information_schemaにアクセスすることによって表示できます。 この記事では、Postgresqlに接続し、Postgres information_schemaを使用してテーブルスキーマを表示する方法を説明します。,

PostgreSQLを使用するための前提条件

PostgreSQLに接続していくつかのSQLステートメントを実行する前に、このタスクの主要な前提条件のいくつかを見てみましょう。

  • まず、デバイスにPostgreSQLがインストールされていることを確認してください。 このサービスがインストールされているかどうかわからない場合は、service postgresql statusコマンドを使用して、ステータスがactiveかどうかを調べます。コマンドラインからPostgreSQLと対話するには、psqlもインストールする必要があります。, コマンドpsql -Vを使用して、この対話型PostgreSQLインターフェイスがインストールされており、マシンで動作していることを確認できます。

テーブルスキーマを表示するために使用されるPostgres用のデータベースを作成します

サーバーにPostgreSQLデータベースが設定されていない場合は、このチュートリアルと共に従うために使用できるデータベースを作成してください。, 以下のコマンドを使用してデータベースを作成できます。

1
データベースを作成some_db;
  • コマンドを入力します\lpsqlコマンドラインインターフェイスで、postgresサーバー上のすべてのデータベースのリストを表示します。
  • 次に、コマンドを使用します\cそのデータベースに接続するには、データベース名を続けます。,

‘psql’コマンドラインインターフェイスを使用したPostgreSQLへのアクセス

psqlコマンドラインインターフェイスを使用してPostgreSQLデータベースにアクセスするには、次のコマンドを使用できます。

1
sudo su-postgres

パスワードの入力を求められます。 それを入力すると、PostgreSQLにアクセスできるようになります。,

接続したら、次のコマンドを使用してユーザー名でデータベースにアクセスします。

1
psql some_username-h127.0.0.1-d some_database

-dフラグはpostgresデータベース名を示します。 パスワードを再度入力するよう求められた場合は、入力してRETURNキーを押します。,

データベースのすべてのPostgreSQLテーブルを表示する

すでに作成されているすべてのテーブルを表示する場合は、\dまたは\dtコマンド,

‘pg_catalog’スキーマを使用してPostgreSQLテーブルを表示

SELECTステートメントを使用して、現在のデータベース内のすべてのテーブルに対してpg_catalogスキーマを表示することもできます。

1
select*from pg_catalog.pg_tables where schemaname!=’pg_catalog’およびschemaname!,=’information_schema’;

上記のステートメントは、テーブルの名前、所有者、インデックスおよびその他の情報を表示します。

注:WHERE句を使用して、返されるセットPostgreSQLテーブルをフィルタリングします。 !=WHERE句で使用される演算子は、schemanameの値がNOT EQUAL TO指定された条件でなければならないことを示します。,

Postgresに接続してテーブルスキーマと列名を表示します

information_schema特定のPostgreSQLテーブルの列とスキーマ情報にアクセスするには、

1
2
3
information_schemaから*を選択します。,columns
WHERE table_schema=’some_schema’
AND TABLE_NAME=’some_table’;

注:WHERE句でテーブル名とスキーマ文字列値を参照する場合は、必ず一重引quotationで囲んでください(')エラーを回避するためにマークします。,

The next SQL statement will return all the information_schema‘s attributes for a particular table:

1
SELECT * FROM information_schema.,columns WHERE TABLE_NAME=’some_table’;

テーブルの列名を取得するには、Postgresのinformation_schemaを使用します

information_schemaからテーブルの列名だけにアクセスするこれをSELECTステートメントで指定します。

1
information_schemaから列名を選択します。,PostgreSQLテーブルの列名を表すデータのいくつかの行:

1
2
3
4
5
6
7
column_name
————-
id
str
int
bool
(4行)

スキーマを使用してPostgreSQLのショーテーブルへの結論

PostgreSQLでデータを扱っているとき、あなたはおそらく自分のテーブルに関する情報を取得する必要があります。, 幸いなことに、PostgreSQLに接続し、information_schemaを使用してテーブルスキーマを表示するのは簡単です。 この記事では、information_schemaから情報を選択するいくつかの異なる方法について説明しました。 これらの例の助けを借りて、独自のPostgreSQLテーブルとカラムに関する必要な情報にアクセスすることができます。

0

コメントを残す

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