zoukankan      html  css  js  c++  java
  • 索引的操作

    索引是一种有效组合数据的方式。通过索引,可以快速快速查询到数据库表对象中的特定记录,是一种提供性能的常用方式

    1、关于索引

    使用索引可以提高从表中检索数据的速度,索引由表中的一个字段和多个字段生成的键组成。

    索引按存储类型可分为:B型树索引(BTREE)和哈希索引。

    MySQL支持6种索引,分别为普通索引、唯一索引、全文索引、单列索引、多列索引、空间索引。

    过多的索引会占据大量的磁盘空间。

    一下情况适合创建索引:

    • 经常被查询的字段,即在WHERE子句中经常出现的字段
    • 在分组的字段,即在GROUP BY子句中出现的字段
    • 存在依赖关系的子表和父表之间的联合查询,即主键或外键字段
    • 设置唯一完整性约束的字段

    2、创建表时创建普通索引

    普通索引:在创建索引时,不附加任何限制条件(唯一,非空等限制),该类型的索引可以创建在任何数据类型的字段上。

    语法形式:

    create table table_name(

      属性名 数据类型,

      ……

      index|key [索引名](属性名1 [长度] [ASC|DESC])

    3、在已经存在的表上创建普通索引

    语法形式:

    create index 索引名 on table_name (属性名 [长度] [ASC|DESC]);

    4、通过SQL中语句alter table创建普通索引

    语法形式:

    alter table table_name add index|key 索引名(属性名 [长度]  [ASC|DESC]);

    5、创建表时创建唯一索引

    唯一索引:在创建索引时,限制索引的值必须是唯一的。

    在MySQL中,根据索引的创建方式,分为手动索引和自动索引两种。

    自动索引,是指在数据库表里设置完整性约束时,该表会被系统自动创建索引。手动索引,是指手动在表上创建索引。当设置表的某个字段为主键或唯一完整性约束时,系统就会自动创建关联该字段的唯一索引。

    语法形式:

    create table table_name(

      属性名 数据类型,

      ……

      unique index|key [索引名](属性名1 [长度] [ASC|DESC])

    );

    6、在已经存在的表上创建唯一索引

    语法形式:

    create unique index 索引名 on table_name (属性名 [长度] [ASC|DESC]);

    7、通过SQL语句alter table创建唯一索引

    语法形式:

    alter table table_name add unique index|key 索引名(属性名 [长度] [ASC|DESC]);

    8、删除索引

    删除索引即删除表中已存在的索引。之所以要删除索引,是由于这些索引会降低更新速度,影响数据库的性能。

    语法形式:

    drop index 索引名 on table_name;

  • 相关阅读:
    day02_07 创建新目录
    day02_04 字典
    day02_02 列表切割
    day03_01 文件操作
    MS的TREE 控件使用
    使用自定义用户控件的一些经验
    Asp.net开发心得点滴[动态加载的用户控件使用事件委托,交给页面处理的事件无效问题]
    正则表达式基础学习[1]
    自定义控件无法在VS.net编辑中显示
    错误的递归
  • 原文地址:https://www.cnblogs.com/alphajuns/p/9874898.html
Copyright © 2011-2022 走看看