Sto definendo un database per un cliente/sistema di ordini in cui ci sono due tipi distinti di clienti. Perché sono così diversi che avere una sola tabella clienti sarebbe molto brutta (sarebbe piena di colonne nulle perché sono inutili per un tipo).Più chiavi esterne a una singola colonna
I loro ordini sono nello stesso formato. È possibile avere una colonna CustomerId
nella mia tabella degli ordini che ha una chiave esterna per entrambi i tipi di clienti? L'ho configurato su SQL server e non mi hanno dato problemi creando le relazioni, ma devo ancora provare a inserire i dati.
Inoltre, sto pianificando di utilizzare nHibernate come ORM, potrebbero esserci dei problemi introdotti effettuando le relazioni in questo modo?
D'accordo. La normalizzazione è la chiave qui. – jva
@Guffa: -1 perché "No, non è possibile avere un singolo campo come chiave esterna a due tabelle diverse": questa istruzione non è corretta (almeno su SQL Server 2005). Dagli un giro. – Liao
@Liao: Non penso che tu capisca la situazione ... Se per esempio hai il valore della chiave esterna 42, come faresti a sapere se è la chiave nella tabella A o nella tabella B? – Guffa