Nella mia struttura di database in SQL Server, ho 3 tipi di prodotti che richiedono informazioni diverse sull'ordine. Così, ho creato un Customerstavolo e tre differenti tabelle ordini: OrdersForProductAs, OrdersForProductBs, OrdersForProductCs. La tabella di tutti gli ordini ha una o più relazioni sulla Customerstabella.
Ho anche un altro tavolo che è Paymentse conterrà i dettagli di pagamento all'interno. Ma ho dei dubbi qui su come strutturarlo.
Poiché ho più tipi di prodotto e un cliente può avere ordini per più prodotti contemporaneamente, ho bisogno di mettere in relazione queste tre tabelle degli ordini Payments.
L'altro problema è che un cliente può avere un ordine per un solo tipo di prodotto. Quindi, le colonne FK sulla Paymentstabella devono essere nullable.
La mia domanda è se quelle nullablecolonne FK sarebbero un mal di testa per me nel lungo periodo o no? In generale, sarebbe considerato una cattiva pratica avere colonne FK nullable su una tabella?