【发布时间】:2013-06-08 18:05:06
【问题描述】:
如何保证我可以搜索数据库中是否存在用户名,然后将该用户名作为新行插入数据库中,而不会在SELECT 和INSERT 语句之间进行任何拦截?
几乎就像我锁定了一个不存在的行。我想用用户名“Foo”锁定不存在的行,这样我现在可以检查它是否存在于数据库中,如果它不存在则将其插入数据库任何中断。
我知道使用 LOCK IN SHARE MODE 和 FOR UPDATE 存在,但据我所知,这仅适用于已经存在的行。我不知道在这种情况下该怎么办。
【问题讨论】:
标签: mysql locking innodb rowlocking database-locking