如何更改表中列名?

xxy802 2003-04-01 08:27:00
我用的是9i
...全文
109 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
penitent 2003-04-01
  • 打赏
  • 举报
回复
8.1提供了drop column的功能,
9.2有进一步增加了rename column的功能。
一个小增强吧:



3:54:31 sys@ORA9> desc t
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NUMBER
NAME2 VARCHAR2(200)

23:54:32 sys@ORA9> alter table t rename column name2 to name;

Table altered.

Elapsed: 00:00:00.02
23:54:41 sys@ORA9> desc t
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NUMBER
NAME VARCHAR2(200)




yuanscar 2003-04-01
  • 打赏
  • 举报
回复
同意DWilson(wilson,9I不知道,8I只能删除重建
wilson 2003-04-01
  • 打赏
  • 举报
回复
8i以上可以删除列,但不能更改列名,你可以创建新列名,将旧列名的数据replace到新列名,再删除旧列可以了
xiaohuan8101 2003-04-01
  • 打赏
  • 举报
回复
9i中的命令是怎么写的?
xxy802 2003-04-01
  • 打赏
  • 举报
回复
rename 是用来改表名的
没有什么办法可以直接更改列名吗?
bunnysky 2003-04-01
  • 打赏
  • 举报
回复
xxy802(孔明在世) :rename关键字是用来改表名的吧!好象不可以改列名!!
bunnysky 2003-04-01
  • 打赏
  • 举报
回复
在8i中好象没办法,如果你要修改列名又要保留数据的话建议先建一列,把原来列的数据复制过去,再把原来列删除就OK了!!
xxy802 2003-04-01
  • 打赏
  • 举报
回复
回答的请说明理由,谢谢
sky2003202 2003-04-01
  • 打赏
  • 举报
回复
9i 中不可以改
xxy802 2003-04-01
  • 打赏
  • 举报
回复
应该可以改的
sy_315 2003-04-01
  • 打赏
  • 举报
回复
不行就重新写一个表,再创建表的同时,把列改了。
xxy802 2003-04-01
  • 打赏
  • 举报
回复
penitent(只取一瓢)

如何作呢?
xxy802 2003-04-01
  • 打赏
  • 举报
回复
我用
alter table e rename column "farino" to "cv";
提示缺少关键字 PARTITION 或 SUBPARTITION
penitent 2003-04-01
  • 打赏
  • 举报
回复
9i可以
xxy802 2003-04-01
  • 打赏
  • 举报
回复
更改表中列名
beckhambobo 2003-04-01
  • 打赏
  • 举报
回复
更改列名不可以
更改数据类型也有限制,1、没有记录的情况下。2、大对象不能更改为其它类型.
lianhg 2003-04-01
  • 打赏
  • 举报
回复
这方面8i和9i应该相似把:
http://expert.csdn.net/Expert/topic/1598/1598250.xml?temp=.8996546

17,377

社区成员

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

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