String a1="01002";
String a2="影子";
String a3="河北";
String sql="merge into table1 t1 using (select ? as id,? as name,? as address from dual) t2 "+
"on (t1.id = t2.id) "+
"when not matched then "+
" insert values (t2.id, t2.name,t2.address) ";
stmt = conn.prepareStatement(sql);
stmt.setString(1, a1);
stmt.setString(2, a2);
stmt.setString(3, a3);
int rows = stmt.executeUpdate();
System.out.println("更新的记录数: " + rows);
java.sql.SQLException: ORA-01461: can bind a LONG value only for insert into a LONG column at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:623)
while(rset.next())
{
splitid = rset.getString(1);
waferqty = rset.getString(2);
System.out.println("splitid:"+splitid+" waferqty:"+waferqty);
}
rset.close();
st.close();
String a2="影子";
String a3="河北";
String sql="merge into table1 t1 using (select ? as id,? as name,? as address from dual) t2 "+
"on (t1.id = t2.id) "+
"when not matched then "+
" insert values (t2.id, t2.name,t2.address) ";
stmt = conn.prepareStatement(sql);
stmt.setString(1, a1);
stmt.setString(2, a2);
stmt.setString(3, a3);
int rows = stmt.executeUpdate();
System.out.println("更新的记录数: " + rows);
java.sql.SQLException: ORA-01461: can bind a LONG value only for insert into a LONG column at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:623)
while(rset.next())
{
splitid = rset.getString(1);
waferqty = rset.getString(2);
System.out.println("splitid:"+splitid+" waferqty:"+waferqty);
}
rset.close();
st.close();
String a1="01002";
String a2="影子";
String a3="河北";
String sql="merge into table1 t1 using (select ? as id,? as name,? as address from dual) t2 "+
" on (t1.id = t2.id) "+
" when not matched then "+
" insert values (t2.id, t2.name,t2.address) ";
stmt = conn.prepareStatement(sql);
stmt.setString(1, a1);
stmt.setString(2, a2);
stmt.setString(3, a3);
int rows = stmt.executeUpdate();
System.out.println("更新的记录数: " + rows);
java.sql.SQLException: ORA-01461: can bind a LONG value only for insert into a LONG columnat oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:623)
rset.close();
st.close();
String a1="010021";
String a2="影子1";
String a3="河北1";
String sql="merge into table1 t1 using (select '"+a1+"' id,'"+a2+"' name,'"+a3+"' address from dual) t2 "+
"on (t1.id = t2.id) "+
"when not matched then "+
" insert values (t2.id, t2.name,t2.address) ";
stmt = conn.prepareStatement(sql);
/* stmt.setString(1, a1);
stmt.setString(2, a2);
stmt.setString(3, a3);*/
int rows = stmt.executeUpdate();
System.out.println("更新的记录数: " + rows); st.close();