問題:遇到一個需要對已有數據進行字段類型修改的需求,但是因爲該列數據不爲空,在使用下列命令
alter table tableName modify (columnName 數據類型);
示例:
alter table tableName modify (id varchar2(100));
修改的時候會提示列不爲空不讓修改,解決方法:
1,新建一列
2,把某一列的舊值完全複製給新建列
3,修改名稱,刪除新建的列
示例代碼:
1,新增一列
alter table A add(CFYJSNR varchar2(20));
示例:
alter table A add(username varchar2(20));
2,把某一列的舊值完全複製給新建列
update [表名] set [舊列]=[新列];
示例:
update table set oldColumn=newColumn;
3,修改列名稱,刪除新建的列
刪除數據庫一列
alter table A drop column CFYJSNR;
示例:
alter table user drop column username;
修改新建列的名字爲舊列的名字
alter table tableName rename column oldName to newName;
示例:
alter table tableName rename column oldName to newName;