互联网项目中需要遵守的sql规范有哪些,请简单举例并说明为什么?

yu6810 5月前 ⋅ 152 阅读

包含两个方面: 方面一,从sql性能角度分析,包括增删改查4个方面: 增:使用一条sql语句批量插入数据,索引数量要合理,因为每个索引新增的时都有性能影响。 删:不要直接物理删除,可以逻辑删除,原因是索引需要进行回表操作,物理删除可能会导致死锁。 修改,where后跟主键索引,因为这样可以避免死锁。 查,分为三种: 1.与索引无关,直接导致性能出问题的sql,例如:3张表以上的关联查询 2. 索引失效的问题,例如:模糊查询以%开头,where后面进行了索引列计算等。 3. 索引生效但是limit很大的语句,例如查第10000页的排序数据 方面二,是常规方面,包括: 1.参数化查询:使用参数化查询可以有效防止 SQL 注入问题,提高系统的安全性。例如,在使用 JDBC 或 ORM 框架时,应该使用预编译语句或者参数化查询来执行 SQL。 2.事务管理:在需要原子性操作的地方应该使用事务,确保多个 SQL 操作要么全部成功提交,要么全部失败回滚,保证数据的一致性。例如,进行资金转账时,需要将相关的 SQL 操作放在一个事务中。 3.索引的合理使用:合理使用索引可以提高SQL查询的性能,加快数据检索速度。但是过多或不合理的索引可能会导致查询性能下降和额外的存储空间消耗。例如,在经常进行查询的列上创建索引,避免过度索引和冗余索引。


全部评论: 0

    我有话说: