创建表时可以直接创建索引,这种方式最简单、方便。其基本形式如下:

CREATE TABLE 表名( 
  属性名 数据类型[完整性约束条件], 
  属性名 数据类型[完整性约束条件], 
  ...... 
  属性名 数据类型 
  [ UNIQUE | FULLTEXT | SPATIAL ] INDEX | KEY [ 别名] ( 属性名1 [(长度)] [ ASC | DESC] ) 
);




UNIQUE是可选参数,表示索引为唯一性索引;

FULLTEXT是可选参数,表示索引为全文索引;

SPATIAL也是可选参数,表示索引为空间索引;

INDEXKEY参数用来指定字段为索引的,两者选择其中之一就可以了,作用是一样的;

"别名"是可选参数,用来给创建的索引取的新名称;

"属性1"参数指定索引对应的字段的名称,该字段必须为前面定义好的字段;

"长度"是可选参数,其指索引的长度,必须是字符串类型才可以使用;

"ASC"和"DESC"都是可选参数,"ASC"参数表示升序排列,"DESC"参数表示降序排列。


例子



CREATE TABLE `hc_project_vote` (
  `id` INT (11) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `create_time` datetime COMMENT '创建时间',
  `update_time` datetime COMMENT '更新时间',
  `sn` VARCHAR (30) DEFAULT '' COMMENT 'sn',
  `project_sn` VARCHAR (30) DEFAULT '' COMMENT '项目sn',
  `user_sn` VARCHAR (30) DEFAULT '' COMMENT '投票者sn',
  `vote_time` datetime COMMENT '投票时间',
  `visit_ip` VARCHAR (15) DEFAULT '' COMMENT '投票者ip',
  PRIMARY KEY (`id`),
  KEY `idx_project_sn` (`project_sn`) USING BTREE,
  KEY `idx_huser_sn` (`user_sn`) USING BTREE
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT '项目投票记录表';