外部キーが交差した2つのテーブルを作成しようとしていますが、作成時に存在しないテーブルを参照することはできません。mysql用にこのようなテーブルを作成する方法はありますか?両方のテーブルを同時に宣言したり、外部キーの評価を遅らせたりするような方法はありますか?
エラーは1005です:mysql 5.0でテーブルblocks.frm(errno 150)を作成できません
SQL:
create table if not exists blocks(
id int unsigned not null auto_increment,
title varchar(100),
defaultpage int unsigned not null,
foreign key(defaultpage) references pages(pageID),
primary key(id)) engine=innodb;
create table if not exists pages(
pageID int unsigned not null auto_increment,
title varchar(50) not null,
content blob,
blockid int unsigned not null,
foreign key(blockid) references block(id),
primary key(pageID) ) engine=innodb;
問題を解決する適切な方法は何ですか?