sql >> Database >  >> RDS >> Mysql

Is het mogelijk om naar één kolom te verwijzen als meerdere externe sleutels?

Nee.

Dat wil zeggen, u kunt op deze manier geen externe sleutelbeperking maken. U kunt echter een externe sleutel gebruiken zonder een beperking voor een externe sleutel.

Het enige wat een externe sleutel is, is de waarde van de primaire sleutel van een andere tabel (of een ander record in dezelfde tabel), die in joins kan worden gebruikt. U kunt zelfs verwijzen naar andere velden dan de primaire sleutel, als u alleen de waarde voor joins hoeft te gebruiken.

Een externe-sleutelbeperking vertelt de database echter om de regel af te dwingen dat voor elke externe-sleutelwaarde in een tabel, de tabel waarnaar wordt verwezen een record heeft met dat als primaire sleutel. Afdwingen dat elke externe sleutel in de PDF-tabel een primaire sleutel had IN ALLE VIER TABELLEN zal niet werken voor jou. Dus ga je gang en gebruik het veld om naar andere records te verwijzen, maar creëer gewoon geen externe sleutelbeperking.



  1. UID – Retourneer de ID van de huidige sessie in Oracle

  2. Tellen op basis van voorwaarde in SQL Server

  3. Oracle pl-sql escape-teken (voor een ' )

  4. Oracle FOR LOOP REVERSE Voorbeeld