错误代码:
Error Code : 1168
Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
出现这样的错误原因是:
表结构不一样或者表字段没有包含varchar类型。
如:
CREATE TABLE `website0001` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`siteBigType` int(11) DEFAULT NULL,
`siteSmallType` int(11) DEFAULT NULL,
`siteWorth` varchar(15) DEFAULT '0' COMMENT '网站价值',
`date` date DEFAULT NULL,
PRIMARY KEY (`id`)
)ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC
CREATE TABLE `website0001` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`siteBigType` int(11) DEFAULT NULL,
`siteSmallType` int(11) DEFAULT NULL,
`siteWorth` varchar(15) DEFAULT '0' COMMENT '网站价值',
`date` date DEFAULT NULL,
PRIMARY KEY (`id`)
)ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC
CREATE TABLE `allwebsite` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`siteBigType` int(11) DEFAULT NULL,
`siteSmallType` int(11) DEFAULT NULL,
`siteWorth` varchar(15) DEFAULT '0' COMMENT '网站价值',
`date` date DEFAULT NULL,
index(`id`)
)ENGINE=MERGE UNION=(website0001,website0002) INSERT_METHOD=LAST AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
如果我把siteWorth字段类型换成int,那么就会出现该错误。这个是让我想不通的。也是比较难找的错误原因。因为从表面上,表结构都是一样了。怎么还会报错误。
--转自