SQLServer的基本语句(五个约束)_03

一:添加约束
        1、主键约束:(主键是不允许重复,不允许为null的)
                (1)、在创建表的时候设置主键
                        create table 表名(列名1 数据类型 primary key, 列名2 数据类型.....)
                (2)、在创建表后设置主键
                        alter table 表名 add constraint 约束名 primary key(要设为主键的列名)
         2、唯一约束:(唯一键不允许重复,但允许有且只有一个null)
                 (1)、在创建表的时候设置唯一键
                        create table 表名(列名1 数据类型 unique, 列名2 数据类型.....)
                 (2)、在创建表后设置唯一键
                        alter table 表名 add constraint 约束名 unique(要设为唯一键的列名)
         3、Check约束(自定义约束):          
                 (1)、在创建表的时候设置check键
                        create table 表名(列名1 数据类型 check(列名1 like ‘取值范围’), 列名2 数据类型.....)
                 (2)、在创建表后设置check键
                        alter table 表名 add constraint 约束名 check(列名1 like ‘取值范围’)
         4、默认值约束:   
                 (1)、在创建表的时候设置check键
                        create table 表名(列名1 数据类型 check(列名1 like ‘取值范围’), 列名2 数据类型.....)
                 (2)、在创建表后设置check键
                        alter table 表名 add constraint 约束名 check(列名1 like ‘取值范围’)
         5、外键约束:

                 alter table 外键表 add constraint 约束名 foreign key(外键(列名))                                          references 主键表(主键(列名))
————————————————

use pas
create table tb1(
    id        int            primary key,
    name    varchar(10)        unique,
    age     int             check(age like '1[0-5]'),
    sex        varchar(2)        default ''
)

create table tb1(
    id        int            not null,
    name    varchar(10),
    age     int,
    sex        varchar(2)
)
alter table tb1 add constraint PK_id
    primary key (id)
alter table tb1 add constraint UQ_name
    unique (name)
alter table tb1 add constraint CK_age
    check(age like '1[0-5]')
alter table tb1 add constraint UQ_sex
    default '' for sex

 

posted @ 2023-03-29 17:03  熊大熊二  阅读(117)  评论(0编辑  收藏  举报