Ik kan geen manier bedenken om dit te doen met standaard MySQL.
Je zou een plug-in kunnen schrijven voor MySQL Proxy , dat de referentiële integriteit tussen de bovenliggende en onderliggende tabellen op verschillende servers beheert:
-
Onderschep
INSERTenUPDATEtegen kindertafel. Query voor overeenkomende rij in bovenliggende tabel. MisluktINSERT/UPDATEals er geen overeenkomst is gevonden in de bovenliggende tabel. -
Onderschep
DELETEtegen bovenliggende tafel. Vraag naar afhankelijke rijen in onderliggende tabel. MisluktDELETEals er afhankelijke rijen zijn gevonden in de onderliggende tabel. Als de beperking bedoeld is om trapsgewijze gedrag te ondersteunen, doe dat dan in plaats van te falen. -
Onderschep
UPDATEtegen bovenliggende tafel. Als de waarde van de primaire sleutel verandert als onderdeel van de update, zoekt u naar afhankelijke rijen in de onderliggende tabel. MisluktUPDATEals er afhankelijke rijen zijn gevonden in de onderliggende tabel. Als de beperking bedoeld is om trapsgewijze gedrag te ondersteunen, doe dat dan in plaats van te falen.
Houd er rekening mee dat u informatie over de referentiële integriteitsbeperkingen in uw MySQL Proxy-plug-in moet bewaren (of een aangepast configuratiebestand voor uw plug-in moet schrijven waarin de relaties worden vastgelegd). U kunt geen conventionele FOREIGN KEY . gebruiken syntaxis om dergelijke beperkingen in MySQL-instanties aan te geven.