如何在Java中使用JDBC搜索多个字段的记录?
前提条件/建议:
如何在Java中使用JDBC创建表?
如何在Java中通过JDBC插入记录?
如何在Java中使用JDBC显示所有记录?
如何在Java中使用JDBC通过字段显示特定记录?
如何在Java中使用JDBC删除特定记录?
如何在Java中使用JDBC编辑记录?
在Java中使用JDBC使用PreparedStatement插入记录?
如何在Java中使用JDBC通过字段(薪水)搜索记录?
使用Java中的JDBC按模式搜索记录。
计数在Java中使用JDBC的MYSQL表中可用的记录数?
创建一个Connection类的对象并连接到数据库。
然后,我们需要对要在其上搜索记录的字段进行两个输入。之后,我们创建一个查询以从记录中同时满足这两个条件的MYSQL表中选择所有数据。
然后,我们通过使用Statement类的方法executeQuery()方法执行查询,并在ResultSet的帮助下打印结果。
数据库详细信息:
主机名:本地主机
端口号:3306
用户名:root
密码:123
数据库名称:demo
表名:员工
Java程序使用JDBC通过多个字段(ID和名称)搜索记录
import java.io.DataInputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class SearchBySalary { public static void main(String[] args) { try{ Class.forName("com.mysql.jdbc.Driver").newInstance(); //serverhost=localhost,端口=3306,用户名=root,密码=123- Connection cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/demo","root","123"); Statement smt=cn.createStatement(); //创建DataInputStream的对象 DataInputStream KB=new DataInputStream(System.in); //输入ID- System.out.print("Enter id: "); String id=KB.readLine(); //输入名称 System.out.print("Enter name: "); String name=KB.readLine(); //查询以选择工资的最小值和最大值之间 String q="Select * from employees where empname='"+name+"' and empid='"+id+"'"; //执行查询 ResultSet rs=smt.executeQuery(q); //在控制台上打印结果集 if(rs.next()) { do{ System.out.println(rs.getString(1)+","+rs.getString(2)+","+rs.getString(3)+","+rs.getString(4)+","+rs.getString(5)); }while(rs.next()); } else { System.out.println("Record Not Found..."); } cn.close(); } catch(Exception e) { System.out.println(e); } } }
输出(在控制台中)
Enter id: 100 Enter name: Aman 100,Aman,10/10/1990,Delhi,35000