字符串参数并选择java中sql的准备语句
我有个问题>> 编程语言:java 数据库:Mysql数据库 我编写了一个java代码,用于根据方法中的数据参数从数据库中检索记录>> 代码是:字符串参数并选择java中sql的准备语句,java,sql,prepared-statement,Java,Sql,Prepared Statement,我有个问题>> 编程语言:java 数据库:Mysql数据库 我编写了一个java代码,用于根据方法中的数据参数从数据库中检索记录>> 代码是: public static void Get_patient_data(String Hospital1_ID,String Hospital2_ID { try { Connection con = getConnection2(); PreparedStatement statement = (com.m
public static void Get_patient_data(String Hospital1_ID,String Hospital2_ID {
try {
Connection con = getConnection2();
PreparedStatement statement = (com.mysql.jdbc.PreparedStatement)
con.prepareStatement(
"SELECT PatientGender "+
"FROM patientcorepopulatedtable "+
"WHERE PatientID = Hospital1_ID LIMIT 1" );
ResultSet result = statement.executeQuery();
ArrayList<String> array = new ArrayList<String>();
while( result.next()) {
System.out.print("the patient Gender is" +
result.getString("PatientGender"));
}
}
catch(Exception e) {
System.out.println("Error"+e);
}
}
publicstaticvoid获取患者数据(字符串Hospital1\u ID,字符串Hospital2\u ID{
试一试{
连接con=getConnection2();
PreparedStatement=(com.mysql.jdbc.PreparedStatement)
准备陈述(
“选择PatientGender”+
“从PatientReplopulatedTable”+
“其中PatientID=住院1_ID限制1”);
ResultSet result=statement.executeQuery();
ArrayList数组=新的ArrayList();
while(result.next()){
系统输出打印(“患者性别为”+
result.getString(“PatientGender”);
}
}
捕获(例外e){
系统输出打印项次(“错误”+e);
}
}
正如您所看到的,问题是Hospital1_ID参数..来自该方法,而patientID是PatientReportedTable中的一列
=
相等运算符不起作用。您可以这样做
PreparedStatement statement = (com.mysql.jdbc.PreparedStatement)
con.prepareStatement(
"SELECT PatientGender FROM patientcorepopulatedtable "+
"WHERE PatientID = ? LIMIT 1");
statement.setString(1, Hospital1_ID);
ResultSet result = statement.executeQuery();
你可以找到更多信息,试试这个
String query =
"SELECT PatientGender FROM patientcorepopulatedtable "+
" WHERE PatientID = ? LIMIT ?";
PreparedStatement preparedStmt = conn.prepareStatement(query);
preparedStmt.setString (1, Hospital1_ID);
preparedStmt.setInt (2, 1);
preparedStmt.executeQuery();
如果
Hospital1\u ID
是参数,则需要将其置于撇号“WHERE PatientID=“+Hospital1\u ID+”LIMIT 1”