gpt4 book ai didi

mysql - 创建用户时应该锁定表吗?

转载 作者:行者123 更新时间:2023-11-29 04:32:48 27 4
gpt4 key购买 nike

我想在用户表中创建一个用户。这些是我的过程。

  1. 当电子邮件和昵称不存在时继续
  2. 创建一个用户

我想如果我在创建用户时没有锁定 User 表,那么电子邮件和昵称可能会重复。

有什么想法吗?

最佳答案

尽可能避免锁定。相反,使用 unique index ,然后简单地插入用户。如果用户或电子邮件存在,您的查询将返回类似于以下内容的错误:

Error Code: 1062. Duplicate entry 'john.doe@example.org' for key 'unique_email'

这应该通过 2 个单独的索引 来完成。一个用于电子邮件,一个用于用户。这具有以下优点,并且缺点几乎为零:

  1. 它加强了数据库的一致性。 2 个用户绝不会拥有相同的电子邮件地址或相同的用户名。
  2. 它避免了不必要的锁定。
  3. 它避免了technical debt .假设您添加了一个用户导入器。在导入器中,您无法检查重复帐户、添加锁或忘记检查用户名或电子邮件是否存在。您的导入器将会工作,您的数据库现在将包含相互重复的条目。

关于mysql - 创建用户时应该锁定表吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54977712/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com