请问,为什么Oracle不能对数据库表里的字段进行删除或改字段名的操作呢?

trybird 2001-09-29 12:03:11
用PL/SQL进行删除或改字段名的操作难道不行吗?

比如在SQL Server里下面的语句可以,但Oracle不行——

alter table Voucher drop column MCHID;
...全文
235 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhuzhichao 2001-09-29
  • 打赏
  • 举报
回复
請使用
Oracle8.17
它已經解決了上面的問題.
xzou 2001-09-29
  • 打赏
  • 举报
回复
可以的,可能是你对这个表的权限不够
9Thoughts 2001-09-29
  • 打赏
  • 举报
回复
我一直没觉得什么不对,这也是为了数据安全性和完整性。
系统运行到中间想删除字段?修改名称?这太可怕了,如果在开发过程中也够受的,影响可能很大。
KingSunSha 2001-09-29
  • 打赏
  • 举报
回复
ORACLE不是ACCESS, 如果你真的用ORACLE做项目的话, 应该在建库以前做过详细的分析, 而不是随随便便想起来加一个字段,删一个字段的. 如果你经常需要这么做, 我想你的项目也用不到ORACLE, 还是改用ACCESS吧.

当然还是有一些办法可以用的:
1. 删除字段:
CREATE TABLE TABLE2 AS SELECT (F1,F2,F3) FROM TABLE1 --不包含你要删除的字段
2. 更改字段名:
CREATE TABLE TABLE2 (F1,F2,F3,NEWFIELD) -- 包含新的字段名
AS SELECT (F1,F2,F3,OLDFIELD) FROM TABLE1 -- 包含旧的字段名
然后DROP TABLE1, RENAME TABLE2 TO TABLE1
trybird 2001-09-29
  • 打赏
  • 举报
回复
但我用的是8.0.5i呀!
My God!
是不是8.1以后才可以删除字段?

总觉得Oracle的易用性太差了!
feng_zi 2001-09-29
  • 打赏
  • 举报
回复
8.1以后是可以删除字段了,
改名呢?

2,598

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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