转载自https://www.cnblogs.com/xinruyi
1、摇表发生在insert 、update 、delete中
2、锁定表的原理是数据库在使用独占的分块机制执行上面的语句时,锁定表。直到发生commite 或者 回滚 或者退出数据库用户
3、锁表的理由
首先,在a程序执行对tableA的insert,还未commite的情况下,如果b程序也执行对tableA的insert,则在该时刻发生资源繁忙的异常的是锁定表
第二,锁表往往同时发生,而不是并行发生。 并行情况下,当一个线程操作数据库时,另一个线程不能操作数据库。 cpu和i/o分配原则)
4、减少锁定时钟的概率
1 )减少insert 、update 、delete 语句执行 到 commite 之间的时间将具体积分批量运行改为单一运行,优化sql本身的非运行速度
2 )异常对事物回滚