mysql#1005 - 无法创建表'xxx.house_auctions'(错误号:150)(详情...)

时间:2016-01-17 15:51:32

标签: mysql

我不知道为什么会发生这种错误。下面是我使用的表链。我不认为这应该是太难了。非常感谢我能得到的所有帮助。

mysql#1005 - 无法创建表'xxx.house_auctions'(错误号码:150)(详情......)

CREATE TABLE IF NOT EXISTS `players` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `group_id` int(11) NOT NULL DEFAULT '1',
  `account_id` int(11) NOT NULL DEFAULT '0',
  `level` int(11) NOT NULL DEFAULT '1',
  `vocation` int(11) NOT NULL DEFAULT '0',
  `health` int(11) NOT NULL DEFAULT '150',
  `healthmax` int(11) NOT NULL DEFAULT '150',
  `experience` bigint(20) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `name` (`name`),
  KEY `vocation` (`vocation`)
) ENGINE=InnoDB;


CREATE TABLE IF NOT EXISTS `houses` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `owner` int(11) NOT NULL,
  `paid` int(10) unsigned NOT NULL DEFAULT '0',
  `warnings` int(11) NOT NULL DEFAULT '0',
  `name` varchar(255) NOT NULL,
  `rent` int(11) NOT NULL DEFAULT '0',
  `town_id` int(11) NOT NULL DEFAULT '0',
  `bid` int(11) NOT NULL DEFAULT '0',
  `bid_end` int(11) NOT NULL DEFAULT '0',
  `last_bid` int(11) NOT NULL DEFAULT '0',
  `highest_bidder` int(11) NOT NULL DEFAULT '0',
  `size` int(11) NOT NULL DEFAULT '0',
  `beds` int(11) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  KEY `owner` (`owner`),
  KEY `town_id` (`town_id`)
) ENGINE=InnoDB;


CREATE TABLE IF NOT EXISTS `house_auctions` (
  `house_id` INT UNSIGNED NOT NULL,
  `player_id` INT NOT NULL,
  `bid` INT UNSIGNED NOT NULL DEFAULT 0,
  `limit` INT UNSIGNED NOT NULL DEFAULT 0,
  `endtime` BIGINT UNSIGNED NOT NULL DEFAULT 0,
  PRIMARY KEY (`house_id`,`player_id`),
  FOREIGN KEY (`house_id`) REFERENCES `houses` (`id`) ON DELETE CASCADE,
  FOREIGN KEY (`player_id`) REFERENCES `players` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB;

1 个答案:

答案 0 :(得分:1)

我认为house_auctions列的类型与您要引用的列不同。试试这个(注意 INT(11)而不是 INT UNSIGNED ):

.sks