我寫了一個buildfile,它在某些點上將對象安裝在Sybase數據庫中。使用Sybase執行Ant sql任務時出錯
該代碼由我們的開發人員提供,我不允許修改它。 如果使用isql
命令手動運行給定的SQL,它將起作用。
這是安裝一個給定的對象構建文件的一部分:每當我試圖運行包含雙引號的腳本(「)時間
<sql
driver="${db.driver}" url="${db.url}" userid="${db.user}"
password="${db.password}" src="${file}"
print="true" delimiter="go" delimitertype="row"
classpathref="sybase.lib.path" output="${file}.out"
errorproperty="install.failed" onerror="continue" keepformat="true" />
雖然解決方案工作的大部分時間,它失敗
例如,如果SQL腳本包含這樣的事情:
declare @var varchar(30)
set @var = "SOME STRINGS"
失敗與錯誤:
[sql] com.sybase.jdbc3.jdbc.SybSQLException: Invalid column name 'SOME STRINGS'.
有人解決了這個問題嗎?
我已閱讀Ant sql
task的文檔。 我正在使用Ant版本1.8.2。
我有以下JDBC驅動程序測試:
- com.sybase.jdbc3.jdbc.SybDriver
- net.sourceforge.jtds.jdbc.Driver
你可以嘗試設置escapeprocessing假 – Matteo
@Matteo我已經試過了,我也得到了同樣的錯誤。 – Claudio
最後我取代爲下列句子使用SQL任務標記的: \t \t \t \t \t \t \t \t \t \t \t \t \t \t –
Claudio