You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JDBC程序执行ALTER TABLE语句报错,请求排查语法问题

问题分析与解决方案

你的SQL语法错误出在字符串拼接时缺少空格,导致生成的SQL语句中表名Contact_Info和add关键字连在了一起,变成了Contact_Infoadd,这不符合MySQL的语法规范。

拼接后错误的完整SQL语句如下:

alter table Contact_Infoadd column Phone varchar(30) not null after Last_Name,add column Email varchar(50) not null after Phone

显然Contact_Infoadd是无效的表名,这就是JDBC执行报错的核心原因——而命令行里你手动输入的语句自带空格,所以能正常执行。

修正方法很简单,在每个拼接的字符串开头补充空格,或者在前一个字符串的结尾添加空格即可:

String alter_query = "alter table Contact_Info "
                    + "add column Phone varchar(30) not null after Last_Name, "
                    + "add column Email varchar(50) not null after Phone";

修正后生成的正确SQL语句:

alter table Contact_Info add column Phone varchar(30) not null after Last_Name, add column Email varchar(50) not null after Phone

内容的提问来源于stack exchange,提问作者Sandip Nath

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 14:35:55