转载:http://hi.baidu.com/justin_wu2010/blog/item/bd1b4e2a0eacca2ed52af1b8.html
在编写数据库程序的时候,我们可能经常会通过多个函数修改同一张表里的数据,或者大量的是数据通过同一个函数进行操作。在这样的情况下,会很容易产生沾数据。避免粘数据的两种方式:
一:insert通过设计数据库的时候增加唯一性约束来避免insert产生的唯一性沾数据。
二:update
在函数入口判断的时候就通过调用select * from * where * for update来行锁定。如果涉及到多表操作,也要进行那几张表的行数据锁定。最重要的是,要建立一套有序的表锁定过程来避免产生死锁的情况。这种情况会在不同函数中产生,也可能在同一个函数中迭代锁定(视不同数据库机制)。
本文探讨了在数据库程序中避免数据粘连的问题,提出了通过设计唯一性约束和使用行级锁定等方法来解决这一常见挑战。文章还强调了建立有序的表锁定流程的重要性,以防止产生死锁。
670

被折叠的 条评论
为什么被折叠?



