美文网首页
MySQL 索引

MySQL 索引

作者: SailingBytes | 来源:发表于2018-11-27 18:20 被阅读0次

    索引可以大大提高MySQL的检索速度,同时却会降低更新表的速度(INSERT、UPDATE和DELETE)。

    单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。

    组合索引,即一个索引包含多个列。

    普通索引,最基本的索引,它没有任何限制。

    唯一索引(UNIQUE),索引列的值必须唯一(除null外),但允许有空值。如果是组合索引,则列值的组合必须唯一。

    1、创建索引

    CREATE INDEX index_name ON table_name(column_name(length));

    CREATE UNIQUE INDEX index_name ON table_name(column_name(length));

    2、添加、修改索引

    ALTER TABLE table_name ADD INDEX index_name(column_name);

    ALTER TABLE table_name ADD UNIQUE [index_name] (column_name(length));

    ALTER TABLE table_name ADD PRIMARY KEY (column_name);     添加一个主键,索引值唯一,且不能为NULL。

    ALTER TABLE table_name ADD FULLTEXT index_name (column_name);    索引为 FULLTEXT ,用于全文索引。

    3、创建表时,直接指定

    CREATE TABLE table_name(

        ID INT NOT NULL, 

        username VARCHAR(16) NOT NULL, 

        INDEX [index_name] (column_name(length)) 

    );

    CREATE TABLE table_name(

        ID INT NOT NULL, 

        username VARCHAR(16) NOT NULL, 

        UNIQUE [index_name] (column_name(length)) 

    ); 

    4、删除索引(all)

    DROP INDEX [indexName] ON table_name;

    5、显示索引(all)

    SHOW INDEX FROM table_name; \G

    相关文章

      网友评论

          本文标题:MySQL 索引

          本文链接:https://www.haomeiwen.com/subject/tplnqqtx.html