我用jdbc连到oracle, 插入语句
INSERT INTO Buildings VALUES('b0', 'PSA', 12,
SDO_GEOMETRY(2003,
NULL,
NULL,
SDO_ELEM_INFO_ARRAY(1,1003,4),
SDO_ORDINATE_ARRAY(79, 68, 184, 125, 179, 133, 189, 138,
139, 229, 131, 225, 127, 233, 21, 175,
26, 168, 18, 163, 67, 73, 74, 76)
));
我直接插就可以插入,可是放进
statement..executeUpdate()l里 就会说是 invalid character。
实在是想不出哪里的问题呢? 请大家多多指教 谢谢^^
INSERT INTO Buildings VALUES('b0', 'PSA', 12,
SDO_GEOMETRY(2003,
NULL,
NULL,
SDO_ELEM_INFO_ARRAY(1,1003,4),
SDO_ORDINATE_ARRAY(79, 68, 184, 125, 179, 133, 189, 138,
139, 229, 131, 225, 127, 233, 21, 175,
26, 168, 18, 163, 67, 73, 74, 76)
));
我直接插就可以插入,可是放进
statement..executeUpdate()l里 就会说是 invalid character。
实在是想不出哪里的问题呢? 请大家多多指教 谢谢^^
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:207)
at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:946)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1160)
at oracle.jdbc.driver.OracleStatement.executeUpdateInternal(OracleStatement.java:1606)
at oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:1571)
at Populate.populating(Populate.java:116)
at Populate.main(Populate.java:37)具体错误如上
SDO_ORDINATE_ARRAY 这两个是函数吧? 我觉得是不是你的参数传错了?
比如 SDO_ELEM_INFO_ARRAY(1,1003,4) 应该是三个参数‘1’,‘1003’,‘4’,而你是不是用‘1,1003,4’来表示了?