MySQL基础篇-SQL的约束

1、约束分类   

     

约束类型 主键 默认值 唯一 外键 非空
关键字 PRIMARY KEY DEFAULT UNIQUE FORGIGN KEY NOT NULL

2、将数据文件下载到本地桌面的SQL3文件夹中

     1)进入桌面

          输入cd Desktop

          

      2)将文件下载到SQL3文件夹中

            git clone https://github.com/shiyanlou/SQL3

            MySQL基础篇-SQL的约束_第1张图片

3、加载已下载的文件

     source  /home/shiyanlou/Desktop/SQL3/MySQL-03-01.sql;

     MySQL基础篇-SQL的约束_第2张图片

4、查看数据库中的所有表名

      show tables;

      MySQL基础篇-SQL的约束_第3张图片

5、主键

     主键用于约束表中的一行,作为这一行的唯一标识符,在一张表中通过主键就能准确定位到一行。主键不能重复且不能为空。

     MySQL基础篇-SQL的约束_第4张图片

   MySQL基础篇-SQL的约束_第5张图片

复合主键:

       MySQL基础篇-SQL的约束_第6张图片

6、默认值约束

     默认值约束规定,当有default约束的列,插入数据为空时,将使用默认值

     MySQL基础篇-SQL的约束_第7张图片

     DEFAULT约束只会在使用INSERT语句时才会体现,若被DEFAULT约束的位置没有值,则会被DEFAULT的值填充

     举个栗子:

            MySQL基础篇-SQL的约束_第8张图片

MySQL基础篇-SQL的约束_第9张图片

7、唯一约束

     唯一约束,用来约束一张表中的指定一列中的值,都是唯一的,不能有重复

     MySQL基础篇-SQL的约束_第10张图片

       若对有唯一约束的列,插入重复数据,则会报错

        

8、外键约束

     外键既能确保数据的完整性,也能表现表与表之间的关联关系

     一个表可以有多个外键,每个外键必须REFERENCE(参考)另一个表的主键,被外键约束的列,取值必须在它参考列中有对应的值。

     MySQL基础篇-SQL的约束_第11张图片

       在INSERT数据时,若被外键约束的值没有在参考列中有对应,则会插入失败

       

9、非空约束

     被非空约束的列,在插入时,必须非空

     MySQL基础篇-SQL的约束_第12张图片

     若MySQL中违反非空约束,不会报错,只会有警告

     MySQL基础篇-SQL的约束_第13张图片

查看表中数据

MySQL基础篇-SQL的约束_第14张图片

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