phpmyadmin MariaDb 更改表语法错误
Posted
技术标签:
【中文标题】phpmyadmin MariaDb 更改表语法错误【英文标题】:phpmyadmin MariaDb Alter table syntax error 【发布时间】:2016-04-08 07:47:37 【问题描述】:在尝试使用内置的“移动列”功能时,我遇到了 phpmyadmin(4.5.3.1,Ubuntu 14.04 + MariaDb 10.0.23)的问题。
我的数据库是“UTF8
”和“COLLATE utf8_swedish_ci
”。
尝试移动 varchar 列会引发此错误:
"#1064 - 您的 SQL 语法有错误;请查看手册 对应于您的 MariaDB 服务器版本,以便使用正确的语法 在 '=utf8 COLLATE utf8_swedish_ci NULL DEFAULT NULL AFTER `Stam`' 附近 第 1 行"
似乎 phpmyadmin 没有创建正确的查询语法 "DEFAULT CHARACTER SET 'utf8' ".
我可以通过任何方式更正生成的 SQL 查询吗?
新信息:
我正在尝试移动表中的一些列(使用 phpmyadmin 的内置功能)。最大的问题是这个错误也停止使用结构选项卡中的按钮添加新列/更改列。 问题似乎是 phpmyadmin 自动生成的“CHARSET=utf8”语法;删除“=”(...CHARSET utf8...)后运行相同的查询就可以了。
例如: phpmyadmin 生成的这个查询失败:
ALTER TABLE lepidoptera0
ADD underavdelning
VARCHAR(40) CHARSET=utf8 COLLATE utf8_swedish_ci NULL DEFAULT NULL AFTER avdelning
;
修改后的版本(减号“=”)就OK了:
ALTER TABLE lepidoptera0
ADD underavdelning
VARCHAR(40) CHARSET utf8 COLLATE utf8_swedish_ci NULL DEFAULT NULL AFTER avdelning
;
【问题讨论】:
您要运行的查询是什么? 我也遇到过同样的问题(pma 4.5.3.1 + mysql v5.5.9-1ubuntu4.14)。你找到解决办法了吗? 【参考方案1】:这是 phpmyadmin 最新版本中引入的一个错误。它将在下一个版本(4.5.4)中修复。你可以通过从他们的 github repo (https://github.com/phpmyadmin/phpmyadmin/tree/QA_4_5) 下载这个版本来测试这个版本。
【讨论】:
以上是关于phpmyadmin MariaDb 更改表语法错误的主要内容,如果未能解决你的问题,请参考以下文章
如何更改语法 SQL 访问 phpmyadmin SQL/SQL 服务器
MySQL - 您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册以获取正确的语法 - phpMyAdmin