1064 - 您的SQL语法有错误(没有最后一行逗号)

时间:2016-06-17 08:58:49

标签: phpmyadmin

我正在导出我的localhost数据库,因此我可以将其上传到网站主机。

在网站主机上导入后,我收到此错误:

Error
SQL query:

CREATE TABLE IF NOT EXISTS  `achievements` (

 `no` INT NOT NULL AUTO_INCREMENT COMMENT  'delete me though',
 `MyID` INT( 5 ) DEFAULT NULL COMMENT AS  `my id:` ,
 `MyAch` INT( 5 ) DEFAULT NULL COMMENT AS  `my achievement` ,
 `Date` VARCHAR( 11 ) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT AS  `awarded on:` ,
PRIMARY KEY (  `no` )
) ENGINE = MYISAM AUTO_INCREMENT =45 DEFAULT CHARSET = utf8 COLLATE = utf8_unicode_ci;

MySQL said: Documentation

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'AS `my id:`,
  `MyAch` int(5) DEFAULT NULL COMMENT AS `my achievement`,
  `Date`' at line 3 

这是它所谈论的领域:

DROP TABLE IF EXISTS `achievements`;
CREATE TABLE IF NOT EXISTS `achievements` (
  `no` int(4) NOT NULL AUTO_INCREMENT COMMENT 'delete me though',
  `MyID` int(5) DEFAULT NULL COMMENT AS `my id:`,
  `MyAch` int(5) DEFAULT NULL COMMENT AS `my achievement`,
  `Date` varchar(11) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT AS `awarded on:`,
  PRIMARY KEY (`no`)
) ENGINE=MyISAM AUTO_INCREMENT=45 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

所有其他问题都提到最后一行有逗号,但我没有。

你知道出了什么问题吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

  1. 将评论的后方刻度更改为单引号
  2. COMMENT AS的实例更改为COMMENT
  3. 您应该可以直接在phpMyAdmin的SQL选项卡中执行以下操作而不会出现错误:

    DROP TABLE IF EXISTS `achievements`;
    CREATE TABLE IF NOT EXISTS `achievements` (
      `no` int(4) NOT NULL AUTO_INCREMENT COMMENT 'delete me though',
      `MyID` int(5) DEFAULT NULL COMMENT 'my id:',
      `MyAch` int(5) DEFAULT NULL COMMENT 'my achievement',
      `Date` varchar(11) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'awarded on:',
      PRIMARY KEY (`no`)
    ) ENGINE=MyISAM AUTO_INCREMENT=45 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    

    如果可以,但在导出/导入后仍然遇到问题,那么问题可能是在本地服务器或webhost上使用的phpMyAdmin版本中的错误。例如,请参阅https://github.com/phpmyadmin/phpmyadmin/issues/12076,其中使用DEFAULT NULL向导出的文件中引入了错误的语法。