1. 程式人生 > >Oracle的表操作——非空約束

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;