zoukankan      html  css  js  c++  java
  • 表的约束

    对表所存储的数据进行合法性检查,通过约束来实现。

    1、MySQL支持的完整性约束

    完整性是指数据的准确性和一致性,完整性检查就是检查数据的准确性和一致性。

    MySQL除了支持SQL的完整性约束外,还扩展了AUTO_INCREMENT约束。

    完整性约束关键字 含义
    NOT NULL 约束字段的值不能为空
    DEFAULT 设置字段的默认值
    UNIQUE KEY(UK) 约束字段的值唯一
    PRIMARY KEY(PK) 约束字段为表的主键,可以作为表记录的唯一标识
    AUTO_INCREMENT 约束字段的值自动增加
    FOREIGN KEY(FK) 约束字段为表的外键

    约束分类:

    • 单列约束:每个约束只约束一列数据
    • 多列约束:每个约束可以约束多列数据

    2、设置非空约束(NOT NULL,NK)

    当数据表中某个字段上的内容不希望为NULL时,则可以设置NK约束进行设置。

    语法形式:

    create table table_name(

      属性名 数据类型 NOT NULL,

      ……

    );

    3、设置字段的默认自(DEFAULT)

    当数据表中插入一条新纪录时,如果没有设置某个字段的值,那么数据库系统会自动为该字段插入默认值。

    语法形式:

    create table table_name(

      属性名 数据类型 DEFAULT 默认值,

    );

    4、设置唯一约束(UNIQUE KEY,UK)

    当数据表中的某个字段上的内容不允许重复时,则可以使用UK约束进行设置。

    语法形式:

    create table table_name(

      属性名 数据类型 UNIQUE KEY,

      ……

    );

    5、设置主键约束(PRIMARY KEY,PK)

    当想用数据表中的某个字段来唯一标识数据库中的记录时,则可以使用PK约束来进行设置。

    主键约束 = 非空约束 + 唯一约束

    主键分为多字段主键和单字段主键。

    create table table_name(

      属性名 数据类型 PRIMARY KEY,

      ……

    );

    6、设置字段的自动增长(AUTO_INCREMENT)

    一个表中只有一个字段能使用此约束,该字段的类型必须为整数类型。由于AUTO_INCREMENT约束后的字段会生成唯一的ID,所以用该字段也经常会设置成PK主键。

    create table table_name(

      属性名 数据类型 AUTO_INCREMENT,

      ……

    );

    7、设置外键约束(FORIEGN KEY,FK)

    外键约束保证多个表之间的完整性约束。设置外键约束的两个表之间具有父子关系,即子表的某个字段取值范围由父表决定。

    设置FK约束的字段必须依赖于数据库中已经存在的父表的主键。

    create table table_name(

      属性名 数据类型,

      ……

      CONSTRAINT 外键约束名 FOREIGN KEY(属性名1)

        REFERENCES 表名(属性名2)

    )

     

  • 相关阅读:
    提交上了,却在iTunes Connect没有新版本的任何消息
    真机调试 —— An unknown error occurred.
    UI第二节——UIButton详解
    UI第一节—— UILable
    OC第九节——协议与代理
    补10月26日
    我看互联网第一约战
    接受自己的不完美---写在毕业之后的总结
    写给自己的学习之道
    越过山丘
  • 原文地址:https://www.cnblogs.com/alphajuns/p/9869160.html
Copyright © 2011-2022 走看看