如何更改 derby 数据库的列数据类型?
我正在尝试更改 derby 数据库列的数据类型。当前价格列设置为 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.
我可以知道如何更改它吗?谢谢。
I am trying to alter a datatype for a derby db column. The current price column is set as DECIMAL(5,0). I would like to alter it to DECIMAL(7,2). I did this :
alter table item alter column price set data type DECIMAL(7,2);
But it did not work, and showing the error:
Error: Only columns of type VARCHAR may have their length altered.
May I know how is it possible to alter it? Thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
以下是将列 MY_TABLE.MY_COLUMN 从 BLOB(255) 更改为 BLOB(2147483647) 的 Derby SQL 脚本:
Here is the Derby SQL script to change column MY_TABLE.MY_COLUMN from BLOB(255) to BLOB(2147483647):
我认为你可以这样做:
(column-Name SET DATA TYPE VARCHAR(integer))
for Datatype String 作为示例......I think you can do like this:
(column-Name SET DATA TYPE VARCHAR(integer))
for Datatype String as an example...下面是一种以这种方式更改列数据类型的稍微复杂的方法:
但最终效果将是相同的,
如果您无法确定执行此操作的 SQL 的确切细节,请告诉我们,我们会提供帮助。
Here's a slightly more complicated way to alter the column's data type in this fashion:
Slightly more steps, but in the end the effect will be the same.
If you have trouble working out the exact details of the SQL to do this, let us know and we'll help.
您可以像这样更改表:
或者在 Rails 中,只需使用:
You can alter table like this:
Or in
Rails
, just use:Posgtes 解决方案:
ALTER TABLEprices_table ALTERprice_columnTYPEdecimal(7,2)
Posgtes Solution :
ALTER TABLE prices_table ALTER price_column TYPE decimal (7,2 )