我必须使用包含所有行的数据文件中的值来更新表。现在我正在使用 JDBC 批处理。数据文件包含 100 列和数百万行。
例如,数据文件包含 3 列两行以使其简单
1,ABC,DEF
2.GHI,JKL
PreparedStatement pstmt = connection.prepareStatement(insert);
//how to find type
pstmt.setInt(1, 2);
pstmt.setString(2, "GHI");
pstmt.setString(3, "JKL");
pstmt.addBatch();
pstmt.executeBatch();
现在我的问题是在运行时基于来自数据文件的数据我如何发现我需要调用setInt
或setString
更重要的是我需要调用多少setXXX
次addBatch()
。这似乎对于每个表我都需要有专门的preparedStatements。更重要的是,我需要根据数据文件中的列数找出我应该在运行时调用 setObject 多少次?无论如何我可以使这个通用吗?
我是 JDBC 新手,请指导。提前致谢。