PostgreSQL 更改列类型 PostgreSQL 删除列 PostgreSQL 重命名列 PostgreSQL 更改列类型 在本节中,我们将讨论如何在ALTER TABLE命令的帮助下更改列数据类型。 改变列数据类型的命令 我们将使用ALTER TABLE命令来修改列的数据类型。 更改列数据类型的基本语法如下: ALTER TABLE table_name ALTER COLUMN column_name [SET DATA] TYPE new_data_type; 在上述语法中,我们将使用以下参数: 参数 描述 表名 它用于定义表的名称,我们要在其中修改列数据类型。 列名 它用于提供列的名称,其中数据类型将在 ALTER COLUMN 条件中进行修改。 新数据类型 它在 Type 关键字之后使用,用于列引用。它很可能使用 TYPE 或 SET DATA TYPE。 在单个命令中更改多列的语法 我们将使用以下语法在单个命令中修改多个列的数据类型。 ALTER TABLE table_name ALTER COLUMN column_name_1 [SET DATA] TYPE new_data_type, ALTER COLUMN column_name_2 [SET DATA] TYPE new_data_type; 正如我们在上面的语法中看到的那样,我们可以在逗号 (,) 的帮助下使每个 ALTER COLUMN 条件离散,以一次转换各个列的类型。 PostgreSQL允许我们将旧列值更改为新列值,同时通过添加 USING 条件修改列的数据类型,如下面的命令所示: ALTER TABLE table_name ALTER COLUMN column_name TYPE new_data_type USING expression; 注意:在 PostgreSQL 中,我们可以使用 USING 子句从旧列中添加新列值。 如果我们不使用USING 条件,PostgreSQL 将间接为新列创建旧列值。如果创建失败,PostgreSQL 会提出一个问题,并要求我们为 USING 子句提供一个用于更改的表达式。 PostgreSQL 更改列类型示例 为了显示列类型的变化,我们将创建一个名为Student_information\的新表。 CREATE TABLE Student_information( Stu_id serial PRIMARY KEY, Stu_name TEXT NOT NULL, Stu_agr int, Stu_address char(30) ); 执行上面的命令后,我们会得到下面的消息窗口,它说已经创建了Student_information\表。 之后,我们将在特定表中插入一些行。 INSERT INTO Student_information ( Stu_name, Stu_age,Stu_address) VALUES('Mike','26','New york' ), ('Emily','23','Boston'), ('john','25','Chicago'); 输出 一旦我们执行了上面的命令,我们会得到如下消息窗口:三行已经插入到Student_information\表中。 我们将使用以下命令将Stu_name列的数据类型修改为Varchar ALTER TABLE Student_information ALTER COLUMN Stu_name TYPE VARCHAR; 输出 执行上述命令后,我们将得到以下结果: 以下命令将帮助我们将Stu_age 和 Stu_address列的数据类型从int 更改为 Varchar,将char 更改为 Varchar。 ALTER TABLE Student_information ALTER COLUMN Stu_age TYPE VARCHAR, ALTER COLUMN Stu_address TYPE VARCHAR; 输出 一旦我们执行了上面的命令,我们将得到以下消息窗口:Student_information\ table has been changed\。 如果我们想检查我们上面执行的所有操作,我们将使用 Select 命令: Select * from Student_information; 输出 执行上述命令后,我们将得到以下输出: PostgreSQL 删除列 PostgreSQL 重命名列