![](/img/trans.png)
[英]mysql error 1064 when changing structure of date from datetime to VARCHAR
[英]Error #1064 when altering varchar column
我正在使用phpmyadmin,当我尝试将表的列description
从varchar(1000)更改为varchar(2000)时,出现错误:
#1064-您的SQL语法有误; 检查与您的MySQL服务器版本相对应的手册,以在第1行的'= latin1 COLLATE latin1_swedish_ci NOT NULL'附近使用正确的语法
从phpmyadmin自动生成的SQL:
ALTER TABLE `showcase`
CHANGE `description` `description` VARCHAR(2000) CHARSET=latin1
COLLATE latin1_swedish_ci NOT NULL;
使用以下查询仅更改VARCHAR
的长度:
ALTER TABLE `showcase` MODIFY `description` VARCHAR(2000);
如果也要设置字符集,则可以使用以下查询(将ALTER
命令作为有效命令):
ALTER TABLE `showcase`
CHANGE `description` `description` VARCHAR(2000) CHARACTER SET latin1
COLLATE latin1_swedish_ci NOT NULL
ALTER TABLE语句不正确。 CHARSET
和COLLATE
不能放入列定义中。
http://dev.mysql.com/doc/refman/5.7/en/alter-table.html http://dev.mysql.com/doc/refman/5.7/en/create-table.html
column_definition:
data_type [NOT NULL | NULL] [DEFAULT default_value]
[AUTO_INCREMENT] [UNIQUE [KEY] | [PRIMARY] KEY]
[COMMENT 'string']
[COLUMN_FORMAT {FIXED|DYNAMIC|DEFAULT}]
[STORAGE {DISK|MEMORY|DEFAULT}]
[reference_definition]
| data_type [GENERATED ALWAYS] AS (expression)
[VIRTUAL | STORED] [UNIQUE [KEY]] [COMMENT comment]
[NOT NULL | NULL] [[PRIMARY] KEY]
这似乎是为phpMyAdmin 4.5.4修复的错误 。 我建议您更新phpMyAdmin(请注意,在接下来的几天内将发布4.6.0),以利用此修补程序和其他修补程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.