zoukankan      html  css  js  c++  java
  • 【10】约束

    1.什么是约束?
    限制字段可以取什么值
    官方:约束是保证数据完整性的机制
    2.常见的约束

    • 主键约束 默认创建聚集索引 (聚簇索引) 拼音检索
    • 唯一约束 默认创建非聚集索引 部首检索
    • 非空约束 设计表,字段后写的null与not null
    • 检查约束 限定某个字段的表达式
    • 默认约束 如果不给取值就使用默认值,否则使用提供的值
    • 外键约束 添加商品数据的时候,必须要有厂家数据. 除非外键数据为NULL;如果还有商品数据,不允许删除厂家数据

    3.添加约束的语法

    -- 添加约束的语法
    /*
    alter table 表名
    add
    constraint 约束名 约束类型与条件
    , constraint 约束名 约束类型与条件
    , constraint 约束名 约束类型与条件
    , constraint 约束名 约束类型与条件;
    */
    
    alter table [ConstraintExercise].[Corse2]
    add
    constraint PK_Course2_courseId primary key(courseId);
    
    alter table [ConstraintExercise].[StuInfo2]
    add
    constraint PK_StuInfo2_stuId primary key(stuId)
    , constraint UQ_StuInfo2_stuName unique(stuName)
    , constraint CK_StuInfo2_stuAge check(stuAge>=0 and stuAge <=150)
    , constraint DF_StuInfo2_stuSex default('m') for stuSex
    , constraint CK_StuInfo2_stuSex check(stuSex='f' or stuSex='m')
    , constraint FK_StuInfo2_Course2_courseId foreign key(courseId)
        references [ConstraintExercise].[Corse2](courseId);
  • 相关阅读:
    PHP观察者模式 (转)
    PHP单例模式 (转)
    PHP解决并发问题的几种实现(转)
    php结合redis实现高并发下的抢购、秒杀功能 (转)
    使用 redis 减少 秒杀库存 超卖思路 (转)
    mysql视图学习总结(转)
    mysql 存储过程
    PHP中的魔术方法和关键字
    bzoj3462DZY Loves Math II
    bzoj1453[Wc]Dface双面棋盘
  • 原文地址:https://www.cnblogs.com/lolitagis02/p/8158968.html
Copyright © 2011-2022 走看看