admin 管理员组

文章数量: 1184232


2024年3月19日发(作者:数据库设计参考文献)

mysql 索引命名规范

MySQL索引命名规范

1、主要原则

(1)尽量遵循统一的命名规范;

(2)索引命名应当有意义,便于读者领会索引意图;

(3)MySQL支持两种索引:普通索引(INDEX)和唯一索引(UNIQUE),应当

在索引名称上明确区分;

(4)尽量避免性能问题,而不是利用索引部分优化;

2、索引命名

(1)一般情况下,索引命名以`idx_`开头,唯一索引命名以`uniq_`开头;

(2)索引命名采用小写+数字+下划线,例如`idx_book_1`;

(3)索引名称应当明确区分出该字段的特殊属性,比如`uniq_name`表示的是确保

name字段的唯一性索引;

(4)如果是复合索引,应当将多个字段以下划线的形式连接起来,例如

`idx_name_age`表示的是name和age的索引;

(5)如果字段本身具有唯一性,如ID,可以使用`uniq_id`表示,可以省略`idx_`前

缀;

3、索引注释

(1)为了方便他人阅读源代码,应当添加`INDEX`,`UNIQUE`和`FULLTEXT`注

释来描述当前所创建的索引;

(2)索引名称建议采用表名+字段名,例如`INDEX book_user_id`用于表示在book

表中创建user_id字段的普通索引,`UNIQUE book_user_id`表示在book表中创建

user_id字段的唯一索引;

(3)如果是复合索引,可以通过空格和逗号将多个字段的索引描述出来,例如

`INDEX book_user_id last_name`用于表示book表中创建user_id和last_name字段

的普通索引;

(4)如果是Test表的索引,也可以使用简写的形式,让代码更简洁、更有意义。

例如`INDEX ts_user_id`用于表示在Test表中创建user_id字段的普通索引,

`UNIQUE ts_user_id`表示在Test表中创建user_id字段的唯一索引;


本文标签: 命名 应当 字段 创建