Estoy tratando de crear una base de datos, que tiene 2 tablas con claves foráneas mutuamente dependientes.mysql - Claves foráneas mutuamente dependientes
La primera tabla recibe el nombre de preguntas, contiene datos sobre las preguntas formuladas por los usuarios y también debe contener una clave para la mejor respuesta que fue respondida en la pregunta. (Esta debe ser una clave externa a nuestra segunda tabla denominada Respuesta)
La segunda tabla se llama Respuesta, contiene información sobre las respuestas a las preguntas y también debe contener un campo question_id, que es la clave de la pregunta que esta respuesta responde. esto también es una clave externa, a la primera tabla.
Cuando trato de crear las tablas, no puede crear la primera, ya que no es consciente de la segunda (de error cuando tratamos de declarar la clave externa a la segunda tabla que no existe aún)
Aquí está el código que estoy utilizando:
create table question
(q_id numeric(10,0),
best_a_id numeric(10,0),
primary key(q_id),
foreign key (best_a_id) references answer(a_id),
);
create table answer
(a_id numeric(10,0),
q_id numeric(10,0) not null,
primary key(a_id),
foreign key (q_id) references question(q_id),
);
¿Cómo puedo solucionar este problema? Gracias
Consulte mi respuesta en una pregunta similar: [¿Cuál es la mejor manera de insertar filas en tablas con referencias 1 a 1 de cada una?] (Http://stackoverflow.com/questions/6691366/mysql-database-design -inserting-rows-in-1to1-tables/6692054 # 6692054) –