首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何为derby数据库更改列数据类型?

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

Stack Overflow用户
提问于 2010-03-05 14:44:36
回答 4查看 35.6K关注 0票数 19

我正在尝试更改derby db列的数据类型。当前价格列设置为DECIMAL(5,0)。我想把它改成十进制(7,2)。我这样做了:

代码语言:javascript
复制
alter table item alter column price set data type DECIMAL(7,2);

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

代码语言:javascript
复制
Error: Only columns of type VARCHAR may have their length altered. 

我可以知道怎样才能改变它吗?谢谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-11-18 22:36:09

下面是将列MY_TABLE.MY_COLUMN从BLOB(255)更改为BLOB(2147483647)的Derby SQL脚本:

代码语言:javascript
复制
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;
票数 28
EN

Stack Overflow用户

发布于 2015-08-09 16:42:39

我认为你可以这样做:

代码语言:javascript
复制
ALTER TABLE SCHEMA.TABLE ALTER "COLUMN-NAME" SET DATA TYPE VARCHAR(255);

以数据类型字符串的(column-Name SET DATA TYPE VARCHAR(integer))为例...

票数 8
EN

Stack Overflow用户

发布于 2016-10-20 19:50:25

您可以像这样修改table:

代码语言:javascript
复制
ALTER TABLE [table] ALTER COLUMN [column] SET DATA TYPE [type];

或者在Rails中,只需使用:

代码语言:javascript
复制
change_column :table_name, :column_name, :integer
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2385020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档