sql >> Database >  >> RDS >> Oracle

Is er een verschil tussen surrogaatsleutel, synthetische sleutel en kunstmatige sleutel?

Surrogaatsleutel, synthetische sleutel en kunstmatige sleutel zijn synoniemen. Technische sleutel is een andere. Ze betekenen allemaal "primaire sleutel die geen zakelijke betekenis heeft". Ze onderscheiden zich van natuurlijke of zakelijke sleutels die een betekenis hebben die verder gaat dan het systeem in kwestie.

Denk bijvoorbeeld aan het SO-gebruikersaccount. We worden geïdentificeerd door twee sleutels. De natuurlijke sleutel is de identificatie die we gebruiken om in te loggen op deze site, zoals onze OpenID-naam. Maar omdat dit lange, logge strings zijn (en omdat SO ons de keuze geeft uit verschillende login-opties), identificeert de database ons met een gebruikers-ID, een gegenereerd nummer. Die UserID is een synthetische/surrogaat/kunstmatige sleutel.




  1. Als EXPLAIN wordt uitgevoerd en de veldwaarde voor sleutel niet null is maar Extra leeg is, wordt de sleutel dan gebruikt?

  2. SOLR DataImport-fout kan query niet uitvoeren

  3. Toon gegevens op basis van geselecteerde id in modaal pop-upvenster na klik op een knop php mysql

  4. Automatisch verhogen met slaapstand