执行SQL修改列长度语句报错:'VARCHAR'附近语法不正确
排查ALTER TABLE修改列长度的语法错误
错误提示Incorrect syntax near 'VARCHAR'是因为不同数据库系统对修改列属性的语法要求不同,你当前使用的MODIFY COLUMN语法并不适配正在操作的数据库,以下分场景给出修正方案:
- SQL Server 环境:需使用
ALTER COLUMN替代MODIFY COLUMN,正确语句:
ALTER TABLE tableName ALTER COLUMN columnName VARCHAR(256);
MySQL/MariaDB 环境:原语法本身合规,但可检查两个细节避免意外报错:
- 确认
tableName和columnName无拼写错误,若包含特殊字符需用反引号(`)包裹 - 移除
VARCHAR与括号间的空格,改为VARCHAR(256)
- 确认
Oracle 环境:无需
COLUMN关键字,且需使用VARCHAR2类型,正确语句:
ALTER TABLE tableName MODIFY columnName VARCHAR2(256);
内容的提问来源于stack exchange,提问作者user3866064
相关产品推荐
相关产品推荐

