在Oracle(9i及以上)
Alter table employee
MODIFY ename varchar2(10);
我想将表employee的列ename从varchar2(30)更改为varchar2(10)
案例1:如果表中的数据包含的ename列包含长度小于10 char的值(我的意思是它可以很好地适应varchar2(10)) - 这是否允许oracle?
案例2:如果表中包含ename列的数据,其中包含长度大于10 char的值(我的意思是它不能适合varchar2(10)) - oracle不允许这样做吗?
答案 0 :(得分:42)
案例1:是的,这很好。
案例2:这将失败并显示错误ORA-01441:由于某些值太大,无法减少列长度。
分享并享受。