如下sql在建立部门和角色的多对多关联表结构的时候,“KEY FK7qg6itn5ajdoa9h9o78v9ksur
(dept_id
)” 这句里的随机字符串表示什么意思?创建这个key的作用是什么?
CREATE TABLE sys_roles_depts
(role_id
bigint(20) NOT NULL,dept_id
bigint(20) NOT NULL,
PRIMARY KEY (role_id
,dept_id
) USING BTREE,
KEY FK7qg6itn5ajdoa9h9o78v9ksur
(dept_id
) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='角色部门关联';
你已经给role_id和dept_id建立了主键索引,因为是联合索引,单独用dept_id作条件查询时索引就失效了,所以这里会单独给role_id加一个索引。不过这里随机字符串的索引名不太符合命名规范,我们一般用idx_作为索引前缀