使用psql添加列
使用 ALTER TABLE ADD COLUMN
语句向现有表添加新列。 Postgres 不支持通过一个 ALTER TABLE
语句添加多个列。因此,如果要向表中添加多列,则需要多次执行 ALTER TABLE 命令。
ALTER TABLE [schema_name.]table_name
ADD COLUMN <column_name> <data_type> [column_constraint];
column_constraint
是可选的。您可以在添加或不添加约束的情况下向表中添加新列。
假设您已经有employee表。
让我们在employee表中添加一个新的"salary"列。
ALTER TABLE employee
ADD COLUMN salary INT NOT NULL;
现在,employee将有一个新的 salary
列,如下所示。
如果表已经有数据,则不能使用 NOT NULL 约束添加新列。列包含空值会引发错误。 要解决这个问题,首先需要创建一个可为空的列,然后在列中插入数据,然后添加 NOT NULL 列约束。
下面将添加一个可为空的列"salary"。
ALTER TABLE employee
ADD COLUMN salary INT;
使用 pgAdmin 添加列
您还可以使用 pgAdmin 将列添加到表中。展开左侧窗格中的"table"节点,右键单击表名称或列节点,然后在内容菜单中选择"Create-> Column"。
这将打开"创建列"弹出窗口,您可以在其中输入列名称、数据类型、约束等。
单击"保存"按钮将列添加到表中。
或者,您可以通过右键单击表名称并选择"属性"来在 pgAdmin 中添加一列或多列。 在弹出窗口中,转到"列"选项卡,您可以通过单击 + 符号添加多列,然后在底行输入列名称、数据类型、长度、NOT NULL。