Oracle ORA-00933:SQL命令未正确结束

时间:2018-08-29 08:40:32

标签: oracle go

我尝试使用golang并从Oracle查询数据。我的SQL查询是:

SELECT * FROM TABLE1 OFFSET 10 ROWS;

但是它给出了一个错误:

EXTRA *errors.withStack=dpiStmt_execute: ORA-00933: SQL command not properly ended

在SQL * Plus中查询时,我的SQL查询工作正常,但是在使用golang时出错。

3 个答案:

答案 0 :(得分:0)

如果未指定偏移量,则假定其为0(零)。因此,请删除该子句(因为在您的情况下它不会执行任何操作),即

select * from table1

并在golang中使用该查询。

答案 1 :(得分:0)

我很确定只是您的结束分号就足够了。分号是用于分隔多个SQL语句或关闭pl / sql块的字符。因此,当您在SQL语句的末尾编写它时,解析器不知道如何处理它,因为他只等待一条SQL语句。

答案 2 :(得分:0)

正如Alex Poole所指出的,我将尝试运行查询而没有终止分号。如果您尝试执行以分号结尾的查询(这在SQL / Plus中是完全合法的),则很多Oracle客户端库(例如python中的cx_Oracle,即ADO.NET Oracle库)都会抱怨。