在SQL Server的数据库结构中,我有3种类型的产品,它们需要有关订单的不同信息。所以,我创建了一个Customers桌子,三个不同的顺序表:OrdersForProductAs,OrdersForProductBs,OrdersForProductCs。所有订单表在表上都有一对多的关系Customers。
我还有另一个表格,Payments里面将保存付款明细。但是我在这里对如何组织感到怀疑。
因为我有多种产品类型,并且一个客户可能同时具有多个产品的订单,所以我需要将这三个订单表与Payments表相关联。
另一个问题是,客户只能订购一种产品。因此,表上的FK列Payments需要为nullable。
我的问题是nullable,从长远来看,那些FK色谱柱是否会让我头疼?一般来说,在表上具有可空的FK列是否会被视为不好的做法?