本文為博主原創,轉載請注明出處:
在實際應用索引時,在建表的同時建立索引,即在建表的sql中添加建立索引的sql,應用實例如下:
CREATE TABLE tbl_camera_info ( `cameraId` varchar(64) NOT NULL COMMENT '鏡頭唯一編號,統一監控平台', `cameraName` varchar(128) NOT NULL COMMENT '鏡頭名稱', `clientId` varchar(64) NOT NULL COMMENT '所屬客戶編號', `clientName` varchar(128) DEFAULT NULL COMMENT '所屬客戶名稱', `lastTime` dateTime NOT NULL COMMENT '最后修改時間', PRIMARY KEY (`cameraId`,`clientId`) )ENGINE INNODB DEFAULT CHARSET=utf8 COMMENT='鏡頭信息表';
以上建立的一個cameraId和clientId的主鍵唯一復合索引。
CREATE TABLE `report_info` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增序列', `cameraName` varchar(256) NOT NULL COMMENT '監控點名稱', `clientName` varchar(256) NOT NULL COMMENT '客戶名稱', `platId` varchar(2) NOT NULL COMMENT '平台ID', `createTime` datetime NOT NULL COMMENT '開戶時間', `lastTime` datetime NOT NULL COMMENT '最后一次更新時間', PRIMARY KEY (`id`), INDEX REPORT_CAMERA_PLATID(platId ASC), INDEX REPORT_CAMERA_CREATETIME(createTime DESC) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT ='上報信息表';
以上為表建立的為id的主鍵索引,普通索引,並且為普通索引添加了排序的種類。
物理排序是改變記錄存放的物理位置,而索引排序相當於是為一本書增加了
一個詳細的目錄(這個目錄可以是按所需的要求來決定先后順序的,它記錄的不是
庫中記錄的實際內容,而只是各記錄在庫中的位置。所以,建立索引所需的空間花費
比物理排序要小得多,還有利於防止產生數據冗余以及由此產生的數據更新時容易
造成的數據的不一致性。
