在执行以下查询时,出现错误,说明第9行附近出现语法错误。由于我使用的是mysql工作台,因此我无法弄清楚什么可能是错误的:mysql语法错误
CREATE TABLE IF NOT EXISTS `proquotes`.`thquotes` (
`idQuotes` INT NOT NULL AUTO_INCREMENT ,
`vAuthorID` VARCHAR(8) CHARACTER SET 'utf8' NOT NULL ,
`vAuthor` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL ,
`cQuotes` MEDIUMTEXT CHARACTER SET 'utf8' NOT NULL ,
`cArabic` MEDIUMTEXT CHARACTER SET 'utf8' NOT NULL ,
`vReference` VARCHAR(100) CHARACTER SET 'utf8' NOT NULL ,
PRIMARY KEY (`idQuotes`) ,
INDEX `vAuthorID`() ,
CONSTRAINT `vAuthorID`
FOREIGN KEY()
REFERENCES `proquotes`.`author_info`()
ON DELETE NO ACTION
ON UPDATE NO ACTION)
DEFAULT CHARACTER SET = utf8;
表author_info:
CREATE TABLE IF NOT EXISTS `proquotes`.`author_info` (
`vAuthorID` INT NOT NULL , `vAuthor` VARCHAR(45) CHARACTER
SET 'utf8' NOT NULL , `nQuotes` INT NOT NULL , PRIMARY KEY
(`vAuthorID`) , UNIQUE INDEX `vAuthorID_UNIQUE` (`vAuthorID`
ASC))DEFAULT CHARACTER SET = utf8;
我做到了。现在它说:'错误1005:无法创建表'proquotes.thquotes'(errno:150)' – input 2010-04-09 17:49:29
@fusion:你使用的是什么MySQL版本?您可能需要在'author_info.vAuthorID'上手动创建一个索引。资料来源:http://forums.mysql.com/read.php?22,19755,19755#msg-19755 – 2010-04-09 17:56:04
@fusion:...否则,它可能是'author_info.vAuthorID'不是完全相同的数据类型作为'thquotes.vAuthorID'。来源:http://www.devdaily.com/blog/post/mysql/mysql-error-1005-hy000 – 2010-04-09 17:58:24