Sql 批量更新Oracle BLOB值
我正在尝试使用以下代码更新一系列BLOB值。请注意,我们不是使用Sql 批量更新Oracle BLOB值,sql,oracle,sql-update,blob,Sql,Oracle,Sql Update,Blob,我正在尝试使用以下代码更新一系列BLOB值。请注意,我们不是使用Blob对象,而是调用setBytes try (PreparedStatement p = c.prepareStatement("UPDATE table SET data = ? WHERE id = ?") { for (Map.Entry<String, byte[]> d : updates.entrySet()) { p.setBytes(1, d.getValue());
Blob
对象,而是调用setBytes
try (PreparedStatement p = c.prepareStatement("UPDATE table SET data = ? WHERE id = ?") {
for (Map.Entry<String, byte[]> d : updates.entrySet()) {
p.setBytes(1, d.getValue());
p.setString(2, d.getKey());
p.addBatch();
}
p.executeBatch();
}
try(PreparedStatement p=c.prepareStatement(“更新表集数据=?其中id=?”){
对于(Map.Entry d:updates.entrySet()){
p、 setBytes(1,d.getValue());
p、 setString(2,d.getKey());
p、 addBatch();
}
p、 executeBatch();
}
但是,运行速度非常慢(每秒更新大约100行)
- 这是执行这些更新的“正确”方法吗?我们应该使用
对象吗?我们如何执行这些更新和新数据插入Blob
- 是否有任何原因导致运行缓慢