如何在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