【问题标题】:How to create mutlipul Orders of different things如何创建不同事物的多个订单
【发布时间】:2014-04-30 12:09:24
【问题描述】:

我正在为一家 DVD 商店的 Uni 案例研究创建一个代码,我正在为我的客户订单数据库使用下面的代码,但我意识到它一次只能让我订购一张 DVD。理想情况下,我需要它,这样您每个订单可以拥有多个 DVD id,我将如何去做。例如我有以下问题 "d.列出购买超过 50 英镑的客户名称"

CREATE TABLE CUSTOMER_ORDER
(
ORDER_ID INT NOT NULL AUTO_INCREMENT,
CUSTOMER_ID INT NOT NULL,
DVD_ID INT NOT NULL,
DVD_QUANTITY varchar(3) NOT NULL,
ORDER_DATE date NOT NULL,
ORDER_COST varchar(6) NOT NULL,
FOREIGN KEY (CUSTOMER_ID) REFERENCES CUSTOMER (CUSTOMER_ID),
FOREIGN KEY (DVD_ID) references DVD (DVD_ID),
PRIMARY KEY (ORDER_ID)
)

【问题讨论】:

    标签: mysql orders


    【解决方案1】:

    Dbrisk,我最熟悉的方式是为“订单”(包含一个或多个项目的完整订单)和“order_items”(订单中包含的单个行或项目)创建一个表格)。 “订单”表将包含所有信息或对订单信息的引用,不包括订单中的单个产品。然后,order_items 将包含一个类似“order_id”的字段,以将多个项目引用回订单桶。

    我已经创建了一个我在下面描述的示例。这些表由订单#1 和#2 组成。订单 #1 包含 1 个产品 ID 111 和 2 个产品 ID 222。订单 #2 包含一个产品 333 单位。

    ORDERS
    id      acct_id     created_date
    1       123         04-30-2014
    2       456         04-30-2014
    
    ORDER_ITEMS
    id      order_id        product_id      quantity
    1       1               111             1
    2       1               222             2
    3       2               333             1
    

    要查询完整订单,请使用 order.id 和 order_item.order_id 将 order_items 连接到订单。

    【讨论】:

      猜你喜欢
      • 2022-01-27
      • 2019-06-09
      • 2021-02-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-12
      • 1970-01-01
      • 2018-11-22
      • 1970-01-01
      相关资源
      最近更新 更多