sql >> Database >  >> RDS >> Mysql

MySql-fout:#105 (code 150). Wanneer ik mijn databaseschema aanmaak, ontvang ik een foutcode van 150.

U kunt alleen een externe sleutel maken voor één tabel die verwijst naar een sleutel in een andere tabel. Dit specifieke probleem is dat memberid is geen sleutel voor groupmembers of rolemembers tafels. Voeg eenvoudig KEY (memberid) toe naar die tafels en je bent klaar om te gaan.

Een ander probleem is dat buitenlandse sleuteltypen moeten overeenkomen. eventgroup heeft groupid varchar , maar verwijst naar de groups tabel, die groupid INT . heeft . Corrigeer dit.

Wat betreft suggesties, raad ik ten zeerste aan dat elke primaire sleutel slechts één kolom is:uw surrogaatsleutel voor automatisch verhogen. U moet deze niet-ondertekende gehele getallen ook maken.




  1. Oracle - Hoe krijg ik de werkelijke grootte van een specifieke RIJ?

  2. Intel Xeon schaalbare processors en SQL Server 2017

  3. Python 2.7-verbinding met Oracle:verlies van (Poolse) tekens

  4. ik wil het totale aantal gebruikers van de gegeven verwijzings-ID's in de tabel ophalen