我在用JDBC的时候,遇到了 in 关键字。而我不想拼SQL查询语句。我发现preparedStatement有个setArray(),但是发现是个接口,我找实现类就一个还是需要Array接口的。我想请教大家,select * from user where uid in (?) , 我传过来一个数组也好,字符串也好(用,隔开,确保查询语句正确运行)。我想直接就赋值一次,请教大家应该如何使用?
[b]问题补充:[/b]
那有哪些数据库厂商提供了这个接口的实现?比如mysql的有吗?感觉好像没有呀。
[b]问题补充:[/b]
请举个例子,莫说这么深奥嘛。
[b]问题补充:[/b]
偶就是想知道怎么用的,源码的事会用了再看看理解。您给举个例子?
[b]问题补充:[/b]
你没用过在这忽悠半天,你个老忽悠。
[b]问题补充:[/b]
伤了。呵呵……,谢了。
这个例子举不得。毕竟没有几个数据库厂商的代码是开源的。
你问的问题可能我们这些技术人员很少能接触到。关于驱动数据库,我看过一些文章,基本上都涉及到了操作系统底层的东西,还有许多c语言的东西。
建议你看看sql包下的Array接口是怎么定义的。
我觉得这个接口不是给我们调用jdbc的人用的,是sun给各大数据库厂商提供的接口。
所以你的sql还是拼接字符串吧。
实现都在各大数据库厂商提供的jar包里。就是你驱动数据库用的jar包。你看看里面,不只是驱动程序。
去问你们老师去,反正我是没用过。
我很坦诚,没用过就是没用过。我只是要告诉你,这个接口不是我们现在随便就能用的,再说也没什么地方可以要我们应用。你仔细看过api没有,回答你这个问题我可是看了好几遍api,还翻阅了好几个数据库驱动程序的jar包,所以我才告诉你这个接口事实上是给他们数据库厂商用的。
学java不是解数学题,我们要的是结果,而不是解法多么花哨。你问的那个sql语句就是传个字符串,你整出这么多没用的东西干什么。
你别钻我刚才那句话的空子,等你牛x了,那个接口你就用上了。反正现在我不牛x。
这个问题你结了吧,要是换做别人谁搭理你啊。
传一个以逗号隔开的字符串,使用问号完全可以