在PostgreSQL交互式终端中输入以下命令会导致错误:
ALTER TABLE tbl_name ALTER COLUMN col_name varchar (11);
改变列的数据类型的正确命令是什么?
7qhs6swi1#
请参阅此处的文档:http://www.postgresql.org/docs/current/interactive/sql-altertable.html
ALTER TABLE tbl_name ALTER COLUMN col_name TYPE varchar (11);
rkue9o1l2#
如果列中已经存在数据,则应执行以下操作:
ALTER TABLE tbl_name ALTER COLUMN col_name TYPE integer USING (NULLIF(col_name, '')::integer);
正如@nobu和@jonathan-porter在对@derek-kromm的回答的评论中指出的那样,有点神秘。
iaqfqrcu3#
酷@derek-kromm,你的答案是接受和正确的,但我想知道我们是否需要alter比列。我们可以这样做。
alter
ALTER TABLE tbl_name ALTER COLUMN col_name TYPE varchar (11), ALTER COLUMN col_name2 TYPE varchar (11), ALTER COLUMN col_name3 TYPE varchar (11);
DocumentationCheers!!Read Simple Write Simple
3条答案
按热度按时间7qhs6swi1#
请参阅此处的文档:http://www.postgresql.org/docs/current/interactive/sql-altertable.html
rkue9o1l2#
如果列中已经存在数据,则应执行以下操作:
正如@nobu和@jonathan-porter在对@derek-kromm的回答的评论中指出的那样,有点神秘。
iaqfqrcu3#
酷@derek-kromm,你的答案是接受和正确的,但我想知道我们是否需要
alter
比列。我们可以这样做。Documentation
Cheers!!Read Simple Write Simple