索引的概念

/*数据字段属性*/
     //Unsigned 非负
	 //Auto_increment 自增(必须配合主键索引或者是唯一索引)
	 //NOT NULL 非空(该字段不允许为空)
	 //DEFAULT 默认值(通常情况下NOT NULL)
	 /*创建索引*/
	 //什么是索引 
	 //类似于书的目录 
	 //作用   提高查询速度
	 //索引分类 
	           a)主键索引(PRIMARY KEY) 
			   特性:唯一约束
               注意:1)主键在一张表当中 只允许有一个主键 
                     2)主键索引不是必须创建的 			   
			   b)唯一索引(UNIQUE)
			   特性:唯一约束	
			   注意:1)唯一索引在一张表当中可以有多个唯一索引
                     2)			   
			   c)普通(常规)索引分类(index/key)
			   d)全文索引(FULLTEXT)
			   特性:主要用来全文数据的搜索(like模糊查询)
			   注意:很少使用可以使用sphink全文检搜索引擎测来检测索引
			   e)外键索引
			            1)通常情况下 配合一张表的主键使用 
						2)两表或者多表关联时使用
	                    3)外键不推荐使用(效率低)
       //对索引的操作 
                    // 1 创建bbs数据库 	   
	                 a)创建
					     1)创建数据表的时候在字段后执行
						   1 Create table bbs_user(
						   2 Id int unsigned not null auto_increment primary key,
						   3 username varchar(32) unique 
						   4 )engine=myisam ;
						 2)创建数据表的时候在所有字段都写完后执行 最后创建索引 
						   1 Create table bbs_user(
						   2 Id int unsigned not null auto_increment,
						   3 Username varchar(32) not null,
						   4 Parimary key(id),
						   5 unique bbs_user_username(username)
						   6 )engine=myisam ;
						 3)使用修改表结构添加索引 
                           1 Alter table bbs_user add primary key(id),
                           2 Alter table bbs_user add unique bbs_user_username(username),
                           3 Alter table bbs_user add index bbs_user_username_index(uernamrme),
						   
					 b)查询
					     1) Show indexes from bbs_user\G
					 c)删除
					     1) Alter table bbs_user drop primary key;
						 2) Alter table bbs_user drop index bbs_user_username ;
	                     3) 注意:
						        1 删除主键索引之前 必须要将自增列删除掉
                                2 删除唯一索引 也同样使用drop index 而不是 drop unique
                     e)索引的优点和缺点 :
                                        优点 提高查询速度 
                                        缺点 降低写入速度 会占用一定磁盘空间 	

猜你喜欢

转载自blog.csdn.net/feiyucity/article/details/84332942
今日推荐