Oracle的表中已存在了数据,这时再来修改表的字段类型就无法修改。例如,
number类型改成number(22),这时数据库会报ORA-01440: column to be modified must be empty to decrease precision or scale

推荐使用方法1,方法2如果字段不能为空就无法使用

方法1

备份原表数据,清除表数据,修改字段类型,还原数据

-- 1.创建备份表
create table test_bak as select * from test;
-- 2.清除原表数据
truncate table test;
-- 3.修改字段类型
alter table test modify test_id number(22);
-- 4.还原数据
insert into test select * from test_bak;
commit;

方法2

只备份需要修改的字段的数据,可以在原表上新增备份字段,也可以新建一张表备份字段数据

-- 1.新增字段
alter table test add test_id_bak number;
-- 2.复制数据
update test set test_id_bak = test_id;
commit;
-- 3.清除字段数据并修改字段类型
update test set test_id = null;
commit;
-- 4. 修改字段类型
alter table test modify test_id number(22);
-- 5.还原数据
update test set test_id=test_id_bak;
commit;
-- 6.删除临时字段
alter table test drop column test_id_bak;

Oracle表中已有数据修改字段类型相关推荐

  1. Oracle 表已经有数据 修改字段类型,把varchar2类型变成date类型

    Oracle修改字段类型,把varchar2类型变成date类型 表已经有数据 原来表是这样的 create table export ( name varchar2(10), datetimes v ...

  2. 向Oracle表中的添加数据

    一 INSERT语句 INSERT INTO table_name (column1,column2...) VALUES(value1,value2,...) 二 实例 1.向表中所有字段添加值 S ...

  3. SQL Server 用表中已有数据造数据

    从表中选择数据再插入到表中(select XXX into 与insert into XXX select的结合) 在做性能测试时需要大量的业务数据.完全从画面造数据比较费时间,使用SQL文批量插入数 ...

  4. 批量修改数据_#泰Q头条#065期 四步搞定Excel表中的批量数据修改

    『闻道有先后 术业有专攻』 又到每周五我们Offcie小课堂时间,每周学一点儿,知识从未如此简单,也真诚的希望各位能在留言板写下你们宝贵的建议,给您带来更具价值的分享. 这期跟大家带来的Excel表数 ...

  5. 表中已存在数据,增加主键,序列号

    有些时候我们设计表可能没想到使用主键,或者不用主键可以完全满足,但是后来由于需求等改变,需要对已经有数据的表再加入主键,由于暂且没有想到更简单的办法,所以给大家分享一下我的办法. 比如有以下表aa,给 ...

  6. oracle 字段补充空格,oracle表中某个字段含有字符回车、空格的手动修改方式

    select t.*, t.rowid from TB_SD_STANDARD_CHOOSE_ADVISE t where t.id =323900000 update TB_SD_STANDARD_ ...

  7. MySql单张表中,“多个唯一字段”的插入和更新操作----添加联合唯一索引,Navicat上操作

    由于是入门的小白,在项目中遇到了类似的问题,做如下记录. 1.问题场景 开始本篇之前,先说下我遇到的问题场景,实际开发的场景为例: 开发中有一张用户表tb_device_user , 用来记录设备上的 ...

  8. oracle表中增加字段 sql语句,ORACLE中通过SQL语句(alter table)来增加、删除、修改字段...

    1.添加字段: alter table  表名  add (字段  字段类型)  [ default  '输入默认值']  [null/not null]  ; 2.添加备注: comment on ...

  9. 使用t-sql语句修改表中的某些数据及数据类型。_Java面试——数据库知识点

    微信公众号:猿的夜场 关注可了解更多的技术文档.问题或建议,请公众号留言! MySQL 1.建 主键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合.一个数据列只能有一个主键,且主键的 ...

最新文章

  1. C语言的单链表创建:头插法/尾插法
  2. asp.net performance
  3. linux tar zcf打包时注意事项
  4. tomcat源码 Connector
  5. TTL expired in transit--问题篇~
  6. 计算机语言学 自然语言处理程序,利用知网进行(计算机)自然语言处理
  7. 什么是序列化和反序列化
  8. dnf显示与服务器数据异常怎么办啊,DNF:你这该死的数据异常网络中断连接,让我心在痛泪在流...
  9. 使用GDAL将下载的Google卫星图像转为带坐标的tif
  10. 大数据可视化有哪些优势
  11. ConcurrentLinkedQueue 的outofMemory错误解决方案
  12. error: unknown field ‘ioctl’ specified in initializer
  13. 建站系统创业项目综合测评:ePower、云优CMS、微加互联、微企点
  14. 29-地理空间数据云下载【进阶】
  15. compass watch出错
  16. PS制作华丽的紫色立体字
  17. mysql实验训练2 数据查询操作_实验训练2:数据查询操作.doc
  18. linux 将新密码邮件发送,linux脚本实现自动发送和收取邮件的设置方法
  19. 波兰表达式(Polish Notation)简要介绍
  20. 开启hadoop报错:localhost: Permission denied(publickey,gssapi-keyex,gssapi-with-mic,password).

热门文章

  1. html+css实战181-header-logo和导航
  2. 电商平台-优惠券设计与架构
  3. (转)通天塔导游讲述C,C++,Lisp,Java,Perl,(我们在亚马逊用到的所有语言),Ruby (我就是喜欢),和Python...
  4. 二级C语言-程序修改题常见错误归纳
  5. 如何使用佳能ir1133网络扫描功能
  6. BRAS和SR设备的定义区别
  7. ISO20000培训课
  8. FFmpeg任意格式转码(比如:AVI、MP4、WMV、FLV等)
  9. 经济学说史-试题(十套)附答案
  10. 陶瓷压力传感器放大电路的设计