1.选择正确类型的sql。
有时候你想要动态生成sql,却发现自己开发的系统性能只需要使用静态sql。
2.放开锁定策略
locking越严格,性能越差。到底是用乐观锁还是悲观锁?请权衡数据库数据的完整性,为了性能~
3.频繁提交
尽快提交,以释放各种锁和程序代码中的数据库对象。这样能降低冲突的数量并及时释放内存。
4.考虑批处理
不一定非要在联机状态下才能做每件事情。实现关键任务,关键业务时候,应批量的对数据进行处理。
5.避免连接
尤其是两张字段很多的大表。请使用索引而不是什么狗P的左右连接。
6.利用特定的数据库特性
oracle有oracle的特性,mysql有mysql的特性。当你想做数据库移植时候,请遵循各种数据库厂商的数据库产品独有的特性。
7.只获取自己需要的列
当要得到你想要的列。请不要用select * from table而是用select id,name from table。
使用尽可能小的结果集,更易于处理和传递。
8.避免where子句中的or
不要写name ="smith" or name = 'frank'。请写name in ('smith','frank').后者比前者更高效
9.避免like子句
name like 's%'这样的子句会对数据库表进行扫描,开销极其巨大,其实只要在name列上定义索引,很多数据库都会高效执行
本文作者:网友 来源:网络
CIO之家 www.ciozj.com 微信公众号:imciow
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。