![]() |
1
22
|
![]() |
2
11
当然
如果id为abcd,则将inuse字段设置为1,否则设置为0。 |
![]() |
3
1
这将只更新相关行。 |
![]() |
4
0
|
![]() |
5
0
尝试
或更短
例如
|
![]() |
6
0
如果您在设置标志之后,所以代码的任何其他部分都不会同时使用相同的对象,那么调用代码设置inuse=1并在完成后重置它会更好。否则,您将结束一个线程,将一个对象(行)标记为正在使用,然后如果另一个线程需要另一个对象,它将在第一个线程仍在使用时重置它。 如果不是这样,并且您只希望能够为一个设置inuse,并重置所有其他设置,则可以使用:
|
![]() |
7
0
如果您的数据库使用事务,这是最好的方法:
如果您不使用事务,那么另一个使用案例的答案是最好的选择,因为它是可移植的。但它需要比两个update语句更多的CPU时间。 |