MySQL总结(二)

MySQL总结(二)
最新回答
无恙

2022-02-03 20:52:34

MySQL总结

一、函数

  • 统计函数
    • count:用于统计行数,可以区分总行数和特定列的非null计数。
  • 字符串相关函数
    • CONCAT:用于拼接字符串。
    • INSTR:用于查找子串在字符串中的位置。

二、约束

  • 主键约束:要求唯一且非空,用于唯一标识表中的每一行。支持复合主键,即可以使用多个列组合作为主键。
  • 非空约束:确保列不能存储NULL值。
  • 唯一约束:确保列中的所有值都是唯一的,但允许一个NULL值。
  • 外键约束:用于在两个表之间建立关联,确保数据的一致性。外键约束必须在支持外键的InnoDB表上使用。

三、索引

  • 作用:提升查询速度,通过创建数据结构来加速查找。
  • 类型
    • 主键索引:主键列自动创建的主键索引。
    • 唯一索引:确保索引列中的所有值都是唯一的。
    • 普通索引:最基本的索引类型,没有任何限制。
    • 全文索引:用于全文搜索,提高文本字段的查询效率。
  • 注意事项:创建和删除索引以及选择合适列上建立索引对性能至关重要。选择索引时要考虑查询条件的频率和字段更新频率。

四、多表查询

  • 内连接:返回两个表中满足连接条件的所有行。
  • 外连接:包括左外连接和右外连接,返回连接条件满足的行以及不满足连接条件但属于一个表的所有行。
  • 自连接:一个表与自身的连接,用于处理表中数据之间的关联。

五、事务

  • 概念:保证数据一致性的重要机制。
  • 操作
    • 开始事务:标记一个事务的开始。
    • 保存点设置:在事务中设置一个保存点,以便在需要时回滚到该点。
    • 回滚:撤销事务中已执行的操作,使数据库恢复到事务开始前的状态。
    • 提交:将事务中的更改永久保存到数据库中。
  • 隔离级别:用于控制事务之间的并发处理,包括脏读、不可重复读和幻读等问题。

六、存储引擎

  • InnoDB:支持事务和外键,是MySQL的默认存储引擎。
  • MyISAM:快速但不支持事务,适合只读或读多写少的场景。
  • Memory:将数据存储在内存中,速度快但数据易丢失,适合临时数据存储。

理解这些概念和特性对于高效管理和维护MySQL数据库至关重要。