zoukankan      html  css  js  c++  java
  • Mysql中的索引

    索引

    什么是索引?

    索引是系统内部自动维护的隐藏的“数据表”,它的作用是,可以极大地加快数据的查找速度!

    这个隐藏的数据表,其中的数据是自动排好序的,其查找速度就是建立在这个基础上。

     

    通常,所谓建立索引,其实是指定一个表的某个或某些字段作为“索引数据字段”就可以了,形式为:

    索引类型(要建立索引的字段名)

    索引类型有如下几个:

    普通索引:  形式: key(字段名)

    含义: 就是一个索引而已,没有其他作用,只能加快查找速度;

    唯一索引:  形式: unique  key(字段名)

    含义: 是一个索引,而且还可以设定其字段的值不能重复(唯一性);

    主键索引: 形式: primary  key (字段名)

    含义: 是一个索引,而且,还具有区分该表中的任何一行数据的作用(其实也是唯一性)

    它其实比唯一性索引多一点功能:唯一性可以为空null,而主键不能为空;

    全文索引:  形式: fulltext (字段名)。

    外键索引:  形式: foreign  key (字段名) references  其他表(对应其他表中的字段名)

    演示索引创建语法:

     

    此时,该表中如果以iduser_name,或email做条件进行查找,就会“很快”,而以age做条件就会“很慢”。

    外键索引:  

    形式: foreign  key (字段名) references  其他表(对应其他表中的字段名)

    什么叫外键?

    外键,就是指,设定的某个表(tab1)某个字段(f1),它的数据的值,必须是在另一个表(tab2)中的某个字段(f2)中存在!

     

    示例:

     

    此时,插入xuesheng表中的数据时,banji_id字段的值,就不可以随便插入了,而是必须是banji表中的id字段所已经有的数据值,才可以插入。

  • 相关阅读:
    SQL 索引
    SQL 存储
    C#编程中的66个好习惯,你有多少个?
    Delphi中如何让窗口最小化至系统托盘
    浅谈 堆和堆栈
    C#编程中的66个好习惯
    用ADO连接oracle的步骤
    如何卸载ocx包
    数据库中,Decimal数据类型
    [转载]内存区划分、内存分配、常量存储区、堆、栈、自由存储区、全局区
  • 原文地址:https://www.cnblogs.com/457248499-qq-com/p/7368067.html
Copyright © 2011-2022 走看看