このセクションでは、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 );
出力
上記のクエリを実行すると、以下のメッセージが表示されます 窓 、つまり、 人 テーブルが作成されました:
その後、 住所 の欄へ 人 以下のコマンドのヘルプを参照してください。
ALTER TABLE Persons ADD COLUMN Address VARCHAR;
出力
上記のクエリを実行すると、次のメッセージ ウィンドウが表示されます。
そして、以下のコマンドは、 都市と電話番号 の列 人 テーブル:
ALTER TABLE Persons ADD COLUMN City VARCHAR, ADD COLUMN Phone_no VARCHAR;
出力
上記のクエリを実行すると、次のメッセージ ウィンドウが表示されます。
見たい場合は、 人 のテーブル構造 psql 、以下のコマンドを使用します。
javatpoint=# d Persons
出力 の 人 テーブル構造
上の画像からわかるように、 住所、市区町村、電話番号 Persons テーブルの列リストの最後に追加される列。
NOT NULL 制約を使用した列の追加
ここでは、データを含む特定のテーブルに非 null 制約を持つ列を追加します。
まず、いくつかのデータを 人 Insert コマンドを使用してテーブルを作成します。
INSERT INTO Persons (Person_name) VALUES ('John'), ('Emily'), ('Mike');
出力
3 行が挿入されたことがわかります。 人 以下のメッセージウィンドウの表を参照してください。
ここで、 Eメール の欄へ 人 このために、次のコマンドを使用します。
ALTER TABLE Persons ADD COLUMN Email VARCHAR NOT NULL;
出力
Javaでintを文字列に変換する
上記のコマンドを実行すると、次のようなエラーが 1 つ表示されます。
列「電子メール」に NULL 値が含まれています
上記のエラーが発生した理由は、 Eメール 列には、 NULLではありません 制約。
PostgreSQL では、新しい列は ヌル 列を追加するときに値が変更されるため、 NULLではありません 制約。
上記のエラーを解決するには、以下の手順に従う必要があります。
ステップ1
まず、列を追加する必要があります。 NULLではありません このために、次のコマンドを使用します。
ALTER TABLE Persons ADD COLUMN Email VARCHAR;
出力
以下のメッセージ ウィンドウでわかるように、 Eメール コラムが掲載されました 追加した に 人 テーブル:
ステップ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メール 列の値は 更新しました に 人 テーブル:
値が更新されたかどうかを確認したい場合は、 人 テーブルを使用します。 選択する 指示:
Select * From Persons;
出力
上記のクエリの出力は次のようになります。
ステップ3
Email 列の値を更新した後、 NULLではありません の制約 Eメール 列に 人 次のコマンドを使用してテーブルを作成します。
ALTER TABLE Persons ALTER COLUMN Email SET NOT NULL;
出力
上記のコマンドを実行すると、以下のメッセージ ウィンドウが表示されます。