mysql违反完整性约束_mysql – 完整性约束违反:1452无法添加或更新子行:

我试图插入值到我的意见表,我得到一个错误。它说我不能添加或更新子行,我不知道这是什么意思。

我的模式看起来像这样

-- ----------------------------

-- Table structure for `comments`

-- ----------------------------

DROP TABLE IF EXISTS `comments`;

CREATE TABLE `comments` (

`id` varchar(36) NOT NULL,

`project_id` varchar(36) NOT NULL,

`user_id` varchar(36) NOT NULL,

`task_id` varchar(36) NOT NULL,

`data_type_id` varchar(36) NOT NULL,

`data_path` varchar(255) DEFAULT NULL,

`message` longtext,

`created` datetime DEFAULT NULL,

`modified` datetime DEFAULT NULL,

PRIMARY KEY (`id`),

KEY `fk_comments_users` (`user_id`),

KEY `fk_comments_projects1` (`project_id`),

KEY `fk_comments_data_types1` (`data_type_id`),

CONSTRAINT `fk_comments_data_types1` FOREIGN KEY (`data_type_id`) REFERENCES `data_types` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,

CONSTRAINT `fk_comments_projects1` FOREIGN KEY (`project_id`) REFERENCES `projects` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION,

CONSTRAINT `fk_comments_users` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION

) ENGINE=InnoDB DEFAULT CHARSET=utf32;

-- ----------------------------

-- Records of comments

-- ----------------------------

-- ----------------------------

-- Table structure for `projects`

-- ----------------------------

DROP TABLE IF EXISTS `projects`;

CREATE TABLE `projects` (

`id` varchar(36) NOT NULL,

`user_id` varchar(36) NOT NULL,

`title` varchar(45) DEFAULT NULL,

`description` longtext,

`created` datetime DEFAULT NULL,

`modified` datetime DEFAULT NULL,

PRIMARY KEY (`id`),

KEY `fk_projects_users1` (`user_id`),

CONSTRAINT `fk_projects_users1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION

) ENGINE=InnoDB DEFAULT CHARSET=utf32;

-- ----------------------------

-- Records of projects

-- ----------------------------

INSERT INTO `projects` VALUES ('50dcbc72-3410-4596-8b71-0e80ae7aaee3', '50dcbc5c-d684-40bf-9715-0becae7aaee3', 'Brand New Project', 'This is a brand new project', '2012-12-27 15:24:02', '2012-12-27 15:24:02');

和我试图做的mysql语句看起来像这样

INSERT INTO `anthonyl_fbpj`.`comments` (`project_id`, `user_id`, `task_id`, `data_type_id`, `message`, `modified`, `created`, `id`)

VALUES ('50dc845a-83e4-4db3-8705-5432ae7aaee3', '50dcbc5c-d684-40bf-9715-0becae7aaee3', '1', '50d32e5c-abdc-491a-a0ef-25d84e9f49a8', 'this is a test', '2012-12-27 19:20:46', '2012-12-27 19:20:46', '50dcf3ee-8bf4-4685-aa45-4eb4ae7aaee3')

我得到的错误看起来像这样

SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or

update a child row: a foreign key constraint fails

(anthonyl_fbpj.comments, CONSTRAINT fk_comments_projects1

FOREIGN KEY (project_id) REFERENCES projects (id) ON DELETE NO

ACTION ON UPDATE NO ACTION)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值