DaDaYi_
2017-10-26 13:14为什么在Oracle中使用alter column修改数据类型报错?怎么样解决?
为什么在Oracle中使用alter column修改数据类型报错?怎么样解决?
查资料后有大神说是因为在修改数据类型时,如果是小类型修改为大类型,不会报错;如果是大类型修改为小类型,则应先清除掉修改的字段的值
问题一:如果如上述所诉,char类型和varchar数据类型大小不一致吗?
问题二:清楚修改的字段的值使用update语句,但是我刚创建的表,表中并没有数据,应该清除什么字段呢?
命令行如下:
SQL> create table course2(
2 cno char(2) primary key,
3 cname char(14) not null,
4 cpno char(2),
5 ccredit number(1) not null,
6 foreign references course2(cno)
7 );
表已创建。
SQL> insert into course2 values('2','数学',' ','2');
insert into course2 values('2','数学',' ','2')
*
第 1 行出现错误:
ORA-00947: 没有足够的值
SQL> insert into course2 values('2','数学','2','2');
insert into course2 values('2','数学','2','2')
*
第 1 行出现错误:
ORA-00947: 没有足够的值
SQL> alter table course2 alter column sname varchar(14);
alter table course2 alter column sname varchar(14)
*
第 1 行出现错误:
ORA-01735: 无效的 ALTER TABLE 选项
求大神仔细回复,感谢
- 点赞
- 回答
- 收藏
- 复制链接分享
1条回答
为你推荐
- laravel外键报错,语法是正确的,求解决!
- laravel
- php
- 1个回答
- 如何在Laravel迁移中将不可为空的列安全地添加到现有表中?
- postgresql
- laravel
- migration
- php
- sql
- 3个回答
- Laravel 5.5迁移失败:将列数据类型字符串更新为json
- sql
- laravel
- php
- 1个回答
- 是否可以在single.php中更改HTML?
- wordpress
- php
- 2个回答
- 为什么我的while循环在主文件中工作,但是如果我尝试从单独的文件中包含它呢?
- html
- while-loop
- mysql
- php
- 1个回答