我收到一条错误消息,提示“无法删除或更新父行,外键约束失败。”当我试图更新团队表中的值时。我究竟做错了什么?无法删除或更新父行,外键约束失败
$createTeam ="CREATE TABLE Team(
teamName VARCHAR(30) not null,
division VARCHAR(30) not null,
photo VARCHAR(30),
primary key(teamName, division)
)
engine=innodb";
$createParticipant ="CREATE TABLE Participant(
participantName VARCHAR(30) not null,
techniqueResult DOUBLE(10,2),
trickResult INT(10),
teamName VARCHAR(30) not null,
division VARCHAR(30) not null,
primary key (participantName),
foreign key (teamName, division) references Team(teamName, division)
ON DELETE CASCADE
)
engine=innodb";
$updateTeam = "UPDATE Team SET teamName = '$newTeamName' , division = '$newDivision' WHERE teamName = '$oldTeamName' AND division ='$oldDivision'";
您正在更改Team表中的主键值(即teamName,division),而Participant表中的记录具有该值作为外键。 – PaulF