JDBC中往一张表的String类型的字段中插入SQL语句的问题
lejqq 2012-12-26 05:39:46 JDBC中往一张表的String类型的字段中插入SQL语句的问题:
如下面的语句:
sql=insert into RT_RQ_DATARULE (TESTNO,STEPNO,TYPE,FIELD3,SQLDBTYPE) values
('lejcs_004',9,'EXESQL',q'Xinsert into IB_CBA_EboxUnitDET values(7554013229291,1,-1,50000,to_date('2010-06-11 00:00:00','yyyy-mm-dd hh24:mi:ss'),to_date('2099-07-12 00:00:00','yyyy-mm-dd hh24:mi:ss'),-1,0,2000,-1,to_date('2010-07-11 22:48:24','yyyy-mm-dd hh24:mi:ss'));X',1)
就是把一个insert语句插入到FIELD3字段中,直接在ORACLE命令行是可以执行成功,但用jdbc会如下错误:
java.sql.SQLException: 索引中丢失 IN 或 OUT 参数:: 1
用的是
PreparedStatement ps = null
ps = updateCon.prepareStatement(sql);
ps.executeUpdate()
这里的updateCon是Connection的连接
如果把FIELD3对应的insert语句中的to_date里的":"去掉用JDBC是执行成功的
环境:Tomcat6.0,ojdbc14.jar
求解决方法