shi*_*hin 174 mysql indexing key
我知道如何使用INDEX,如下面的代码.我知道如何使用外键和主键.
CREATE TABLE tasks (
task_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
parent_id INT UNSIGNED NOT NULL DEFAULT 0,
task VARCHAR(100) NOT NULL,
date_added TIMESTAMP NOT NULL,
date_completed TIMESTAMP,
PRIMARY KEY (task_id),
INDEX parent (parent_id),
....
Run Code Online (Sandbox Code Playgroud)
但是我发现使用KEY而不是INDEX的代码如下.
...
KEY order_date (order_date)
...
Run Code Online (Sandbox Code Playgroud)
我无法在MySQL官方页面中找到任何文档.
谁能告诉我KEY和INDEX之间有什么区别?我可以看到的不同之处在于,当我使用KEY ...时,我需要重复这个词,例如KEY order_date(order_date).
nos*_*nos 240
没有区别.他们是同义词.
KEY通常是...的同义词INDEX.键属性PRIMARY KEY也可以KEY在列定义中指定时指定.这是为了与其他数据库系统兼容而实现的.
Ste*_*fan 12
以下是关于"差异"的一个很好的描述:http:
//discuss.fogcreek.com/joelonsoftware5/default.asp?cmd = show &ixPost = 152398
"MySQL要求每个Key都要编入索引,这是一个特定于MySQL的实现细节,以提高性能."
Jay*_*ayD 10
键是在表中扮演非常特定角色的特殊字段,键的类型决定了它在表中的用途。
索引是 RDBMS(数据库管理系统)提供的用于改进数据处理的结构。索引与逻辑数据库结构无关。
所以...
键是用于识别表中记录的逻辑结构,索引是用于优化数据处理的物理结构。
资料来源:为凡人设计的数据库
作者:迈克尔·埃尔南德斯
小智 5
它INDEX在“创建表”文档中作为同义词提到:
MySQL 5.5 参考手册 :: 13 SQL 语句语法 :: 13.1 数据定义语句 :: 13.1.17 CREATE TABLE 语法
@Nos 已经引用了该部分并链接了 5.1 的帮助。
就像PRIMARY KEY为你创建一个主键和一个索引一样,
KEY只创建一个索引。
| 归档时间: |
|
| 查看次数: |
75619 次 |
| 最近记录: |