用sql更改表的结构 把一个字段由decimal(5,2),改为decimal(5,3),谢谢了,在线

small_pig715 2003-08-15 02:34:24
我写的这个有错
alter table table1 alter column sp set DECIMAL(5,3)
...全文
1070 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
m505 2003-08-15
  • 打赏
  • 举报
回复
4. rename table

done...
未名知行合一 2003-08-15
  • 打赏
  • 举报
回复
谢谢db2boy.
to:small big
重建:
1.建议建一个新表符合你的期望
2.使用如下sql把数据导入新表:
INSERT INTO newtablename SELECT * FROM oldtable
SELECT * FROM newtablename 确认一下
3.删除oldtable
4.重建同名
5.再导入数据
比较麻烦,db2boy()如有高招请指教12,thanks
db2boy 2003-08-15
  • 打赏
  • 举报
回复
varchar可以改,但其他的类型不能改,重建吧
未名知行合一 2003-08-15
  • 打赏
  • 举报
回复
语法格式中的小写字母,需要您来自己更具实际情况填写.
我的测试用例表明应为zhuqiangtest,表结构是通过describe table 语句调出的,仅供参考.
返回结果:
列 类型 类型

名称 模式 名称 长度 小数位 NULL

------------------------------ --------- ------------------ -------- ----- ------

TOID SYSIBM CHARACTER 6 0 否

TNAME SYSIBM VARCHAR 20 0 否

TAGE SYSIBM SMALLINT 2 0 是

TPHONE SYSIBM VARCHAR 25 0 是
未名知行合一 2003-08-15
  • 打赏
  • 举报
回复
你可以试试:
db2 语法格式;
ALTER TABLE tablename ALTER COLUMN columnname SET DATA TYPE datatype;
要求修改的不是主键.

我的测试用例:
create table zqtest
(
TOID SYSIBM CHARACTER 6 0 否

TNAME SYSIBM VARCHAR 20 0 否

TAGE SYSIBM SMALLINT 2 0 是

TPHONE SYSIBM VARCHAR 20 0 是
)
修改sql语句:
alter table zhuqiangtest alter column tphone set data type varchar(25)
命令成功!
另外请您注意您的言行,我体谅您着急的心情..
small_pig715 2003-08-15
  • 打赏
  • 举报
回复
ft
small_pig715 2003-08-15
  • 打赏
  • 举报
回复
没有人会?

5,889

社区成员

发帖
与我相关
我的任务
社区描述
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
社区管理员
  • DB2
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧