【知識積累】MYSQL之索引

#查看索引
SHOW INDEX FROM tableName;
#創建複合索引
create UNIQUE INDEX indexName ON tableName(column1, column2, column3);
#創建複合唯一索引
ALTER TABLE tableName ADD UNIQUE INDEX indexName ON (column1, column2, column3);
#創建主鍵索引
ALTER TABLE tableName ADD PRIMARY KEY (id);
#創建唯一索引
ALTER TABLE tableName ADD UNIQUE INDEX indexName(id);
#創建普通索引
ALTER TABLE tableName ADD INDEX indexName(id);
#刪除索引
DROP INDEX indexName ON tableName;

DROP TABLE IF EXISTS index_a;
CREATE TABLE index_a(
id BIGINT(10) NOT NULL auto_increment,
username VARCHAR(50) DEFAULT NULL COMMENT '用戶名',
password VARCHAR(50) DEFAULT NULL COMMENT '密碼',
age VARCHAR(2) DEFAULT NULL COMMENT '年齡',
mobile VARCHAR(20) DEFAULT NULL COMMENT '電話', 
create_time TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創建時間',
update_time TIMESTAMP NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '修改時間',
PRIMARY key (id), #創建主鍵索引
KEY (username) USING BTREE #創建普通索引
) ENGINE=INNODB auto_increment=1 DEFAULT CHARSET=utf8 COMMENT '用戶表';
INSERT INTO index_a(username, password, age, mobile) VALUES ('張三', '123456', '1', '13838380431');
INSERT INTO index_a(username, password, age, mobile) VALUES ('李四', '123456', '2', '13838380432');
INSERT INTO index_a(username, password, age, mobile) VALUES ('王五', '123456', '3', '13838380433');
INSERT INTO index_a(username, password, age, mobile) VALUES ('馬六', '123456', '4', '13838380434');

SHOW INDEX FROM index_a; 

CREATE INDEX username_password ON index_a(username, password); 

ALTER TABLE index_a ADD UNIQUE INDEX mobile(mobile); 

ALTER TABLE index_a ADD INDEX create_time(create_time); 

DROP INDEX mobile ON index_a; 


SELECT * FROM index_a;
UPDATE index_a SET password = '' WHERE id = 1;
DELETE FROM index_a WHERE id = 1;
TRUNCATE index_a; #清空表
ALTER TABLE index_a auto_increment = 2; #修改自增下標

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章