tabela de alteração de erro, adição de chave estrangeira de restrição ao obter erro "Não é possível adicionar ou atualizar uma linha filho"
mysql> DESCRIBE questions;
+----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+----------------+
| id | int(255) | NO | PRI | NULL | auto_increment |
| question | varchar(255) | NO | | NULL | |
| type | char(1) | YES | | NULL | |
+----------+--------------+------+-----+---------+----------------+
mysql> DESCRIBE answers;
+--------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+----------------+
| id | int(255) | NO | PRI | NULL | auto_increment |
| answer | varchar(255) | NO | | NULL | |
| questionid | int(255) | NO | | NULL | |
| questions_id | int(255) | NO | | NULL | |
+--------------+--------------+------+-----+---------+----------------+
Estou usando esta declaração:
ALTER TABLE responde ADD FOREIGN KEY (questions_id) REFERENCES perguntas (id);
mas eu recebo este erro:
ERRO 1452 (23000): Não é possível adicionar ou atualizar uma linha filho: uma restrição de chave estrangeira falha (surveydb
.#sql-df_32
, RESTRIÇÃO#sql-df_32_ibfk_1
CHAVE ESTRANGEIRA (questions_id
) REFERÊNCIASquestions
(id
)) para a versão do servidor MySQL para a sintaxe correta a ser usada perto de 'DESCREBE questions' na linha 1