Windows10下sqlcmd执行含GO的SQL脚本报错是否可忽略?
结论:该错误信息完全可以忽略
原因说明
- 这是Windows git-bash环境下
sqlcmd(版本15.0.2000.5 NT)的兼容性小问题,和脚本实际执行结果无关。你已经确认脚本执行成功,说明sqlcmd正确解析并运行了所有用GO分隔的批处理,只是在处理完最后一批后,错误触发了“无剩余批处理”的提示逻辑。 - Ubuntu环境下无此问题,是因为Unix版
mssql-tools的sqlcmd在换行符处理、批处理结束检测逻辑上和Windows原生版本存在差异,不会触发这个误判。
验证与规避建议
- 验证执行结果:检查Synapse专用SQL池的执行日志、目标对象状态(如是否创建了表、数据是否正确写入),确认所有操作完成即可放心忽略该错误。
- 若想消除错误提示,可尝试:
- 移除脚本最后一行的
GO,或在最后一个GO后添加一行空注释(如-- 脚本结束),避免sqlcmd误判。 - 改用Windows原生的cmd或PowerShell终端执行
sqlcmd,该环境下不会出现此错误。
- 移除脚本最后一行的
内容的提问来源于stack exchange,提问作者John Scott Stensland
相关产品推荐
相关产品推荐

