并非所有变量已绑定(ora 01008 并非所有变量都已绑定)
SQL参数异常或者SQL语句语法错误,并非所有变量都已绑定 执行错误
里面有二个变量
ai.rec_staus= ?
TO_DATE(?,
你调用时,要将实际值传进去,才行。
怎么解决ORA-01008:并非所有变量都已绑定
参数位的设定值不对。
sSQL = "insert into psymmetrical"
+ "(puid,frockpuid,frockid,frockname,symmetricalid,symmetricalfrockid,symmetricalfrockname," +
"symmetricaldate,temp1,temp2,temp3,temp4,temp5,createUser,createUserID)"
+ " values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
stmt = conn.prepareStatement(sSQL);
stmt.setString(1,SyObject.puid);
stmt.setString(1,SyObject.frockpuid); // 这里参数位
stmt.setString(1,SyObject.frockId); //还有这里参数位
stmt.setString(4,SyObject.frockName);
stmt.setString(5,SyObject.symmetricalId);
stmt.setString(6,SyObject.symmetricalFrockId);
stmt.setString(7,SyObject.symmetricalFrockName);
stmt.setString(8,SyObject.symmetricalDate);
stmt.setString(9,SyObject.temp1);
stmt.setString(10,SyObject.temp2);
stmt.setString(11,SyObject.temp3);
stmt.setString(12,SyObject.temp4);
stmt.setString(13,SyObject.temp5);
stmt.setString(14,SyObject.createUser);
stmt.setString(15,SyObject.createUserID);
stmt.executeQuery();
Java preparestatement 报错 java.sql.SQLException: ORA-01008: 并非所有变量都已绑定
//PreparedStatement?不是你这样用的改成这样
PreparedStatement?ps=?con.prepareStatement("UPDATE?CUSTOMER?SET?MONEY?=?MONEY-??WHERE?ID?=??");
ps.setDouble(1,?money);
ps.setInt(2,?id2);
ps.executeUpdate();
像你这样ps.execute("UPDATE CUSTOMER SET MONEY = MONEY-? WHERE ID = ?");这个sql就直接执行了。所有?的值还没绑定,后面的ps.set其实已经没用了已经执行了明白了吧。
有问题请追问。