最初由 dragon2002 发布
[B]
好像也不行吧 [/B]
SQL> CREATE TABLE A(A CHAR(10),B VARCHAR(10));
表已创建。
SQL> INSERT INTO A VALUES('A','B');
已创建 1 行。
SQL> SELECT LENGTH(A),LENGTH(B) FROM A;
LENGTH(A)LENGTH(B)
---------- ----------
10
1
SQL> ALTER TABLE A MODIFY A CHAR(2);
ALTER TABLE A MODIFY A CHAR(2)
*
ERROR 位于第 1 行:
ORA-01441: 无法减小列长度, 因为一些值过大
----------------------------------------因为虽然一个‘A’但长度是10即'a _________'9个空格也存进去拉所以不行
SQL> ALTER TABLE A MODIFY B VARCHAR(1);------------这个‘B’就是‘B’长度是1所以行
表已更改。
SQL>