1、添加字段
create table ORD
(
table_name type,
UserName VARCHAR2(30),
CUST_ID NUMBER(4)
);
2、删除字段
alter table table_name drop column column_name;
3、修改字段
alter table table_name modify (column_name type);
添加字段非空限制報錯
ORA-01758: 要添加必需的 (NOT NULL) 列, 則表必須為空
如上所示, 報上面錯誤的原因是 表中存在資料, 如果添加非空字段, 肯定是不允許的, 都限制非空了, 其他資料新增的字段沒有值, 卻限制非空, 肯定是添加不了的
- 新增字段設定預設值(常用)
ALTER TABLE ORD ADD price NUMBER(8,2) DEFAULT 0 NOT NULL;
- 删除原表中的資料
-- 删除表中資料
TRUNCATE TABLE ORD;
--删除表之前插入的新增字段
alter table ORD drop column PRICE;
--插入新增字段
ALTER TABLE ORD ADD price NUMBER(8,2) NOT NULL;
- ORA-01758: 要添加必需的 (NOT NULL) 列, 則表必須為空
- Oracle添加修改删除表字段