MYSQL 关于索引的部分问题!

1、

   PRIMARY KEY也可以只指定为KEY。这么做的目的是与其它数据库系统兼容、二来key 是index的同意词!

2、

   在UNIQUE索引中,所有的值必须互不相同。如果您在添加新行时使用的关键字与原有行的关键字相同,则会出现错误。

   例外情况是,如果索引中的一个列允许包含NULL值,则此列可以包含多个NULL值。此例外情况不适用于BDB表。

   在BDB中,带索引的列只允许一个单一NULL。

3、

   PRIMARY KEY是一个唯一KEY,此时,所有的关键字列必须定义为NOT NULL。如果这些列没有被明确地定义为NOT NULL,

   MySQL应隐含地定义这些列。一个表只有一个PRIMARY KEY。如果您没有PRIMARY KEY并且一个应用程序要求在表中使用PRIMARY KEY,

   则MySQL返回第一个UNIQUE索引

4、

   在已创建的表中,PRIMARY KEY的位置最靠前,然后是所有的UNIQUE索引,然后是非唯一索引。这可以帮助MySQL优化程序选择优先使用哪个索引,

   并且更快速的检测出重复的UNIQUE关键字。

5、

   创建特殊的FULLTEXT索引,用于全文搜索。只有MyISAM表类型支持FULLTEXT索引。FULLTEXT索引只可以从CHAR, VARCHAR和TEXT列中创建。

   整个列都会被编入索引;不支持对部分列编索引。如果已指定,前缀长度会被忽略。

 

posted on 2014-10-06 22:49  蒋乐兴的技术随笔  阅读(519)  评论(0编辑  收藏  举报

导航