社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

MYSQL中的Alter Column语句有什么问题?

Anthony • 5 年前 • 1363 次点击  

这把我逼疯了。我不知道这个查询有什么问题?

mysql> ALTER TABLE `mydb.persons` MODIFY COLUMN `name` VARCHAR;

ERROR 1064 (42000): 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 1
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/56478
 
1363 次点击  
文章 [ 1 ]  |  最新文章 5 年前
Michael - sqlbot
Reply   •   1 楼
Michael - sqlbot    5 年前

引用中包含的信息 ...the right syntax to use near '...' 错误消息是 意想不到的事情 遇到分析器。当它是空字符串时 '' 这就意味着错误是查询的过早结束——到最后为止的所有内容都被解析了,没有问题,但是查询不可能结束到原来的位置,而且仍然有效。一个更明显的例子是查询 SELECT * FROM;

这个 VARCHAR 数据类型要求在括号中指定列的最大字符长度。例如,如果希望列的最大长度为96个字符:

mysql> ALTER TABLE `mydb.persons` MODIFY COLUMN `name` VARCHAR(96);

这个 CHAR 瓦查尔 类型的声明长度表示要存储的最大字符数。例如, CHAR(30) 最多可容纳30个字符。

https://dev.mysql.com/doc/refman/8.0/en/char.html