作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 mysql 新手,正在使用在线服务器(MYSQL 版本 5.1.69),我有下表
CREATE TABLE `person_info` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`person_id` int(11) NOT NULL,
`info_type_id` int(11) NOT NULL,
`info` text NOT NULL,
`note` text,
PRIMARY KEY (`id`),
KEY `idx_pid` (`person_id`),
KEY `person_info_info_type_id_exists` (`info_type_id`)
)
谁能给我解释一下“KEY idx_pid
(person_id
)”是什么意思?
最佳答案
KEY
,在MySQL中,是INDEX
的别名;你可以在 CREATE TABLE
的伪语法中看到这一点文档:
[INDEX|KEY] [<strong><em>index_name</em></strong>] (<strong><em>index_col_name</em></strong>,...)
它表示表上索引的定义,仅此而已。这里,
KEY `idx_pid` (`person_id`),
…在列“person_id”上创建一个名为“idx_pid”的索引。这也可以写成,
INDEX `idx_pid` (`person_id`),
但是,MySQL 的SHOW CREATE TABLE
命令(和其他命令)将优先使用KEY
。在这里选择关键字是一个不幸的选择,因为它与关系数据库这个词意义上的“key¹”无关。
¹在关系数据库理论中,键是一组唯一标识行的列。
关于mysql - 行 "KEY ` idx_pid` (`person_id` ), "是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19502175/
我是 mysql 新手,正在使用在线服务器(MYSQL 版本 5.1.69),我有下表 CREATE TABLE `person_info` ( `id` int(11) NOT NULL AUT
我是一名优秀的程序员,十分优秀!