2011-11-25 85 views
2

如何在SQuirrel-sql中調試SQL語句?在SQuirrel-sql中調試SQL查詢

我不斷收到「無用」的錯誤:

Error: [SQL0104] Token , was not valid. Valid tokens:) OR. 
SQLState: 42601 
ErrorCode: -104 

我希望能夠看到我做出了錯誤的行號,或指導我到一些其他的方式問題是。

我正在使用IBMi DB2數據庫上的JDBC驅動程序。

回答

3

您可以爲更詳細的錯誤消息添加「errors = full」屬性,儘管它仍然需要一些解釋來定位精確的語法問題。

查看IBM Toolbox for Java JDBC properties瞭解更多信息。

正如Tracy提到的,如果您想要交互式語法檢查,您將不得不使用其中一個原生SQL接口,例如綠色屏幕Start SQL Interactive Session (STRSQL) commandIBM i AccessRun SQL scripts工具。

+0

感謝它提供了一些更有用的信息。 –

2

對於這種問題不明顯的錯誤,我喜歡將SQL複製並粘貼到AS/400的綠屏交互式SQL工具中。 (我假設你的數據庫服務器是一個基於你的標記的AS/400和IBMi DB2的提及。)命令是STRSQL。當出現錯誤時,它會將光標置於問題所在的位置。或者更具體地說,它認爲問題在哪裏。它確實需要綠屏訪問AS/400。

+0

謝謝,我用過STRSQL。 「將SQL複製並粘貼到AS/400的綠色屏幕上」並不像您發現那樣容易。對於較長的語句,您需要複製多個「塊」代碼。編輯出「撤消」按鈕不適合我。 (另一個選擇是RUNSQLSTM,看着DSPJOBLOG,然後可能是SPLF) –