1. PreparedStatement updateSales = con.prepareStatement("SELECT * FROM COFFEES WHERE COF_NAME IN (?)");updateSales.setString(1, "Espresso,French_Roast");
解决方案 »
- 一个js文件调用另一个js文件的函数
- JAVA JNI数据传送问题
- 高手来说说Java编译器的执行过程
- 有没有人想玩远程协作开发啊?
- 一个大家十分关注的问题<请高手大师指点迷津〉<在线等待> up有分
- 要scjp模拟题,多多益善
- 结果为什么不对呢
- 大家是用什么软件来做setup安装程序的呢?
- 如何把一个目录以及所有子目录下面的所有java源代码文件通过命令一次全部编译。分太多了,问题解决后绝对给分。
- 我的是W98
- 目前ERP软件(用友、浪潮、金碟、利玛、oracle 9i、SAP等),都进行到什么程度,各个软件的优缺点都是什么,那位有这方面资料!(zxf@0451
- 抽象类的构造方法能为它的子类做些什么?
updateSales.setString(1, "Espresso,French_Roast");
当然前提是ORACLE数据库
但是有没有结果,你把整个命令在DBA中执行一下看看,有没有结果?有的话,你在一点点修改程序,否则都是白搭。
我是oracle。现在:
PreparedStatement updateSales = con.prepareStatement("SELECT * FROM COFFEES WHERE trim(COF_NAME) IN (?)");
updateSales.setString(1, "Espresso");
有结果。
但是:
PreparedStatement updateSales = con.prepareStatement("SELECT * FROM COFFEES WHERE trim(COF_NAME) IN (?)");
updateSales.setString(1, "Espresso,French_Roast");
没有结果。
updateSales.setString(1, "Espresso");
updateSales.setString(2, "French_Roast");
updateSales.setString(1, "Espresso");
updateSales.setString(2, "French_Roast");
PreparedStatement的局限性其实挺大的,除了上面的以外,还有分时间段统计问题:如果用户只输入开始时间,就统计到目前为止的数据,如果只输入结束时间,就统计这个时间以前的数据,如果两个时间都输入,就统计两个时间之间的数据。这也是参数不固定。
另外,从由于是先按存储过程编译后执行的,各种数据库系统实现起来可能有一些差别,如果要做数据库的移植也可能有一些问题。
updateSales.setString(1, "('Espresso','French_Roast')");