我使用 phpmyadmin 中的语法创建表:
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;
但显示错误:
“#1064 - 您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,以在第 11 行的 'TYPE=INNODB' 附近使用正确的语法”
如果我在创建表的末尾删除 TYPE=INNODB ,它将显示错误:
“#1005 - 无法创建表 'curriculo.info' (errno: 150)”。