• mysql笔记


    三大范式是什么?

    第一范式:每一列必须是不可拆分的最小单元

    第二范式:表中所有列必须依赖主键

    第三范式:表中每一列和主键是直接相关

    数据库五大约束是什么?

    是否设置主键,是否设置唯一性约束,默认值,非空约束,外键约束

    主键是什么,怎么设置主键?

    主键默认非空,且是唯一。只有主键才能设置自增,自增一定是主键。主键不一定自增。Primary key(id)

    innodb和myisam有什么区别?

    Inno支持事务,sam不支持。Inno支持行锁,sam支持表锁。

    什么是索引?

    是一种数据结构,可以帮助我们快速的进行数据的查找

    导致索引失效的原因有哪些?

    列参与了数学运算,like查询,使用in或者not in会全表扫描

    drop、delete与truncate分别在什么场景之下使用?

    不再需要一张表的时候,用drop

    想删除部分数据行时候,用delete,并且带上where子句

    保留表而删除所有数据的时候用truncate

    varchar和char有什么区别?

    char的长度是不可变的,而varchar是可变的,char的存取速度比varchar要快,因为其长度固定,方便程序的存储与查找

    sql优化常用技巧有哪些?

    带where查询,不使用select*,去掉不必要的字段,减少访问数据库次数,字段设置not null,加索引

    什么是事务?

    保证一组数据库操作,要么全部成功,要么全部失败

    事务的四大特性?

    原子性(成功或失败)

    一致性(执行过程,数据库完整性不会被破坏)

    独立性(防止交叉执行导致数据不一致)

    持久性(修改永久,系统故障也不丢失)

    数据库事务的使用的规范有哪些?

    控制事务大小,合理使用索引,让innodb在索引上加锁更准

    乐观锁和悲观锁是什么,如何实现?

    乐观锁:先修改,保存时判断是否更新过(自己写代码实现)。更新时间戳可以实现

    悲观锁:先获取锁,在操作修改。Sql后加for update

    聚簇索引和非聚簇索引的区别是 索引和数据是否放在一起。Innodb聚簇sam非聚簇

  • 相关阅读:
    AIGC ChatGPT4 读取接口文件并进行可视化分析
    产品思维训练 | 亚马逊流量7-8月网站访客流量下降,请分析原因
    关于clickhouse单节点部署
    形参与实参
    【C语言】程序环境和预处理
    XUbuntu22.04之查找进程号pidof、pgrep总结(一百九十)
    仿热血江湖游戏类45method_3、method_4
    zabbix
    【业务场景】用户连点
    GRASP 、SOLID 与 GoF 设计模式
  • 原文地址:https://blog.csdn.net/qq_41564405/article/details/126248759