我通过PhpMyAdmin从我的托管服务VPS导出Drupal网站的数据库到我的本地计算机,该计算机与Fedora 23工作站一起使用。我做了一些修改(通过Drupal,而不是直接在数据库上)然后将它从我的本地计算机(PhpMyAdmin 4.5.5.1; 10.0.23-MariaDB)导出到VPS(PhpMyAdmin 4.0.10.7; 5.5.42-cll) 并收到以下错误消息:
Requête SQL:
--
-- Base de données : `achlaltn_monhuv`
--
-- --------------------------------------------------------
--
-- Structure de la table `actions`
--
CREATE TABLE IF NOT EXISTS `actions` (
`aid` varchar( 255 ) NOT NULL DEFAULT '0' COMMENT
);
MySQL a répondu: Documentation
#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 ')' at line 13
原始表创建查询是:
CREATE TABLE IF NOT EXISTS `actions` (
`aid` varchar(255) NOT NULL DEFAULT '0' COMMENT 'Primary Key: Unique actions ID.',
`type` varchar(32) NOT NULL DEFAULT '' COMMENT 'The object that that action acts on (node, user, comment, system or custom types.)',
`callback` varchar(255) NOT NULL DEFAULT '' COMMENT 'The callback function that executes when the action runs.',
`parameters` longblob NOT NULL COMMENT 'Parameters to be passed to the callback function.',
`label` varchar(255) NOT NULL DEFAULT '0' COMMENT 'Label of the action.',
PRIMARY KEY (`aid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Stores action information.';
我读到PhpMyAdmin不会直接创建主键,但稍后会更改表(PhpMyAdmin export does not include PRIMARY KEY as mysqldump)。但它似乎与问题无关,因为错误消息是语法错误。
有什么想法吗?
答案 0 :(得分:0)
这似乎与最近针对当前版本4.6.0修复的phpMyAdmin中的错误有关。该错误导致导入和导出带有注释的表格存在一些问题,虽然我还没有看到确切的问题,但是您看到的机会非常好,它已在当前版本中得到修复。我建议你从4.5.5.1升级到4.6.0再试一次。
从根本上说,导入问题是COMMENT
语句后面没有实际注释,但是你错过了表结构的其余部分,所以首先尝试升级并查看是否能解决问题。