Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Erro MySql:#105 (Código 150). Quando crio meu esquema de banco de dados, recebo um código de erro de 150.


Você só pode criar uma chave estrangeira em uma tabela que faça referência a uma chave em outra tabela. Este problema específico é que memberid não é uma chave em nenhum dos groupmembers ou rolemembers mesas. Basta adicionar KEY (memberid) para essas mesas e você estará pronto para ir.

Outra questão é que os tipos de chave estrangeira devem corresponder. eventgroup tem groupid varchar , mas está referenciando os groups tabela, que tem groupid INT . Corrija isso.

Quanto às sugestões, recomendo fortemente que cada chave primária seja apenas uma coluna:sua chave substituta de incremento automático. Você deve fazer esses inteiros sem sinal também.