oracle怎样改变表结构

dlsgliss 2011-03-27 10:40:21
我建了一个表,其中的一个字段时number型的,现在我想改成varchar2型的,不知道怎么弄,请各位大侠帮帮忙,我菜鸟!谢谢了!
...全文
80 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
UPC子夜 2011-03-27
  • 打赏
  • 举报
回复
有几种方法
第一种 先alter table tablename add (column,varchar2(100));
再把原来列的值附过去
再把原来的列删掉
不过这样可能会改变列的顺序
第二种 先alter table tablename add (column,varchar2(100));
把原来的值附过去 清空原列的值
修改原列的类型
把值附回来
把添加的临时列删掉
zty598416146 2011-03-27
  • 打赏
  • 举报
回复
有值的话先把数据导到临时表,删了重建,没有直接改了
dlsgliss 2011-03-27
  • 打赏
  • 举报
回复
恩 解决了 谢谢各位 结贴
秋雨飘落 2011-03-27
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zhuomingwang 的回复:]
alter table tbname modify colname varchar2(20)
--好像是在这个列没有值的前提下可以改
[/Quote]

肯定的,有值的前提下,是肯定不能修改的。
  • 打赏
  • 举报
回复
alter table tbname modify colname varchar2(20)
--好像是在这个列没有值的前提下可以改
秋雨飘落 2011-03-27
  • 打赏
  • 举报
回复
alter table 表名 modify 字段 nvarchar2(100);

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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