Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.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 使用JDBC的子查询?_Java_Mysql_Jdbc - Fatal编程技术网

Java 使用JDBC的子查询?

Java 使用JDBC的子查询?,java,mysql,jdbc,Java,Mysql,Jdbc,我的java程序中有这样一个查询- SELECT * FROM conversation WHERE user_id != 1 AND conversation_id IN ( SELECT conversation_id FROM conversation WHERE user_id = 1) 这将使用jdbc在结果中返回0行。但是,如果我复制并粘贴到phpmyadmin中,它就可以正常工作。那怎么了 我在我的jdbc连接字符串中添加了?allowMultiQueries=true,以查看

我的java程序中有这样一个查询-

SELECT * FROM conversation WHERE user_id != 1 AND conversation_id IN 
( SELECT conversation_id FROM conversation WHERE user_id = 1)
这将使用jdbc在结果中返回0行。但是,如果我复制并粘贴到phpmyadmin中,它就可以正常工作。那怎么了

我在我的jdbc连接字符串中添加了?allowMultiQueries=true,以查看这是否会产生影响,但事实并非如此

编辑:

这是我的桌子的样子。我希望在与用户1的对话中选择用户的ID。我刚注意到我漏掉了那封信!在房间里!=在上面的问题中,我现在把它放进去了。那么有人知道为什么它与phpmyadmin而不是jdbc一起工作吗


您是否使用相同的凭据登录JDBC和phpmyadmin中的相同数据库?在那里,完成了-已登录到另一个(且为空)数据库,无法找出查询失败的原因。

为什么不进行连接?这当然有效。jdbc调用是什么样子的?在jdbc中,1是查询的一部分吗?您的子查询没有任何意义。它应用与外部查询相同的条件,但会增加额外查询的开销。您不需要为子查询设置allowMultiQueries=true。我已经编辑了我的帖子,我已经输入了a=而不是a=我认为允许多个查询并不重要。这是一个恰好有一个子查询的单个查询——它不是两个查询。您仍然可以将其作为一个连接来执行,但这并不能回答您的问题——只是避免了它。也就是说,我对你的问题没有答案@卡斯滕等人为什么要投否决票?如果OP确实是复制/粘贴查询,并且Java或任何SQLException中都没有bug,那么问题可能不在查询语法中。