SQL 外键语法错误
SQL Syntax error foreign key
我遇到了问题,我尝试连接 2 个数据库 table,如果我查询创建数据库结构,答案是语法错误。
我把代码贴在这里,有人可以帮我吗?
DROP TABLE IF EXISTS album;
CREATE TABLE `album` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(30) DEFAULT NULL,
`description` varchar(200) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=armscii8;
DROP TABLE IF EXISTS picture;
CREATE TABLE `picture` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`id_album` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (`id_album`) REFERENCES album(id)
) ENGINE=InnoDB DEFAULT CHARSET=armscii8;
抱歉我的英语不好。
认为您的 id_album
必须有 bean unsigned
,与 album
中的 id
相同
只需在外键行中添加 Unsigned 如下:
DROP TABLE IF EXISTS album;
CREATE TABLE `album` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(30) DEFAULT NULL,
`description` varchar(200) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=armscii8;
DROP TABLE IF EXISTS picture;
CREATE TABLE `picture` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`id_album` int(11) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (`id_album`) REFERENCES album(id)
) ENGINE=InnoDB DEFAULT CHARSET=armscii8;
我遇到了问题,我尝试连接 2 个数据库 table,如果我查询创建数据库结构,答案是语法错误。
我把代码贴在这里,有人可以帮我吗?
DROP TABLE IF EXISTS album;
CREATE TABLE `album` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(30) DEFAULT NULL,
`description` varchar(200) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=armscii8;
DROP TABLE IF EXISTS picture;
CREATE TABLE `picture` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`id_album` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (`id_album`) REFERENCES album(id)
) ENGINE=InnoDB DEFAULT CHARSET=armscii8;
抱歉我的英语不好。
认为您的 id_album
必须有 bean unsigned
,与 album
id
相同
只需在外键行中添加 Unsigned 如下:
DROP TABLE IF EXISTS album;
CREATE TABLE `album` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(30) DEFAULT NULL,
`description` varchar(200) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=armscii8;
DROP TABLE IF EXISTS picture;
CREATE TABLE `picture` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`id_album` int(11) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (`id_album`) REFERENCES album(id)
) ENGINE=InnoDB DEFAULT CHARSET=armscii8;