Я пытаюсь создать базу данных, которая имеет 2 таблицы с взаимозависимыми внешними ключами.mysql - Взаимозависимые внешние ключи
Первая таблица называется вопросами, она содержит данные по вопросам, задаваемым пользователями, а также должна содержать ключ к лучшему ответу, на который был дан ответ на вопрос. (Это должен быть внешний ключ для нашей второй таблицы под названием «Ответ»)
Вторая таблица называется «Ответ», она содержит информацию относительно ответов на вопросы, а также должна содержать поле question_id, что является ключом к вопросу о том, что этот ответ отвечает. это также внешний ключ, к первой таблице.
Когда я пытаюсь создать таблицы, он не может создать первый, так как он не знает о втором (ошибка при попытке объявить внешний ключ ко второй таблице, которая еще не существует)
Вот код, я использую:
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),
);
Как я решить эту проблему? Thanks
См. Мой ответ в аналогичном вопросе: [Каков наилучший способ вставки строк в таблицы со ссылками от 1 до 1 друг друга?] (Http://stackoverflow.com/questions/6691366/mysql-database-design -inerting-rows-in-1to1-tables/6692054 # 6692054) –