如何在MYSQL中插入带有3个外键的表

时间:2015-12-08 20:35:00

标签: mysql

我正在研究MySQL中的学校项目,需要为我创建的每个表添加10个字段。这是我当前架构的图片: See picture below.

我的老师已经批准了这个模式,我开始为每个表添加字段,以便我可以开始构建最终项目的触发器,视图和其他部分。

我的问题是尝试添加到order_line_items字段。如您所见,它包含3个外键和1个主键。

此查询给出了一个错误:

insert into order_line_items (line_item_id, line_item_description, line_item_quantity, orders_order_id, orders_vendors_vendor_id, products_product_id) values (1, 'syrup', 86, 6, 9, 6);

以下是错误代码:

  

错误代码:1452。无法添加或更新子行:外键约束失败(`mydb``order_line_items`,CONSTRAINT`fk_order_line_items_orders1` FOREIGN KEY(`orders_order_id`,`orders_vendors_vendor_id`)REFERENCES`sorder`( `order_id`,`vendors_vendor_id`)ON DELETE)

我已经尝试在上面的语句中添加一些select语句,但是我经常会遇到一个错误,即select语句不能出现在这个位置等等。

我的问题是,我如何添加到order_line_items表中,以便在我的select语句中需要引用3个单独的表时,不会出现上述错误?写这个最简单的方法是什么?

作为后续问题,我如何添加具有类似约束的其他表格,例如食谱或sales_has_products?如何使用此模式干净地在单个插入语句中引用2-3个外键?

0 个答案:

没有答案