Oracle的表操作——非空約束
1、非空(not null)約束:用於確保列不能為NULL,如果在列上定義了not null約束,那麼當插入資料時,必須為該列提供資料,當更新列資料時,不能將其值設定為null
注:非空(not null)約束是列級約束
(1)、列級約束:column [ constraint constraint_name ] constraint_type;
注:列級約束必須跟在列的定義後面
(2)、表級約束:column, ... [constraint constraint_name ] constraint_type (column, ...),
注:表級約束不與例一起,而是單獨定義的。
例:
create table student(
sid number(8,0) not null,
name varchar2(20) constraint nn_sex not null
);
2、建立表和修改表時新增非空約束的方法
(2)、修改表新增約束的語法格式:
alter table tabel_name add [ constraint constraint_name ] constraint_type (column);
(2)、新增非空(not null)約束要使用modify語句
alter table table_name modify (column datatype not null);
3、刪除非空約束與刪除其他約束的區別
(1)、刪除約束的方式
<1>、暫時性刪除約束:將約束無效化或啟用(disable | enable constraint constraint_name)
<2>、徹底刪除約束:drop constraint constraint_name
<3>、刪除主鍵約束的格式:drop primary key
(2)、刪除非空約束的方式
<1>、刪除非空(not null)約束的語法格式:
alter table table_name modify column_name datatype null;