问题是:我正在为包含此字段(以及其他字段)的表中的查询设置prepareStatement:
TABLE1_RSPN NUMBER(8,0)
TABLE1_AFDV NUMBER(8,0)
TABLE1_VALUE NUMBER(17,2)
TABLE1_NOTE VARCHAR2(255 BYTE)
TABLE1_USR VARCHAR2(20 BYTE)
...
尝试将一些信息输入我的Java应用程序,我设置了一个preparedStatement,它引发了Oracle异常 ORA-03115不支持的网络数据类型或表示。
相关的Java代码是:
sentSQL = "SELECT TABLE1.*, TABLE2.CIAS FROM TABLE1, TABLE2 WHERE TABLE1_RSPN = ?" +
" AND TABLE2_AFDV = TABLE1_AFDV";
ps = con.prepareStatement(sentSQL);
ps.setBigDecimal(1, dto.getCodResponsability());
rs = ps.executeQuery(sentSQL);
CodResponsability是BigDecimal。我也尝试过Double和Long,没有任何快乐。
提前感谢您的帮助!
答案 0 :(得分:5)
这一行可能错了:
rs = ps.executeQuery(sentSQL);
这实际上调用了Statement's executeQuery并忽略了你绑定的变量。
应该是
rs = ps.executeQuery();