ORA-22859 无效的列修改

简介: ORA-22859 无效的列修改

修改表字段数据类型时问题:ORA-22859 无效的列修改

有一个表Test1有字段A、B,其数据类型分别是clob、varchar2(10)

alter table Test1 modify ( A  varchar2(255) );-- clob 修改为 varchar2
Error 位于第一行
ORA-22859:无效的列修改
alter table Test1 modify ( B date );-- varchar2 修改为 date 
Error 位于第一行
ORA-01439:要更改数据类型,则要修改的列必须为空(empty)

oracle在更改字段数据类型时注意:

  1. 大字段 类型不能随意修改,如果改动了就必须删除列保存之后,再重新建立,因此对于大字段要格外注意
  2. 有数据是是不能更改数据类型的 modify null only (否则要把列变为空,数据岂不是要丢失)


相关文章
|
7月前
|
SQL Oracle 关系型数据库
Oracle 将表中的数据查出更改某一字段的值后再插入该表
Oracle 将表中的数据查出更改某一字段的值后再插入该表
149 2
|
4月前
|
存储 关系型数据库 数据库
在 Postgres 中使用更改列类型
【8月更文挑战第11天】
228 0
在 Postgres 中使用更改列类型
|
7月前
|
Oracle 关系型数据库
Oracle查询优化-删除名称重复的记录
【2月更文挑战第2天】【2月更文挑战第4篇】方法很多,列举我用过的两种,比较容易理解的。
51 3
ora-04098 触发器无效且未通过重新验证
ora-04098 触发器无效且未通过重新验证
266 0
|
SQL Oracle 关系型数据库
Oracle增加修改删除字段/主键
Oracle增加修改删除字段/主键
126 0
|
SQL Oracle 关系型数据库
"ORA-00942: 表或视图不存在 "的原因和解决方法
采用Oracle数据库,使用Powerdesigner设计,生成Sql文件导入后查询出现“ORA-00942: 表或视图不存在 ”,很是郁闷,这个问题以前出现过,当初解决了,但因好久没有使用,这次竟然忘了,害得我浪费了好些时间,为了避免再次忘记,将它记下来,同时和大家一起分享。
2668 0
|
SQL Oracle 关系型数据库
oracle将指定的表中所有字段变为大写
最近在写一个项目,用到的是oracle数据库,但是在执行oracle语句的时候总是提示找不到字段,只有将字段名称用双引号引起来才可以解决问题,最后发现是由于数据库字段名称是小写造成的,但是一个一个的手动替换太过于麻烦,要是将所有的表都替换风险又太大,因为自己涉及到的只有新增的七八张表,所以用了一个指定表名称来替换的方法。
129 0
oracle将指定的表中所有字段变为大写
|
SQL Oracle 关系型数据库
Oracle 无效对象查询,编译无效对象
编译无效对象 有两种方式: 1、执行sql查询结果 2、脚本编译
|
Oracle 关系型数据库 数据库
【Oracle】Oracle如何查看所有表和字段以及表注释和字段注释?其实很简单!!
小伙伴们按照我写的文章顺利安装好Oracle数据库后,又在微信上问我:我想查看Oracle数据库中所有表和字段以及表注释和字段的注释,我该怎么操作呢?看着小伙伴们这么高的学习热情,这些问题我都安排上了!这不,解决方案来了!
346 0

热门文章

最新文章