!1207 解决oracle情况下setObject(inputStream)报错问题,java.sql.SQLException: 无效的列类型

Merge pull request !1207 from 我是木予/v5-dev
This commit is contained in:
Looly 2024-04-15 03:48:36 +00:00 committed by Gitee
commit 5b02397102
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

View File

@ -13,16 +13,10 @@ import cn.hutool.db.sql.SqlBuilder;
import cn.hutool.db.sql.SqlLog;
import cn.hutool.db.sql.SqlUtil;
import java.io.InputStream;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ParameterMetaData;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Types;
import java.sql.*;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
@ -380,6 +374,18 @@ public class StatementUtil {
// 忽略其它数字类型按照默认类型传入
}
//InputStream解决oracle情况下setObject(inputStream)报错问题java.sql.SQLException: 无效的列类型
if(param instanceof InputStream){
ps.setBinaryStream(paramIndex, (InputStream) param);
return;
}
//java.sql.Blob
if(param instanceof Blob){
ps.setBlob(paramIndex, (Blob) param);
}
// 其它参数类型
ps.setObject(paramIndex, param);
}