找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手
【navicat】  →  连接数据库的客户端

navicat 如果连接不上
(1)  service mysqld restart  重启数据库
(2)service iptable stop  关闭防火墙
(3) 检查登录用户是否具有% 权限  
grant all privileges on . to 'root'@'%' identified by '123456';

快捷键
ctrl + q  新建一个查询窗口
ctrl + w  关闭窗口
ctrl + r  运行语句

注释
#   单行注释
/*     */    多行注释
/ *       段注释

【数据库索引】       
1、什么是索引
一个索引是存储在表中的数据结构 ,索引在表的列名上创建。
索引中包含了一个列的值,这些值保存在一个数据结构中。
数据库使用索引的方式与使用书的目录很相似  :通过搜索引找到特定的值,然后随指针到达包含该值的行。

2、重点 : 索引是一种数据结构

3 、索引的作用
可以利用索引快速访问数据库中的特定信息
索引分类 :
① 普通索引
② 唯一索引
③ 主键索引

4、普通索引   →   最基本的索引   没有限制
create index tt on dcs(name);    → 给name添加一个索引名为tt
show index from dcs;    → 查看dcs 这个表有哪些索引
create index mm on dcs(name,phone);   → 给name 和phone 字段添加索引名为mm
alter table dcs drop index mm;   → 删除mm 这个索引

5、唯一索引      → 与普通索引不同的是字段值必须不能重复  可以为空
create unique index mm on dcs(phone);   → 不能创建唯一索引因为phone字段的值有相同
show index from dcs;      → 查看dcs 这个表有哪些索引
create unique index mm on dcs(name);   → 给name 字段创建唯一索引名为mm
alter table dcs drop index mm;    → 删除mm 这个索引

6、主键索引   →  不可以为空值 ,也不能重复  唯一 主键索引就是主键
alter table dcs dcs drop primary key;   →  删除主键
alter table dcs add primary key(id);    →  给dcs 这个表的id 加上主键
show index from dcs;  →   查看dcs 这个表有哪些索引
注意 :添加一个主键约束就是添加一个主键索引,反之也然

面试题 :主键和唯一索引的区别
① 主键是一种约束 ,唯一索引是一种索引,本质都不一样
②  主键约束创建后一定包含一个唯一索引 ,唯一索引不一定是主键
③  一个表中只能有一个主键 ,但是唯一索引可以创建多个
④  主键不能为空,但是唯一索引可以为空

总结;
优点 :
(1) 可以保证数据的唯一性
(2) 加快检索
(3) 提高性能
缺点:
(1) 维护耗时间
(2)占用物理内存


分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册