使用 keep-alive: ORA-00933: SQL 命令未正确结束
Using keep-alive: ORA-00933: SQL command not properly ended
我想使用 squirrel-sql
的保持活动功能,因为如果我的 Oracle 数据库连接闲置时间过长,它们就会被切断。这是一个不言自明的功能 - 或者人们会期望 - 还有 covered on SO.
然而,显而易见的 SELECT 1 FROM DUAL;
并没有削减它并导致这个错误:
2016-10-21 16:43:51,879 [Thread-4] INFO
net.sourceforge.squirrel_sql.client.session.SessionConnectionKeepAlive
- SessionConnectionKeepAlive (...) running SQL: SELECT 1 FROM DUAL;
2016-10-21 16:43:51,882 [Thread-4] ERROR
net.sourceforge.squirrel_sql.client.session.SessionConnectionKeepAlive
- run: unexpected exception while executing sql (SELECT 1 FROM DUAL;):
ORA-00933: SQL command not properly ended
java.sql.SQLSyntaxErrorException: ORA-00933: SQL command not properly ended
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:445)
(...)
这里似乎有什么问题?
问题是尾随分号。删除后...
SELECT 1 FROM DUAL
...保持活动状态功能开始正常工作。
我想使用 squirrel-sql
的保持活动功能,因为如果我的 Oracle 数据库连接闲置时间过长,它们就会被切断。这是一个不言自明的功能 - 或者人们会期望 - 还有 covered on SO.
然而,显而易见的 SELECT 1 FROM DUAL;
并没有削减它并导致这个错误:
2016-10-21 16:43:51,879 [Thread-4] INFO
net.sourceforge.squirrel_sql.client.session.SessionConnectionKeepAlive
- SessionConnectionKeepAlive (...) running SQL: SELECT 1 FROM DUAL;
2016-10-21 16:43:51,882 [Thread-4] ERROR
net.sourceforge.squirrel_sql.client.session.SessionConnectionKeepAlive
- run: unexpected exception while executing sql (SELECT 1 FROM DUAL;):
ORA-00933: SQL command not properly ended
java.sql.SQLSyntaxErrorException: ORA-00933: SQL command not properly ended
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:445)
(...)
这里似乎有什么问题?
问题是尾随分号。删除后...
SELECT 1 FROM DUAL
...保持活动状态功能开始正常工作。