java For JDBC准备的语句,当SQL语句中提供实际值时,如何确定变量的位置
如果我有以下代码,SQL语句中提供了一个值,那么组的位置值是多少?是2点还是3点?换句话说,在确定位置时,提供的值是否计算在内
PreparedStatement st = null;
Connection conn = DBConnection.getConnection();
String userId = "myuser";
String group = "mygroups";
String sql = "Insert into MY_TABLE (USER_ID, LOGIN_DATE, GROUP) values (?,SYSDATE,?)";
st = conn.prepareStatement(sql);
st.setString(1, userId);
st.setString(2, group);
# 1 楼答案
传递给
setXYZ
方法的索引指的是占位符的数量——1是第一个占位符,2是第二个占位符,依此类推,而不管它们在语句中的确切位置以及该子句碰巧有哪些其他文字部分