gpt4 book ai didi

mysql - 无法添加或更新子行 : a foreign key constraint fails CONSTRAINT `PageChild_Page_Id_fk` FOREIGN KEY (`PageId` ) REFERENCES `Page` (`Id` )

转载 作者:太空宇宙 更新时间:2023-11-03 11:37:32 26 4
gpt4 key购买 nike

我正在为我的模型关联使用 Sails 和 Waterline,但我不确定要做什么才能修复我在尝试更新 PageChild 对象时收到的错误。

module.exports = {
tableName: 'Page',
adapter: 'mysql',
autoCreatedAt: false,
autoUpdatedAt: false,

attributes: {

Id: {type: 'integer', autoIncrement: true, primaryKey: true},

pageChildren: {
collection: 'PageChild',
via: 'Page'
}
},
};

module.exports = {
tableName: 'PageChild',
adapter: 'mysql',

attributes: {

Id: {type: 'integer', autoIncrement: true, primaryKey: true},

Page: {
model: 'Page',
columnName: 'PageId'
}
}
};

模型关联非常适合从 Page 对象填充 pageChildren 或从任何 pageChildren 返回 Page 对象。但是,我在尝试创建或更新 PageChild 对象时遇到了这个外键问题。

在 mysql 数据库中,Page 表具有“Id”属性,而 PageChild 表具有“Id”和“PageId”属性。

最佳答案

错误是不言自明的:

foreign key constraint fails CONSTRAINT `PageChild_Page_Id_fk` FOREIGN KEY (`PageId`) REFERENCES `Page` (`Id`)

规则是,您只能在子表中添加或更新已存在于父表中的值。因此,在插入时,请确保您尝试插入子表的值已经存在于父表中。

关于mysql - 无法添加或更新子行 : a foreign key constraint fails CONSTRAINT `PageChild_Page_Id_fk` FOREIGN KEY (`PageId` ) REFERENCES `Page` (`Id` ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44572068/

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