Oracle
 sql >> Database >  >> RDS >> Oracle

C'è una differenza tra chiave surrogata, chiave sintetica e chiave artificiale?

Chiave surrogata, chiave sintetica e chiave artificiale sono sinonimi. La chiave tecnica è un'altra. Significano tutti "chiave primaria che non ha un significato commerciale". Sono distinti dalle chiavi naturali o aziendali che hanno un significato al di là del sistema in questione.

Ad esempio, considera l'account utente SO. Siamo identificati da due chiavi. La chiave naturale è l'identificatore che utilizziamo per accedere a questo sito, come il nostro nome OpenID. Ma poiché queste cose sono stringhe lunghe e ingombranti (e poiché SO ci consente di scegliere tra diverse opzioni di accesso), il database ci identifica tramite un ID utente che è un numero generato. Quell'ID utente è una chiave sintetica/surrogata/artificiale.