解決在SQL腳本中的注釋引起的奇怪問(wèn)題
更新時(shí)間:2013年11月01日 18:00:32 作者:
通過(guò)osql.exe這個(gè)工具來(lái)對(duì)相關(guān)的數(shù)據(jù)庫(kù)腳本進(jìn)行更新,昨天突然發(fā)現(xiàn)安裝包報(bào)錯(cuò)了,說(shuō)腳本錯(cuò)誤,研究發(fā)現(xiàn)有個(gè)不錯(cuò)的解決方法,需要的朋友不要錯(cuò)過(guò)
在數(shù)據(jù)庫(kù)安裝包中,我們通過(guò)osql.exe這個(gè)工具來(lái)對(duì)相關(guān)的數(shù)據(jù)庫(kù)腳本進(jìn)行更新,昨天突然發(fā)現(xiàn)安裝包報(bào)錯(cuò)了,說(shuō)腳本錯(cuò)誤,但我們將腳本拿到數(shù)據(jù)庫(kù)查詢分析器中執(zhí)行,一切OK。
問(wèn)題出在哪里呢?
通過(guò)使用osql單獨(dú)來(lái)執(zhí)行報(bào)錯(cuò)的腳本,打印相關(guān)信息:
osql.exe -S .\SQLDEV -U sa -P MyRoot -b -n -r 1 -i ".\UpdateTable.sql" -o "c:\hahah.txt"
@echo %errorlevel%
@pause
得到如下錯(cuò)誤信息:
osql Missing end comment mark "*/"
暈倒,說(shuō)我的注釋符缺少了,可根本沒有少啊。
最后發(fā)現(xiàn),原來(lái)是在注釋語(yǔ)句中存在 GO 語(yǔ)句的問(wèn)題,如下:
/* ........... GO */
拿掉后,一切正常了,看來(lái)這也算是osql工具的一個(gè)小BUG吧。
問(wèn)題出在哪里呢?
通過(guò)使用osql單獨(dú)來(lái)執(zhí)行報(bào)錯(cuò)的腳本,打印相關(guān)信息:
復(fù)制代碼 代碼如下:
osql.exe -S .\SQLDEV -U sa -P MyRoot -b -n -r 1 -i ".\UpdateTable.sql" -o "c:\hahah.txt"
@echo %errorlevel%
@pause
得到如下錯(cuò)誤信息:
osql Missing end comment mark "*/"
暈倒,說(shuō)我的注釋符缺少了,可根本沒有少啊。
最后發(fā)現(xiàn),原來(lái)是在注釋語(yǔ)句中存在 GO 語(yǔ)句的問(wèn)題,如下:
/* ........... GO */
拿掉后,一切正常了,看來(lái)這也算是osql工具的一個(gè)小BUG吧。
相關(guān)文章
sqlserver 數(shù)據(jù)庫(kù)日志備份和恢復(fù)步驟
sqlserver 數(shù)據(jù)庫(kù)日志備份和恢復(fù)實(shí)現(xiàn)步驟2009-05-05新手SqlServer數(shù)據(jù)庫(kù)dba需要注意的一些小細(xì)節(jié)
這篇文章主要介紹了新手SqlServer數(shù)據(jù)庫(kù)dba需要注意的一些小細(xì)節(jié),本文講解了15個(gè)小細(xì)節(jié)、小技巧及需要注意的地方,需要的朋友可以參考下2015-02-02sql server的 update from 語(yǔ)句的深究
這篇文章主要介紹了sql server的 update from 語(yǔ)句的深究,需要的朋友可以參考下2014-12-12