SQL建表语句+约束

create table stu (
    id number(6),
    name varchar2(20) constrait stu_name_nn not null,                  //constraint约束(字段约束)
    sex number(1),
    age number(3),
    sdate date,
    grade number default 1,
    class number(4),
    email varchar2(50),                     //uniqu唯一约束
    contraint stu_name_email_uni unique(email, name)            //email和name组合字段唯一约束(表集约束)
)

Oracle数据库5个约束条件:

非空(not null)非空约束用于确保字段值不为空。非空约束是五个约束条件中唯一一个只能定义在列级的约束条件。

唯一(unique)唯一约束条件用于保证字段或者字段的组合不出现重复值。

主键(primary key)主键约束条件从功能上看相当于非空且唯一。主键可以是单字段也可以是多字段组合。在一个表上只允许建立一个主键,而其他约束条件则没有明确的个数限制。

外键(foreign key)

外键约束条件定义在两个表的两个字段或一个表的两个字段上,用于保证相关两个字段的关系。

外键约束包括两个方面的数据约束:

(1):子表上定义的外键的列值,必须从主表被参照的列值中选取,或者为NULL;

(2):当主表参照的值被子表参照时,主表的该行记录不允许被删除。

检查(check)检查约束条件用来强制在字段上的每个值都要满足Check中定义的条件

你可能感兴趣的:(数据库)