我在Postgres中执行了这个SQL语句
alter table user modify column 'distinguishedName1' text;
而且
alter table user modify column distinguishedName1 text;
user
是表名distingishedName1
是具有整数数据类型的列名。我想根据用户的输入将数据类型修改为boolean或text或varchar(256)等。但是当我运行查询时,我得到了错误
错误:“modify”或“modify”附近有语法错误
不确定是什么问题。右侧查询需要帮助。
试试看:
ALTER TABLE "user" ALTER COLUMN distinguishedName1 TYPE text USING code::text;
或
ALTER TABLE "user" ALTER COLUMN distinguishedName1 TYPE text
还要注意,使用是可选的。请参阅此处的手册:
可选的USING子句指定如何从旧列值计算新列值;如果省略,默认转换与从旧数据类型到新数据类型的赋值转换相同。如果没有从旧类型强制转换为新类型的隐式或赋值,则必须提供USING子句。
请注意,尽量避免将表命名为保留关键字。
postgres
更改列类型的语法:
ALTER TABLE user ALTER COLUMN distinguishedName1 TYPE text;