给表中的列设置了非空约束就意味着在向数据表添加数据时,该列是必须要添加的。非空约束就是在创建表时,在字段名的后面添加上NOT NULL就可以。
【示例】在创建bookinfo表时,给图书的名称加上一个非空约束。
实际上在创建表时,可以直接在bookname列名后面加上NOT NULL,代码如下:
create table bookinfo
bookname char NOT NULL ,
publish varchar2(20),
pubdate varchar2(20),
price decimal,
author char,
store varchar2(1),
reader int,
remarks varchar2(50)
)
通过上面的代码就可以创建一个带非空约束的表了,在给列设置成非空约束时,可以一起给表中的多个列设置非空约束。
前面已经说过在表中创建唯一约束(UNIQUE)是用来唯一标识一个列中输入的值的,比如:在网上注册用户名,用户名都是唯一的,就可以用唯一约束来约束用户名这个列。使用PL/SQL语句创建唯一约束的语法如下所示:
CONSTRAINT constraint_name UNIQUE(column_name)
这里,column_name就是要设置唯一约束的列名。
【示例】在创建bookinfo表时,为图书名称(bookname)l列添加唯一约束。
在示例1的基础上,加上一个唯一约束,代码如下所示:
create table bookinfo
(bookname char,
publish varchar2(20),
pubdate varchar2(20),
price decimal,
author char,
store varchar2(1),
reader int,
remarks varchar2(50),
CONSTRAINT un_bookname UNIQUE (bookname)
)
通过上面的代码就可以在创建bookinfo表的同时为图书名称列加上一个唯一约束,这样在向bookinfo表中添加数据时,图书名称必须是唯一的。