sql >> Database >  >> Database Tools >> phpMyAdmin

Samengestelde beperking voor externe sleutels via PhpMyAdmin?

Ik kwam net een soortgelijk probleem tegen bij het opzetten van een samengestelde externe sleutel in phpMyAdmin en misschien kan mijn oplossing u ook helpen.

Dit is mijn opstelling:

Zoals je kunt zien heb ik een samengestelde primaire sleutel in mijn ConferenceRoom-tabel, waarvan een deel ook een externe sleutel is naar streetaddress in tabel Office (dit kan afwijken van uw probleem).

Er moet naar deze samengestelde primaire sleutel worden verwezen door een samengestelde externe sleutel in de tabel InstPicture, maar het probleem voor mij was dat, ondanks dat ik beide als primaire sleutelindexen had gedefinieerd, phpMyAdmin alleen zou verwijzen naar de name kolom in de primaire sleutel van ConferenceRoom, en niet het office_streetaddress kolom.

Wat ik hier miste was dat ik de relatie tussen ConferenceRoom en Office niet eerder had opgezet probeert die tussen ConferenceRoom en InstPicture in te stellen. Ik denk dat ik vergat eerst met de sterke entiteiten om te gaan, zoals de databasemethodologie dicteert.

Toen de relatie tussen ConferenceRoom en Office was gedefinieerd, werd het office_streetaddress kolom verscheen in de lijst met geïndexeerde kolommen en kan worden verwezen door het conferenceroom_office_streetaddress kolom in tabel InstPicture.

Ik hoop dat dit u ook kan helpen, probeer misschien een aparte index te maken voor uw Log.Service-kolom. Of als dat een FK is, stel de relaties in en probeer het opnieuw.




  1. Bouw uw rapport stap voor stap op

  2. SQL Server:wijzig het identiteitszaad

  3. PhpMyAdmin automatisch vernieuwen MySQL-tabel

  4. Wachtwoord gewijzigd in phpMyAdmin op een Mac met XAMPP, nu geen toegang tot localhost/phpmyadmin