【发布时间】:2013-11-22 09:04:23
【问题描述】:
我有一个字节[],它实际上是一个图像。
我想将它存储在 Oracle 11g 中。我在表中创建了一个 BLOB 列。并通过以下我尝试插入它。
String imageStr = "xyz...." byte[] data = imageStr.getBytes(); String sQuery = "insert into Table (LOCATION , BLOB_DATA) Values ('Lahore', data) ";
抛出异常“java.sql.SQLException: ORA-01465: invalid hex number”
我搜了一下,发现这种查询应该是通过PreparedStaement来完成的。
所以我做了以下事情
PreparedStatement prepStmt = dbConnection.prepareStatement("insert into Table (LOCATION, BLOB_DATA) values(?,?); prepStmt.setString(1, 'Lahore'); prepStmt.setBytes(2, bytes);
我开始在 dbConnection.prepareStatement(String) 上遇到错误,因为 DBConnection 类不是 Java Native 类。
这是早期开发者为数据库连接制作的自定义类,它没有prepareStatement(String)功能。
那现在该怎么办?
1.我应该在 DBConnection 类中创建一个方法 prepareStatement(String) 吗?
2。我应该采用第一种方法吗?
【问题讨论】: