zoukankan      html  css  js  c++  java
  • Mysql 索引与Key

    如果只是key的话,就是普通索引

    mysql的key和index多少有点令人迷惑,单独的key和其它关键词结合的key(primary key)实际表示的意义是不同,这实际上考察对数据库体系结构的了解的。

    primary key 有两个作用,一是约束作用(constraint),用来规范一个存储主键和唯一性,但同时也在此key上建立了一个主键索引

    unique key 也有两个作用,一是约束作用(constraint),规范数据的唯一性,但同时也在这个key上建立了一个唯一索引;

    foreign key 也有两个作用,一是约束作用(constraint),规范数据的引用完整性,但同时也在这个key上建立了一个index;

    mysql> desc aa;
    +-------+---------+------+-----+---------+-------+
    | Field | Type    | Null | Key | Default | Extra |
    +-------+---------+------+-----+---------+-------+
    | id    | int(11) | YES  |     | NULL    |       |
    +-------+---------+------+-----+---------+-------+
    | xx    | int(11) | YES  | PRI | NULL    |       |
    +-------+---------+------+-----+---------+-------+
    | yy    | int(11) | YES  | UNI | NULL    |       |
    +-------+---------+------+-----+---------+-------+
    | zz    | int(11) | YES  | MUL | NULL    |       |
    +-------+---------+------+-----+---------+-------+
    1 row in set (0.00 sec)

    我们看到Key那一栏,可能会有4种值,即'啥也没有','PRI','UNI','MUL'
    1. 如果Key是空的, 那么该列值的可以重复,表示该列没有索引, 或者是一个非唯一的复合索引的前导列
    2. 如果Key是PRI,  那么该列是主键的组成部分
    3. 如果Key是UNI,  那么该列是一个唯一值索引的第一列(前导列),且不能含有空值(NULL)
    4. 如果Key是MUL,  那么该列的值可以重复, 该列是一个非唯一索引的前导列(第一列)或者是一个唯一性索引的组成部分但是可以含有空值NULL

  • 相关阅读:
    jquery 页面滚动到底部事件
    01上古天真论 [音频]
    pyjnius 通过包名获取其他应用程序的名称
    python3 获取当前网络子网ip
    堆排序、快速排序、归并排序总结
    Linux 进程
    链表(转载)
    15-C语言结构体(转载)
    IP地址的分类
    TCP/IP详解
  • 原文地址:https://www.cnblogs.com/tudachui/p/9685793.html
Copyright © 2011-2022 走看看