解决在SQL脚本中的注释引起的奇怪问题
更新时间:2013年11月01日 18:00:32 作者:
通过osql.exe这个工具来对相关的数据库脚本进行更新,昨天突然发现安装包报错了,说脚本错误,研究发现有个不错的解决方法,需要的朋友不要错过
在数据库安装包中,我们通过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吧。
问题出在哪里呢?
通过使用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吧。
相关文章
SQL Server2019数据库备份与还原脚本(批量备份)
本文主要介绍了SQL Server2019数据库备份与还原脚本,数据库可批量备份,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2021-11-11
揭秘SQL Server 2014有哪些新特性(1)-内存数据库
微软SQL Server 2014提供了众多激动人心的新功能,但其中最让人期待的特性之一就是代号为” Hekaton”的内存数据库了,内存数据库特性并不是SQL Server的替代,而是适应时代的补充,现在SQL Server具备了将数据表完整存入内存的功能。那么今天我们就先来看看内存数据库2014-08-08
关于SQL中CTE(公用表表达式)(Common Table Expression)的总结
WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到2012-08-08


最新评论