如何在多对多关系中添加其他信息?

时间:2009-01-13 22:32:29

标签: python database sqlite orm storm-orm

我正在编写一个程序来管理订单然后打印它们。

订单是包含订购人,日期和此人订购的产品的对象。我想添加一个特定产品的数量。例如。 3个鸡蛋,2个面包。

使用风暴(我使用的ORM)是否有更简单的方法,而不是将订单分成更小的部分,以便每个订单只包含1个产品?

1 个答案:

答案 0 :(得分:3)

将多余列添加到多对多关系的交集表中有什么问题?

CREATE TABLE orders (
  person_id INT NOT NULL,
  product_id INT NOT NULL,
  quantity INT NOT NULL DEFAULT 1,
  PRIMARY KEY (person_id, product_id),
  FOREIGN KEY (person_id) REFERENCES persons(person_id),
  FOREIGN KEY (product_id) REFERENCES products(product_id)
);

如果在执行多对多查询时使用无法访问此表中其他列的ORM,您仍然可以将其作为products或{{的依赖表进行访问1}}。