解决在SQL脚本中的注释引起的奇怪问题

(编辑:jimmy 日期: 2024/11/10 浏览:2)

在数据库安装包中,我们通过osql.exe这个工具来对相关的数据库脚本进行更新,昨天突然发现安装包报错了,说脚本错误,但我们将脚本拿到数据库查询分析器中执行,一切OK。

问题出在哪里呢?

通过使用osql单独来执行报错的脚本,打印相关信息:
复制代码 代码如下:
osql.exe -S .\SQLDEV -U sa -P MyRoot -b -n -r 1 -i ".\UpdateTable.sql" -o "c:\hahah.txt"
@echo %errorlevel%
@pause

得到如下错误信息:

osql Missing end comment mark "*/"

晕倒,说我的注释符缺少了,可根本没有少啊。

最后发现,原来是在注释语句中存在 GO 语句的问题,如下:

/* ........... GO */

拿掉后,一切正常了,看来这也算是osql工具的一个小BUG吧。
一句话新闻
Windows上运行安卓你用过了吗
在去年的5月23日,借助Intel Bridge Technology以及Intel Celadon两项技术的驱动,Intel为PC用户带来了Android On Windows(AOW)平台,并携手国内软件公司腾讯共同推出了腾讯应用宝电脑版,将Windows与安卓两大生态进行了融合,PC的使用体验随即被带入到了一个全新的阶段。