微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将外键保存在订单数据库中的良好做法

如何解决将外键保存在订单数据库中的良好做法

将外键存储在orders数据库中是否是一种好习惯? 并使用填充来检索对象信息?

在我们的开发环境中,我们使用NodeJ和MongoDB并使用猫鼬进行连接。猫鼬可以自动填充产品详细信息。

但是当产品被删除时,订单被弄乱了。

让我举例说明

{
    id: 'ORDER0001',customer: 'John Smith',products: [
           {
              productid: "45645849",qty: 1,total: 550    
           }
           {
              productid: "1234895468",qty:2,total: 1000
           }
    ]
} 

填充后,它变为:

{
    id: 'ORDER0001',products: [
           {
              productid: {
                  id: "45645849",name: "HP Notebook XYZ"
                  price: 550,desc: "Bla bla bla..."
              },total: 550    
           }
           {
              productid: {
                  id: "1234895468",name: "LG 32 Monitor"
                  price: 500,total: 1000
           }
    ]
} 

看起来不错。但是,当数据库变大时,我们也可以信任猫鼬吗?目前,我对此表示怀疑,并在思考未来。也许将产品名称存储为产品数组中的字段。为了获得性能

保存到数据库中是否有好的做法?

你们是怎么做到的?谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。