php - MySQL如何防止主键重复

标签 php mysql database database-design primary-key

我正在 MySQL 中创建用户详细信息表,当用户提交注册表单时,用户详细信息将存储在其中。

在我的用户表中,用户 ID 字段是主键并且自动递增。

我的应用程序应该由许多位置的许多用户使用。现在有一种情况,两个用户可能从任何地方同时单击提交按钮。我的主键是整数类型,长度为15,但是当两个用户同时点击时,哪个用户应该先获得下一个id。或者有可能这些都没有注册并出现错误。

在这种情况下我能做什么

最佳答案

你的 mySQL id 字段很好,所以你应该没有问题;但是,在插入新记录时,根据插入 SQL 查询的情况,确保未定义 id,或使用类似以下内容的内容:

insert into users values(NULL, "blah", "blah")

- 其中“NULL”是您的第一列/字段。 仅当“NULL”处的字段(列)设置(创建或更改时)为自动增量时,这才会按您期望的方式工作。 如果设置了这些,则记录 ID 在每个数据条目上都会递增,无论它是否同时发生;新记录总是排队等待一个接一个地插入。

关于php - MySQL如何防止主键重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26899635/

相关文章:

Windows 和 Linux 中的 PHP 日期函数

php - Mysql 选择计数不同和选择不同

sql - 我如何在更新前后验证一行

javascript - Codeigniter 中从 Node 服务器到 Controller 的 Ajax post 调用,数据未插入数据库

php - 连接 2 个表 : CodeIgniter

mysql - SQL 查询 - 关系表的双重条件

php - 根据 db 中的值在 wp 页脚中动态显示代码

php - 在数据库 PHP 中存储用户提交的撇号

php 内爆没有按预期工作

java - 使用预准备语句的 SQL 语法错误