更新时间:2026-07-28 GMT+08:00
如何修改列的顺序?
答:可以使用如下方式实现修改列的顺序。
--建表并插入数据。 gaussdb=# CREATE TABLE tbl_test( id varchar(5), age int CHECK(age>0 and age<=200), name varchar(20), CONSTRAINT pk_test_id PRIMARY KEY (id) ); gaussdb=# INSERT INTO tbl_test VALUES ('00010',18,'Bob'); gaussdb=# INSERT INTO tbl_test VALUES ('00011',26,'Jack'); gaussdb=# INSERT INTO tbl_test VALUES ('00012',23,'Jim'); --查看表结构。 gaussdb=# \d tbl_test --新建表tbl_test_new调换age和name字段的顺序。 gaussdb=# CREATE TABLE tbl_test_new(id varchar(5),name varchar(20),age int); gaussdb=# ALTER TABLE tbl_test_new ADD CONSTRAINT pk_test_new_id PRIMARY KEY (id); gaussdb=# ALTER TABLE tbl_test_new ADD CONSTRAINT chk_test_new_age CHECK(age>10 AND age<=200); --新表插入数据。 gaussdb=# INSERT INTO tbl_test_new SELECT id,name,age FROM tbl_test; --分别修改表名。 gaussdb=# ALTER TABLE tbl_test RENAME TO tbl_test_bak; gaussdb=# ALTER TABLE tbl_test_new RENAME TO tbl_test; --删除。 gaussdb=# DROP TABLE tbl_test; gaussdb=# DROP TABLE tbl_test_bak;
父主题: 其他