logo

PostgreSQL の ADD 列

このセクションでは、PostgreSQL の ADD COLUMN コマンドを使用して、現在のデータベース テーブルに 1 つ以上の列を追加する方法を理解します。

PostgreSQLのADD COLUMNコマンド

を使用します。 テーブルを変更して列を追加、 既存のテーブルに新しい列を追加するコマンド。

Javaの挿入ソート

構文

の構文は、 列追加コマンドの変更 を以下に示します。

 ALTER TABLE table_name ADD COLUMN new_column_name data_type; 

上記の構文には次のパラメータがあります。

パラメータ 説明
他の机 これはテーブルの定義を変更するために使用される句です。
テーブル名 これは、ALTER TABLE 句の後に新しい列を追加する必要があるテーブル名を記述するために使用されます。
新しいクラウド名 これは、ADD COLUMN 条件の後に、デフォルト値やデータ型などの属性とともに列名を指定するために使用されます。

注: 新しい列をテーブルに追加すると、PostgreSQL はテーブル内の新しい列の位置を定義する他に選択肢がないため、テーブルの最後でその列を拡張します。

alter tableコマンドを使用して複数の列を追加する

構文 alter table コマンドを使用して複数の列を追加します。

 ALTER TABLE table_name ADD COLUMN new_column_name_1 data_type constraint, ADD COLUMN new_column_name_2 data_type constraint, ::: ::: ADD COLUMN new_column_name_N data_type constraint; 

PostgreSQL ADD COLUMN の例

列の追加をよりよく理解するために、次のプロセスに従います。

まず、次の名前の新しいテーブルを作成します。 2列の場合 person_id と First_name 以下のコマンドの助けを借りて:

 CREATE TABLE Persons ( Person_ID Serial primary key, Person_Name varchar not Null ); 

出力

上記のクエリを実行すると、以下のメッセージが表示されます 、つまり、 テーブルが作成されました:

PostgreSQL の ADD 列

その後、 住所 の欄へ 以下のコマンドのヘルプを参照してください。

 ALTER TABLE Persons ADD COLUMN Address VARCHAR; 

出力

上記のクエリを実行すると、次のメッセージ ウィンドウが表示されます。

PostgreSQL の ADD 列

そして、以下のコマンドは、 都市と電話番号 の列 テーブル:

 ALTER TABLE Persons ADD COLUMN City VARCHAR, ADD COLUMN Phone_no VARCHAR; 

出力

上記のクエリを実行すると、次のメッセージ ウィンドウが表示されます。

PostgreSQL の ADD 列

見たい場合は、 のテーブル構造 psql 、以下のコマンドを使用します。

 javatpoint=# d Persons 

出力 テーブル構造

PostgreSQL の ADD 列

上の画像からわかるように、 住所、市区町村、電話番号 Persons テーブルの列リストの最後に追加される列。

NOT NULL 制約を使用した列の追加

ここでは、データを含む特定のテーブルに非 null 制約を持つ列を追加します。

まず、いくつかのデータを Insert コマンドを使用してテーブルを作成します。

 INSERT INTO Persons (Person_name) VALUES ('John'), ('Emily'), ('Mike'); 

出力

3 行が挿入されたことがわかります。 以下のメッセージウィンドウの表を参照してください。

PostgreSQL の ADD 列

ここで、 Eメール の欄へ このために、次のコマンドを使用します。

 ALTER TABLE Persons ADD COLUMN Email VARCHAR NOT NULL; 

出力

Javaでintを文字列に変換する

上記のコマンドを実行すると、次のようなエラーが 1 つ表示されます。
列「電子メール」に NULL 値が含まれています

PostgreSQL の ADD 列

上記のエラーが発生した理由は、 Eメール 列には、 NULLではありません 制約。

PostgreSQL では、新しい列は ヌル 列を追加するときに値が変更されるため、 NULLではありません 制約。

上記のエラーを解決するには、以下の手順に従う必要があります。

ステップ1

まず、列を追加する必要があります。 NULLではありません このために、次のコマンドを使用します。

 ALTER TABLE Persons ADD COLUMN Email VARCHAR; 

出力

以下のメッセージ ウィンドウでわかるように、 Eメール コラムが掲載されました 追加した テーブル:

PostgreSQL の ADD 列

ステップ2

ここで、「電子メール」列の値を更新します。

 UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 1; UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 2; UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 3; 

出力

以下のメッセージ ウィンドウでわかるように、 Eメール 列の値は 更新しました テーブル:

PostgreSQL の ADD 列

値が更新されたかどうかを確認したい場合は、 テーブルを使用します。 選択する 指示:

 Select * From Persons; 

出力

上記のクエリの出力は次のようになります。

PostgreSQL の ADD 列

ステップ3

Email 列の値を更新した後、 NULLではありません の制約 Eメール 列に 次のコマンドを使用してテーブルを作成します。

 ALTER TABLE Persons ALTER COLUMN Email SET NOT NULL; 

出力

上記のコマンドを実行すると、以下のメッセージ ウィンドウが表示されます。

PostgreSQL の ADD 列