JDBC中的绑定变量

时间:2015-11-01 15:26:55

标签: java jdbc

我知道如何在JDBC中准备语句的方式,例如:

String query = "update users set num_points = ? where first_name = ?";
PreparedStatement preparedStmt = conn.prepareStatement(query);
preparedStmt.setInt(1, 6000);
preparedStmt.setString(2, "Fred");

我不喜欢这个,是每个变量都应该单独设置:

preparedStmt.setInt(1, 6000);
preparedStmt.setString(2, "Fred");

有批量方法吗?类似的东西:

preparedStmt.set(List_of_vals);

是否可以通过索引来解决字段,而不是名称?类似的东西:

String query = "update users set num_points = :num_points where first_name = :first_name";
PreparedStatement preparedStmt = conn.prepareStatement(query);
preparedStmt.bind(":num_points", 6000);
preparedStmt.bind(":first_name", "Fred");
// ^^^ it would be great, if I did not have to switch between 
//     setInt, setString, etc

但我最不喜欢的是,对于每个变量,我应该指定自己的setter,具体取决于类型,例如setIntsetString。我希望有一个更通用的方法,如bind(name, value)。它是否存在于JDBC

0 个答案:

没有答案