So I’m trying to search and print the value from the PHPMyAdmin database. But the result shows all row which has variable with containing the value. Like when I try search variable int bulan
that has value 2. This also shows a row that has a value of 12, 22 or 23 as a result.
this is my code
x
System.out.print("Masukkan bulan yang ingin ditampilkan [mm]: ");
var.mnip=input.nextLine();
try{
String sql="SELECT * FROM lembur " + "where bulan like('%" + var.mnip + "%')";
st= (PreparedStatement) conn.prepareStatement(sql);
rs = st.executeQuery(sql);
while (rs.next()) {
System.out.println ("");
System.out.println ("Nomer Input :"+rs.getString("number"));
System.out.println ("Nama :"+rs.getString("nama"));
System.out.println ("NIP :"+rs.getString("nip"));
System.out.println ("Divisi :"+rs.getString("divisi"));
System.out.println ("Waktu Lembur :");
System.out.println ("dd/mm/yyyy");
System.out.println ("tTanggal :"+rs.getString("tanggal"));
System.out.println ("tBulan :"+rs.getString("bulan"));
System.out.println ("tTahun :"+rs.getString("tahun"));
System.out.println ("Keterangan Lembur :"+rs.getString("ket_lembur"));
System.out.println ("Lama Lembur :"+rs.getString("divisi"));
System.out.println ("");
System.out.println ("======================================");
System.out.println ("");
}
}
catch(SQLException e){
System.out.println("Data Ada Kesalahan" + e.toString());
}
Advertisement
Answer
Like operator gives all matches where value 2 is in there that’s why you get 12, 22 or 23 in the output you should use equal to operator
for an exact match.
System.out.print("Masukkan bulan yang ingin ditampilkan [mm]: ");
var.mnip=input.nextLine();
try{
String sql="SELECT * FROM lembur " + "where bulan=" +var.mnip;
st= (PreparedStatement) conn.prepareStatement(sql);
rs = st.executeQuery(sql);
while (rs.next()) {
System.out.println ("");
System.out.println ("Nomer Input :"+rs.getString("number"));
System.out.println ("Nama :"+rs.getString("nama"));
System.out.println ("NIP :"+rs.getString("nip"));
System.out.println ("Divisi :"+rs.getString("divisi"));
System.out.println ("Waktu Lembur :");
System.out.println ("dd/mm/yyyy");
System.out.println ("tTanggal :"+rs.getString("tanggal"));
System.out.println ("tBulan :"+rs.getString("bulan"));
System.out.println ("tTahun :"+rs.getString("tahun"));
System.out.println ("Keterangan Lembur :"+rs.getString("ket_lembur"));
System.out.println ("Lama Lembur :"+rs.getString("divisi"));
System.out.println ("");
System.out.println ("======================================");
System.out.println ("");
}
}
catch(SQLException e){
System.out.println("Data Ada Kesalahan" + e.toString());
}