0

我正在使用 MySQL Workbench,我刚刚在我的 MySQL 模型中添加了一个新表。当我尝试与数据库同步时,出现以下错误:

Executing SQL script in server
ERROR: Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') )
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_general_ci' at line 5

CREATE  TABLE IF NOT EXISTS `NAW`.`HTML` (
   `ID` INT(11) NOT NULL AUTO_INCREMENT ,
    `HTML` LONGTEXT NULL DEFAULT NULL ,
    PRIMARY KEY (`ID`) ,
    SPATIAL INDEX () 
)   ENGINE = InnoDB
    DEFAULT CHARACTER SET = utf8
    COLLATE = utf8_general_ci

SQL script execution finished: statements: 3 succeeded, 1 failed

如果有人看到出了什么问题,那就太好了!

4

3 回答 3

2

试试这个。

CREATE  TABLE IF NOT EXISTS `NAW`.`HTML` (   
   `ID` INT(11) NOT NULL AUTO_INCREMENT ,
    `HTML` LONGTEXT NULL DEFAULT NULL ,
    PRIMARY KEY (`ID`) ,
    SPATIAL INDEX (`ID`) 
)   ENGINE = MyISAM 
    DEFAULT CHARACTER SET = utf8
    COLLATE = utf8_general_ci
于 2013-03-13T11:00:47.657 回答
1

您目前(5.6)不能将空间索引与 innoDb 引擎一起使用,而是使用 MyISam 引擎。但是,从 5.0.6 开始,您可以将空间数据类型与 InnoDb 一起使用

于 2013-03-13T11:15:40.663 回答
0

您应该=从字符设置中删除标志。

CREATE  TABLE IF NOT EXISTS `NAW`.`HTML` (
  `ID` INT(11) NOT NULL AUTO_INCREMENT,
  `HTML` LONGTEXT NULL DEFAULT NULL,
  PRIMARY KEY (`ID`),
  SPATIAL INDEX ())
ENGINE = MyISAM
DEFAULT CHARACTER SET 'utf8'
COLLATE 'utf8_general_ci'
于 2013-03-13T11:02:19.580 回答