zoukankan      html  css  js  c++  java
  • Mysql之 约束 & 数据库的模式

    一、约束

    详情见: https://blog.csdn.net/w_linux/article/details/79655073

    Mysql不支持第五种检查约束CHECK

    (一)非空约束(not null)

    (二)唯一性约束(unique)

    1、表级约束:email varchar(128) unique

    • 使用表级约束,给多个字段联合约束:unique(name,email)
    • 给约束起名:constraint t_user_email_unique unique(email)

    2、可同非空约束一起使用,既不能为空,也不能重复:name varchar(32) not null unique

    (三)主键约束(primary key) PK

    主键约束除了可以做到"not null unique"之外,还会默认添加"索引——index"0

    1. 单一主键(列级定义)
      •  (表级定义)constraint t_user_id_pk primary key(id)
    2. 复合主键(表级定义)primary key(id,name)

    (四)外键约束(foreign key) FK

    1.注意点

    • 外键值可以为null
    • 外键字段去引用一张表的某个字段的时候,被引用的字段必须具有unique约束
    • 有了外键引用之后,表分为父表和子表
      •  班级表:父表 <id是primary key的是父表>
      •  学生表:子表 <id是foreign key的是子表>
    • 创表先创有primary key 父表
    • 插表先插有primary key 父表
    • 删除先删foreign key子表

    2.CONSTRAINT fk_PerOrders FOREIGN KEY (P_Id) REFERENCES .. 和

    FOREIGN KEY (P_Id) REFERENCES ..两种区别?

    >>> 区别仅限外键的命名。一般使用单独增加外键的方式。

    二、模式

    1.外模式

    • 用户编程时的对象或属性

    2.模式/逻辑模式/概念模式

    • 表或关系,如:存储过程/视图/触发器

    3.内模式

    • 存储如表在哪个表空间在哪里有索引,表空间的数据文件放在哪里,在哪个磁盘。

    三、约束是一种模式吗?

    约束依附于表,不是模式。

    灭表自动灭约束,但模式如函数并不消失。

  • 相关阅读:
    9、搜索 :ion-searchbar
    8、列表:ion-list
    uwp 的work project 的 取消闹钟
    long ? 的使用和理解
    uwp 中的音频开发
    uwp 之语音朗读
    uwp 语音指令
    C# 泛型(Generic)
    C# 排序列表(SortedList)
    C# 反射(Reflection)
  • 原文地址:https://www.cnblogs.com/sabertobih/p/13966709.html
Copyright © 2011-2022 走看看