尝试插入SQL子句时出现语法错误

4

I'm getting this error:

 CREATE TABLE `libro`
 (
 `id` INTEGER  NOT NULL AUTO_INCREMENT,
 `autor_id` INTEGER(11),
 `titulo` VARCHAR(255),
 `paginas` VARCHAR(255)  NOT NULL,
 PRIMARY KEY (`id`),
 INDEX `libro_FI_1` (`autor_id`),
 CONSTRAINT `libro_FK_1`
 FOREIGN KEY (`autor_id`)
 REFERENCES `autor` (`id`)
 )Type=InnoDB
[propel-sql-exec] SQLSTATE[42000]: Syntax error or access violation: 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 'Type=InnoDB' at line 12

有什么想法吗?
敬礼,
Javi

是在PRIMARY KEYINDEX之后需要逗号,还是在CONSTRAINTFOREIGN KEY之后不需要逗号? - FreeAsInBeer
2个回答

5

不应该是ENGINE=InnoDB吗?


1

使用 ENGINE 代替 Type

 CREATE TABLE `libro`
 (
  `id` INTEGER  NOT NULL AUTO_INCREMENT,
  `autor_id` INTEGER(11),
  `titulo` VARCHAR(255),
  `paginas` VARCHAR(255)  NOT NULL,
  PRIMARY KEY (`id`),
  INDEX `libro_FI_1` (`autor_id`),
  CONSTRAINT `libro_FK_1`
  FOREIGN KEY (`autor_id`)
  REFERENCES `autor` (`id`)
 )ENGINE=InnoDB

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接