gpt4 book ai didi

node.js - ForeignKeyConstraintError [SequelizeForeignKeyConstraintError] : insert or update on table "avatars" violates foreign key constraint

转载 作者:行者123 更新时间:2023-12-03 22:24:58 27 4
gpt4 key购买 nike

我有两个表,用户名被称为不同的东西,但它们是通过外键连接的:
表用户有一个列用户名
表头像有一列 ownerUsername
我被困在这个外键问题上并更新了一条记录。我最近重新制作了外键以具有 UPDATE CASCADE,但在尝试更新时仍然出现此错误:
ForeignKeyConstraintError [SequelizeForeignKeyConstraintError]:在表“avatars”上插入或更新违反外键约束“User_OwnerUsername_fk”
它还在下面进一步说明了这一点:
详细信息:Key (ownerUsername)=(theSunBurn) 不存在于表“users”中
我不确定这里有什么问题。是不是因为users 表中的'username' 字段在avatars 表中被称为'ownerUsername'?还是因为我将头像表中的 ownerUsername 更新为“theSunBurn”,但在用户表中它仍然是旧用户名?另外,在使用外键更新字段时,我是否应该以某种方式同时更新两个表?

最佳答案

根据我的理解,使用的外键不是 Id,而是一个可变的键,即“用户名”。
您所问的问题与“头像”表中列的名称无关。问题是当我们使用一个不作为主键存在的值(即更新 ownerUsername 为“theSunBurn”)更新外键时,它会显示您收到的错误。
您可以使用 ID 而不是 UserName 作为外键
或者
每当您想更新头像时,首先在用户中创建一个条目(如果尚未存在)

关于node.js - ForeignKeyConstraintError [SequelizeForeignKeyConstraintError] : insert or update on table "avatars" violates foreign key constraint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64949805/

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