【发布时间】:2011-10-09 11:51:32
【问题描述】:
错误号:1005
无法创建表 'pyro_urbfot.default_wishlist' (errno: 150)
CREATE TABLE IF NOT EXISTS `default_wishlist` (
`id` int(8) unsigned NOT NULL auto_increment,
`uid` int(11) NOT NULL,
`position` int(8) unsigned NOT NULL default '0',
`url` varchar(30),
`text` varchar(255) collate utf8_unicode_ci NOT NULL default '',
`dt_added` timestamp NOT NULL default CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
KEY `position` (`position`),
KEY `uid` (`uid`),
FOREIGN KEY (`uid`)
REFERENCES `default_users`(`id`)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
【问题讨论】:
-
default_users的定义是什么样的?那张桌子肯定存在吗? -
@MartinSmith - 感谢您的关注 - 它肯定存在,我不会指望这是问题所在,因为 default_users 是 CMS 的核心,我正在尝试将我的愿望清单模块集成到.我确实将 uid 更改为 smallint(5),就像 default_users 中的 (id) 一样,但这并没有改变任何东西
-
那么在这种情况下检查该表中
id的数据类型。 -
@MartinSmith - 你是对的,存在差异,但不幸的是,我将 uid 更改为 smallint(5),就像 default_users 中的 (id) 一样,但这并没有改变任何内容跨度>
-
有符号和无符号的呢?
标签: mysql sql foreign-keys innodb