Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 查询以分号(;)终止get-SqlException,进程不终止_Java_Sql_Jdbc - Fatal编程技术网

Java 查询以分号(;)终止get-SqlException,进程不终止

Java 查询以分号(;)终止get-SqlException,进程不终止,java,sql,jdbc,Java,Sql,Jdbc,假设我的问题是 select * from table_a where pk=1; 如果使用PreparedStatement从Java运行此查询(带分号),则会抛出一个SqlExpection。 我正在使用Oracle10g和Java5 我的问题是:虽然查询是有效的,但为什么从java准备语句执行查询时会发生SqlException(ORA-00911:无效字符)?语句终止符不是语句本身的一部分。JDBCAPI旨在执行单个语句,因此不应终止语句 对于大多数数据库,语句终止符不是语句语法的一部

假设我的问题是

select * from table_a where pk=1;
如果使用PreparedStatement从Java运行此查询(带分号),则会抛出一个
SqlExpection
。 我正在使用Oracle10g和Java5


我的问题是:虽然查询是有效的,但为什么从java准备语句执行查询时会发生SqlException(ORA-00911:无效字符)?

语句终止符不是语句本身的一部分。JDBCAPI旨在执行单个语句,因此不应终止语句


对于大多数数据库,语句终止符不是语句语法的一部分,而是CLI的一个构件(CLI需要知道查询何时实际完成才能发送到服务器)。

语句终止符不是语句本身的一部分。JDBCAPI旨在执行单个语句,因此不应终止语句


对于大多数数据库,语句终止符不是语句语法的一部分,而是CLI的一个构件(需要知道查询何时实际完成才能发送到服务器)。

此行为取决于您使用的数据库驱动程序。Java PreparedStatement将按原样将以分号(;)终止的查询发送到驱动程序。这取决于数据库是否理解sql查询终止。

此行为取决于您使用的数据库驱动程序。Java PreparedStatement将向驱动程序发送以分号(;)终止的查询。这取决于数据库是否理解sql查询终止。

您使用的是哪个数据库?您的问题是什么?您不需要终止准备好的语句。省略分号行吗?还有什么例外。我确信它不仅仅说“SqlException”,我的问题是:虽然查询是有效的,但为什么在java准备语句中执行查询时会发生SqlException?删除
您使用的是哪个数据库?您的问题是什么?您不需要终止准备好的语句。省略分号行吗?还有什么例外。我确信它不仅仅说“SqlException”,我的问题是:虽然查询是有效的,但为什么在java准备语句中执行查询时会发生SqlException?删除