一 约束的作用
1、定义规则
2、确保完整性
二 非空约束
1、在创建表时设置非空约束
CREATE TABLE table_name(
column_name datatype NOT NULL,...
);
sql> create table userinf_1
2(id number(6,0),
3 username varchar2(20)notnull,
4 userpwd varchar2(20)notnull);
表已创建。
sql> desc userinf_1
名称是否为空?类型
-----------------------------------------------------------------------------
ID NUMBER(6)
USERNAME NOT NULL VARCHAR2(20)
USERPWD NOT NULL VARCHAR2(20)
sql> insert into userinf_1(id) values(1);
insert into userinf_1(id) values(1)
*
第1行出现错误:
ORA-01400:无法将 NULL 插入("SYSTEM"."USERINF_1"."USERNAME")
ALTER TABLE table_name
MODIFY column_name datatype NOT NULL;
sql> alter table userinfo
2 modify username varchar2(20)notnull;
alter table userinfo
*
第1行出现错误:
ORA-02296:无法启用(SYSTEM.)-找到空值
sql>deletefrom userinfo;
已删除3行。
sql> alter table userinfo
2 modify username varchar2(20)notnull;
表已更改。
sql> desc userinfo
名称是否为空?类型
-----------------------------------------------------------------------------
ID NUMBER(6)
USERNAME NOT NULL VARCHAR2(20)
USERPWD VARCHAR2(20)
EMAIL VARCHAR2(30)
REGDATE DATE
ALTER TABLE table_name
MODIFY column_name datatype NULL;