【问题标题】:Is it wise to store a list of objects as a variable in another object?将对象列表作为变量存储在另一个对象中是否明智?
【发布时间】:2013-05-22 19:44:35
【问题描述】:

假设我有一个订单,其中列出了多个项目和一些属性,例如它们的 ID 和价格……我最初的概念涉及分别处理这些对象,并通过列出的项目和列表关联的每个订单中列出的项目order 它与共享属性相关联*作为 order_ID* 如果是这样,我如何将对象列表存储在 sql 数据库中?

【问题讨论】:

    标签: mysql mysql-python


    【解决方案1】:

    这是一个经典问题。而且,它有一个“正确”的答案。写答案是为订单中的项目创建一个单独的表格。以下是此类表的示例:

    create table OrderItems (
        OrderItemId int not null auto_increment,
        OrderId int,
        ItemId int,
        Price Money,
        CreatedBy varchar(255),
        CreatedAt timestamp
    );
    

    这种格式是一种规范化格式,意思是(简单来说)每个单独的实体都有自己的表格。 OrderItems 表本身实际上只是将订单与商品连接起来,提供了一种在订单中包含商品列表的方法。

    如果您有编程背景,可能需要一些时间和精力来适应 SQL 数据库中的规范化。将规范化数据视为一种存储数据的方式,可以提高 SQL 引擎的效率,因为它们非常擅长将不同表中的数据放在一起。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-14
      • 1970-01-01
      • 2015-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多