zoukankan      html  css  js  c++  java
  • MySQL数据库方面

    首先第一个问题:
    原则上索引可以加在任何字段,不过有的字段不需要加索引,或者说,加了反而不好。
    建立索引常用的规则如下:
    1、表的主键、外键必须有索引;
    2、数据量超过300的表应该有索引;
    3、经常与其他表进行连接的表,在连接字段上应该建立索引;
    4、经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;
    5、索引应该建在选择性高的字段上;
    6、索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引;
    7、复合索引的建立需要进行仔细分析;尽量考虑用单字段索引代替:
    8、频繁进行数据操作的表,不要建立太多的索引;
    9、删除无用的索引,避免对执行计划造成负面影响;
    以上是一些普遍的建立索引时的判断依据。一言以蔽之,索引的建立必须慎重,对每个索引的必要性都应该经过仔细分析,要有建立的依据。因为太多的索引与不充分、不正确的索引对性能都毫无益处:在表上建立的每个索引都会增加存储开销,索引对于插入、删除、更新操作也会增加处理上的开销。另外,过多的复合索引,在有单字段索引的情况下,一般都是没有存在价值的;相反,还会降低数据增加删除时的性能,特别是对频繁更新的表来说,负面影响更大。
    第二个问题:
    索引建在主键上就是唯一索引,但是唯一索引不一定建在主键上,因为唯一索引可以有多个。
    主键与索引的区别如下:
    主键是一种约束,唯一索引是一种索引,两者在本质上是不同的。
    主键创建后一定包含一个唯一性索引,唯一性索引并不一定就是主键。
    唯一性索引列允许空值,而主键列不允许为空值。
    主键列在创建时,已经默认不为空值 + 唯一索引了。
    主键可以被其他表引用为外键,而唯一索引不能。
    一个表最多只能创建一个主键,但可以创建多个唯一索引。
    主键更适合那些不容易更改的唯一标识,如自动递增列、身份证号等。
  • 相关阅读:
    call和apply的区别
    淘宝镜像(cnpm)的安装和使用
    文件包含漏洞
    vue简单的日历
    微信小程序(mpvue)—解决视频播放bug的一种方式
    vue 异步组件
    vuex的学习笔记
    vue2.0 添加监听滚动事件
    jquery tmpl生成导航
    vue 控制视图
  • 原文地址:https://www.cnblogs.com/LongHuaiYu/p/5077209.html
Copyright © 2011-2022 走看看