• 第三节基础篇—SQL的约束


    1、约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。本节实验将在实践操作中熟悉 MySQL 中的几种约束。

    约束分类:

    2、删除数据库语句为DROP DATABASE mysql_shiyan,删除了上一节的数据库之后,然后给数据库的表新建约束

    2.1 主键

    主键 (PRIMARY KEY)是用于约束表中的一行,作为这一行的唯一标识符,在一张表中通过主键就能准确定位到一行,因此主键十分重要。主键不能有重复且不能为空。

    还有一种特殊的主键——复合主键。主键不仅可以是表中的一列,也可以由表中的两列或多列来共同标识,比如:

    09-

    2.2默认值约束

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

    2.3 唯一约束

    唯一约束 (UNIQUE) 比较简单,它规定一张表中指定的一列的值必须不能有重复值,即这一列每个值都是唯一的。

     比如一个订单重复或者并发点击了两次,这时候如果数据库对订单号做了唯一约束,那么点击提交是不成功的。

    2.4 外键约束

    这个没有实际使用场景,暂不写,有了再补充。

    首先是外键的定义

           如果一个字段X在一张表(表一)中是主关键字,而在另外一张表(表二)中不是主关键字,则字段X称为表二的外键;

    2.5 非空约束

    非空约束 (NOT NULL),听名字就能理解,被非空约束的列,在插入值时必须非空。

    实验总结:

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

    本节实验中通过一个数据库实例了解了主键、默认值、外键、非空、唯一这几种约束的特性,这几种约束都是最常见的,需要仔细理解每种约束的含义及使用场景。下一节我们将进入 SELECT 语句的学习。

  • 相关阅读:
    有关try..catch..finally处理异常的总结
    java中finally和return的执行顺序
    慢查询处理
    阿里云数据库配置文件
    在DEV c++ 中如何设置默认的代码模板
    「C语言」单链表/双向链表的建立/遍历/插入/删除
    使用VS.NET2019做为C++开发专用IDE
    Windows下通过SSH无密码连接Linux服务器
    海沧区磁盘扩容思路办法
    Rabbitmq异常排查
  • 原文地址:https://www.cnblogs.com/mecy1222/p/7286267.html
Copyright © 2020-2023  润新知