gpt4 book ai didi

mysql - 将外键添加到现有列时出错

转载 作者:行者123 更新时间:2023-12-02 11:07:28 26 4
gpt4 key购买 nike

我有一个表,其中有一个主键,而另一列是同一数据库中另一个表的主键。

我只是想添加foregin键,但显示错误-

    #1452 - Cannot add or update a child row: a foreign key constraint fails
(`c2cjobportal`.`#sql-114c_e3`,CONSTRAINT `fk_PerOrders
`FOREIGN KEY (`jobseekers_id`) REFERENCES `jobseekers` (`jobseekers_id`))

是什么原因造成的?

我的SQL代码是-
ALTER TABLE `jobseekers_customprofile`
ADD CONSTRAINT fk_PerOrders
FOREIGN KEY (jobseekers_Id)
REFERENCES jobseekers(jobseekers_Id)

最佳答案

我想你盲目跟风。
我相信不仅但完全知道从w3cschool复制了代码并尝试了您的代码,因为它看起来非常相似
http://www.w3schools.com/sql/sql_foreignkey.asp

您使用的代码是

CREATE TABLE Orders
(
O_Id int NOT NULL,
OrderNo int NOT NULL,
P_Id int,
PRIMARY KEY (O_Id),
CONSTRAINT fk_PerOrders FOREIGN KEY (P_Id)
REFERENCES Persons(P_Id)
)

但是您还没有看到上面写的内容:“要允许命名FOREIGN KEY约束,并在多个列上定义FOREIGN KEY约束,请使用以下SQL语法:”首先阅读然后遵循这些内容,切勿着急。
由于您已读取并复制并粘贴了未尝试的其他资源,并在此处发布了问题,因此您得到了-1(偏离航向的位置不是我提供的,而且我也无法提供此权限)。

来到现实中-

您的senario与您发布sql的代码应该是这样的-
ALTER TABLE `jobseekers_customprofile`
ADD CONSTRAINT FOREIGN KEY (jobseekers_Id)
REFERENCES jobseekers(jobseekers_Id)

条件是,如果其中已有数据,则可能无法解决您的问题,因此请在执行此查询之前检查数据。您还可以使用ON UPDATE CASCADE和DELETE ON CASCADE ON DELETE CASCADE ON DELETE DEFAULT来执行任何操作

尝试也引用这些

http://dev.mysql.com/doc/refman/5.6/en/innodb-foreign-key-constraints.html

mysql foreign key error #1452

Mysql error 1452 - Cannot add or update a child row: a foreign key constraint fails

关于mysql - 将外键添加到现有列时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16997986/

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