2011-11-25 38 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) –