美文网首页我爱编程
MYSQL入门学习基础片-数据完整性

MYSQL入门学习基础片-数据完整性

作者: 温暖在靠近 | 来源:发表于2018-05-26 19:57 被阅读0次

    数据完整性是为了保证插入到数据中的数据是正确的,它防止了用户可能的输入错误。


    一、实体完整性(记录完整性):

    规定表的一行(即每一条记录)在表中是唯一的实体。实体完整性通过表的主键来实现。

    解决办法:采用主键:PRIMARY KEY 唯一,不能为NULL

    第一种声明主键的方式:

    CREATE TABLE s1(

    id INT PRIMARY KEY,

    NAME VARCHAR(10),

    gender VARCHAR(4)

    );

    第二种声明主键的方式:

    CREATE TABLE s2(

    id INT ,

    NAME VARCHAR(10),

    gender VARCHAR(4),

    PRIMARY KEY(id)

    );

    注:第二种声明主键的方式:可以声明联合主键(两个字段作为主键)

    CREATE TABLE s3(

    id INT ,

    NAME VARCHAR(10),

    gender VARCHAR(4),

    PRIMARY KEY(id,NAME)#联合声明

    );

    二、域完整性(列完整性约束):

    指数据库表的列(即字段)必须符合某种特定的数据类型或约束。比如NOT NULL。

    约束:

        类型约束:  id int

        长度约束: id int(2)      插入数据 1111

        非空约束: username varchar(8) NOT NULL     必须有值

        唯一约束: idcardnum varchar(18) UNIQUE 可以为null,有的话必须唯一

    用户名:一般网站用户名必须有,且唯一(不让他作为主键)

    username varchar(100) NOT NULL UNIQUE

    示例:

    CREATE TABLE s4(

    id INT PRIMARY KEY,

    username VARCHAR(10) NOT NULL UNIQUE,

    gender VARCHAR(4) NOT NULL,

    idcardnum VARCHAR (4) UNIQUE

    );

    三、参照完整性:

    保证一个表的外键和另一个表的主键对应。

    3.1多表的设计

    a、一对多(出现频率最高)

    相关文章

      网友评论

        本文标题:MYSQL入门学习基础片-数据完整性

        本文链接:https://www.haomeiwen.com/subject/occkvxtx.html