小编典典

如何更改derby数据库的列数据类型?

sql

我正在尝试更改derby db列的数据类型。当前价格列设置为DECIMAL(5,0)。我想将其更改为DECIMAL(7,2)。我是这样做的:

alter table item alter column price set data type DECIMAL(7,2);

但是它不起作用,并显示错误:

Error: Only columns of type VARCHAR may have their length altered.

我可以知道如何进行更改吗?谢谢你。


阅读 189

收藏
2021-03-23

共1个答案

小编典典

这是Derby SQL脚本,用于将列MY_TABLE.MY_COLUMN从BLOB(255)更改为BLOB(2147483647):

ALTER TABLE MY_TABLE ADD COLUMN NEW_COLUMN BLOB(2147483647);
UPDATE MY_TABLE SET NEW_COLUMN=MY_COLUMN;
ALTER TABLE MY_TABLE DROP COLUMN MY_COLUMN;
RENAME COLUMN MY_TABLE.NEW_COLUMN TO MY_COLUMN;
2021-03-23