Ho 3 tabelle. Una tabella di base, chiamiamola Tabella A e due tabelle che fanno riferimento alla Tabella A, chiamale Tabella X e Tabella Y. Sia X che Y hanno una contraint chiave esterna che fa riferimento alla Tabella A. Anche la Chiave esterna di X e Y è la loro propria Chiave primaria.Un vincolo che consente solo a una delle due tabelle di fare riferimento a una tabella di base
Mi piacerebbe sapere se è possibile aggiungere un vincolo che consentirà solo a una di queste tabelle di contenere un recrod che fa riferimento alla Tabella A. Quindi se X ha un record che fa riferimento a A allora Y non può avere uno e se Y ha un record che fa riferimento a A, allora X non può averne uno.
È possibile?
Grazie,
Sarei curioso del tuo caso d'uso. C'è qualcosa di interessante sulla tua struttura. Hai 3 chiavi primarie usando lo stesso valore chiave. – NullRef
Sì, sono tre tabelle per la memorizzazione degli account utente. Esistono due tipi di account. Quindi esiste una tabella di base che contiene informazioni comuni a entrambi i tipi di account e quindi una tabella per ogni tipo di account che contiene informazioni specifiche per quel tipo di account. Quindi il PK per ogni tabella è l'ID utente perché ho pensato che questo avrebbe reso le cose coerenti e rendere facile l'accesso a un record tramite UserID. –