【问题标题】:Syntax error trying to insert an SQL clause [duplicate]尝试插入 SQL 子句的语法错误 [重复]
【发布时间】:2011-07-31 01:25:24
【问题描述】:

我收到此错误:

 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

有什么想法吗?

问候

贾维

【问题讨论】:

  • PRIMARY KEYINDEX后面的逗号,还是CONSTRAINTFOREIGN KEY后面没有逗号?

标签: mysql


【解决方案1】:

不应该是ENGINE=InnoDB吗?

【讨论】:

    【解决方案2】:

    使用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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-25
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 2013-07-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多