<分区>
我正在使用 PreparedStatement
从表中选择记录:
public static String getMemberInfo(String columnName, Integer memberId) {
String memberInfo = "";
String sql = "SELECT ? FROM member WHERE member_id = ?";
DatabaseConnector.setConn();
try(Connection conn = DatabaseConnector.getConn();
PreparedStatement ps = conn.prepareStatement(sql)) {
ps.setString(1, columnName);
ps.setInt(2, memberId);
try(ResultSet rs = ps.executeQuery()) {
if(rs.next()) {
memberInfo = rs.getString(columnName);
}
}
} catch(SQLException se) {
se.printStackTrace();
}
return memberInfo;
}
当我使用
SELECT "+ columnName + "FROM member WHERE member_id = ?
,有效。
但是当我使用
选择? FROM member WHERE member_id = ?
,它没有。
应该将 ?
放在准备好的语句中的什么位置?