【发布时间】:2019-06-04 01:47:06
【问题描述】:
我正在尝试用 PHP 为我的家庭预算应用程序设计一个数据库结构。 在设置外键时,我遇到了一个问题。
我有 3 张桌子:
日志(id、日期、tranTypeID、categoryID、描述、值、isForecast)
类别 (id, categoryName)
交易类型(id,交易类型名称)
日志 - 主要预算记录
类别 - 日志记录的固定类别列表
transactiontype - 目前只保存 2 条记录:费用、收入
我为 tranTypeID 设置了外键,没有失败。尝试对 categoryID 执行相同操作时:
ALTER TABLE `log` ADD CONSTRAINT `fk_log_category` FOREIGN KEY (`categoryID`) REFERENCES `category`(`id`) ON DELETE RESTRICT ON UPDATE RESTRICT;
我收到以下错误:
1452 - 无法添加或更新子行:外键约束失败 (
budget.#sql-1aac_349, CONSTRAINTfk_log_categoryFOREIGN KEY (categoryID) REFERENCEScategory(id)) H1>
我确实为 InnoDB 设置了所有表引擎,并且所有相关列都设置了完全相同的数据类型。
【问题讨论】:
标签: mysql phpmyadmin foreign-keys