oracle数据库如何修改字段的数据类型?

我的数据库有一个字段名为hiredate但这个字段是varchar2的我要现在改成date的我直接改告诉我该字段必须为空但由于数据量巨大我无法清空此字段的所有值怎么改即能... 我的数据库有一个字段名为hiredate 但这个字段是varchar2的 我要现在改成date的
我直接改告诉我该字段必须为空 但由于数据量巨大 我无法清空此字段的所有值
怎么改 即能改变类型 有可以不删除数据?
展开
 我来答
很多游戏
高粉答主

2019-11-27 · 游戏精通者,攻略技能点满
很多游戏
采纳数:91 获赞数:387006

向TA提问 私信TA
展开全部

1、首先打开plsql,连接上oracle数据库,假设有一张数据库表叫做 tblTest,通过sql查询也可以看出,这里面是有测试数据的。

2、oracle数据库添加列,比如,往测试表 tblTest 添加一个 日期类型的列 UpdateDate,sql语句就可以像下面这样实现,写完SQL之后,选中这一行sql,点击plsql左上角次轮状的图标执行sql语句:alter table TBLTEST add UpdateDate date;

3、执行成功之后,通过 select * from TBLTEST ,就能看到新添加的列默认都是空值。

4、oracle数据库删除列,比如,将上一步添加的 UpdateDate 列删除掉,就可以使用下面的sql语句修改表:alter table tbltest drop column updatedate;

5、执行成功后,再次使用 select * from TBLTEST ,就能看到 UpdateDate 列已经删除了。

6、oracle数据库修改列属性,比如,将测试表 tblTest 中 INTEGER 类型的 ITEMNUM 列修改为 number 类型,就可以使用下面的SQL语句:alter table tbltest modify ITEMNUM number;

7、在左侧 tbltest 表名上,点击鼠标右键,选择【Edit】选项,

8、然后在右侧出现的窗口中,点击【Columns】标签页,就能看到ITEMNUM已经从 INTEGER 改为 number 类型了。

badkano
推荐于2017-09-21 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144776 获赞数:885371
团长

向TA提问 私信TA
展开全部

用alter语句进行修改。

语法:

alter table 表名 modify 字段名 字段类型(字段长度);

说明:如果是date等没有长度的类型,字段长度部分可以省略。

如:目前test表属性如下

要将name列的字段类型改为date类型,可用如下语句:

alter table test modify name date;

此时可见name列的类型已经更新成功。

注意事项:

如果表中有数据尽量不要使用此语句,会造成数据丢失,应在备份的情况下进行修改。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bd9006
2013-01-14 · TA获得超过2.5万个赞
知道大有可为答主
回答量:4.8万
采纳率:63%
帮助的人:1.6亿
展开全部
建议新加字段,再用SQL语句拷贝资料过来,新应用直接使用新字段。
追问
如何把海量的数据迁移呢
追答
再海量,要搬不还是得搬。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pangzhiming
2013-01-14 · TA获得超过374个赞
知道小有建树答主
回答量:787
采纳率:100%
帮助的人:347万
展开全部
要改成date类型的,就必须删,因为原来的数据不是date型的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
诵葬花
2013-01-14 · TA获得超过161个赞
知道小有建树答主
回答量:195
采纳率:0%
帮助的人:116万
展开全部
用工具把所有数据导出来,改完 再 导进来不就可以了,如果数据格式不对 就在记事本里批量修改一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式