Mysql索引的定义
索引,就是用于加快查找数据的速度的一种内部机制。
在我们的建表代码中,其实非常简单:
索引类别(要建索引的字段名1,字段名2,.....);
索引的好处和坏处:
1,好处,只有
什么叫做索引? 索引,就是用于加快查找数据的速度的一种内部机制。 在我们的建表代码中,其实非常简单: 索引类别(要建索引的字段名1,字段名2,.....); 索引的好处和坏处: 1,好处,只有一个:极大加快查找数据的速度; 2,坏处:降低增删改的速度。 索引分类 有如下一些索引(索引类别): 普通索引: key(字段名...) 主键索引: primary key(字段名...) 其实,我们设定一个主键的时候,也就自动设定了索引! 唯一索引: unique key(字段名...) 其实,我们设定一个唯一键的时候,也就自动设定了索引! 全文索引: fulltext (字段名...) 目前:mysql对中文的全文索引支持度不够mysql索引表,没有实用性,以后再学其他解决办法。 外键索引: foreign key (字段名...) references 其他表名(对应其他表中的字段名) 外键索引 外键: 就是关系数据库中的表和表之间的联系的一种机制。 在2个表中,则学生信息表中的“班级号”这个字段,相对于“班级表”来说,就是外键: 它的作用就是来保证:一个学生的班级号,必须来源于另一个表(班级表)中的“班级主键”字段。 则建表时大约如下: create table 班级表( 班级主键 int auto_increment , 班号 varchar(10), 开班时间 datetime, primary key (班级主键) ) create table 学生主信息表( 学生主键 int auto_increment , 学号 varchar(20), 姓名 varchar(10), 班级号 int, primary key (学生主键) foreign key( 班级号) references 班级表(班级主键) ) 演示百万数据的有索引和无索引的差别: 导入数据: source “备份的数据文件”; 创建一个跟现有表完全一样的表: create table ipos2 like ipos_spkcb; 并将这个表中的sp_id这个索引删除: alter table ipos2 drop index sp_id 插入一个查询结果数据: insert into ipos2 select * from ipos_spkcb; 测试: (编辑:91站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |