私はphpmyadminの中で構文でテーブルを作成しました:、SQL外部キー
"#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TYPE=INNODB' at line 11 "
私はテーブルを作成の最後にTYPE = INNODBを削除する場合:
DROP TABLE IF EXISTS users;
DROP TABLE IF EXISTS info;
CREATE TABLE users (
user_id int unsigned NOT NULL auto_increment,
email varchar(100) NOT NULL default '',
pwd varchar(32) NOT NULL default '',
isAdmin int(1) unsigned NOT NULL,
PRIMARY KEY (user_id)
) TYPE=INNODB;
CREATE TABLE info (
info_id int unsigned NOT NULL auto_increment,
first_name varchar(100) NOT NULL default '',
last_name varchar(100) NOT NULL default '',
address varchar(300) NOT NULL default '',
zipcode varchar(100) NOT NULL default '',
personal_phone varchar(100) NOT NULL default '',
mobilephone varchar(100) NOT NULL default '',
faxe varchar(100) NOT NULL default '',
email2 varchar(100) NOT NULL default '',
country varchar(100) NOT NULL default '',
sex varchar(1) NOT NULL default '',
birth varchar(1) NOT NULL default '',
email varchar(100) NOT NULL default '',
PRIMARY KEY (info_id),
FOREIGN KEY (email) REFERENCES users(email) ON UPDATE CASCADE ON DELETE CASCADE
) TYPE=INNODB;
をしかし、エラーを示してい
"#1005 - Can't create table 'curriculo.info' (errno: 150) ".
だと思います"#1005 - テーブル 'curriculo.info'(errno:150)を作成できません"というエラーメッセージが表示され続けます –
おそらく、あなたに 'UNIQUE KEY(電子メール)'がないので、 'users'テーブルにあります。 –
はい、それでした!ありがとう –