今天在验证所学的数据库知识时遇到了下图中的问题
代码最开始是直接从ppt上copy过来的,以为是全角半角字符的问题,但手输了几遍还是报错,我试着在几位同学电脑上运行了相同的代码,结果是能正常得到结果的,这让我感到十分疑惑。
我在网上试着查询相同问题的文章,一圈下来,发现此类问题并非个例,问题的矛头似乎指向了SSMS本身,编辑器在处理行的时候对于换行回车的判断处理似乎有问题,部分人提出 在SQL语句中,有些行的结尾处只有Char(13)没有Char(10),即:只有回车符没有换行符。
我按着网上的办法,把出现问题的代码移到SublimeText文本编辑器上保存后在重新移回查询窗口,再次执行后发现问题得到了解决。
结合各类语言编辑器以及在网上收集到的资料,我的猜测是sql语言本身相较于其他语言而言对于行规范化的模糊导致SSMS在设计时考虑到行处理的问题上时比较随意,出现了这种不应该的“bug”(胡言乱语ing...),建议是大量批处理语句下,先在其他文本编辑器中写好后,在誊抄到查询界面中运行。
参考资料:'GO' 附近有语法错误问题,我真是无语~ - zagelover - 博客园 (cnblogs.com)(鸣谢!)
标签:Char,文本编辑,查询,问题,sql,go,sever From: https://www.cnblogs.com/YikesXavier/p/16866988.html