gpt4 book ai didi

php - 为什么主键重复

转载 作者:行者123 更新时间:2023-11-29 07:05:36 25 4
gpt4 key购买 nike

我正在使用 PHP 和 MySql 构建 CRUD 应用程序。它使用两个表,称为usersmedical_records:

CREATE TABLE `users` (
`id` int(11) NOT NULL,
`username` varchar(255) NOT NULL,
`first_name` varchar(255) NOT NULL,
`last_name` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`password` varchar(1024) NOT NULL,
`validation_code` text NOT NULL,
`active` tinyint(1) NOT NULL,
`telefon` varchar(255) DEFAULT NULL,
`oras` varchar(255) DEFAULT NULL,
`adresa` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

CREATE TABLE medical_records (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user_id` int(11) NOT NULL,
`fo` VARCHAR(255),
`condition` VARCHAR(255),
`transfer` VARCHAR(255),
`memo` text(1024),
`body_temperature` VARCHAR(255),
PRIMARY KEY (`id`),
CONSTRAINT FK_medical_records_1
FOREIGN KEY (user_id) REFERENCES users(id)
ON UPDATE CASCADE ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;

这些表的“业务逻辑”是:每个用户都有一份(只有一份)医疗记录。

当应用程序只有用户表时,我使用并测试了该应用程序。注册和登录工作正常,因此我得出结论问题的根源不可能是应用程序的 (PHP) 代码

后来我对users表进行了掺杂,并添加了应用程序现在使用的2个新表(usersmedical_records)。

此时每当我尝试注册第二个用户时,都会收到错误:

QUERY FAILED: Duplicate entry '0' for key 'PRIMARY'

尽管两个表都有自动递增主键,但还是会发生这种情况。对此有何解释?

最佳答案

users 表中的 id 未设置为 AUTO_INCRMENT。这就是为什么会发生这种情况。

关于php - 为什么主键重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41827972/

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