使用Java中的JDBC按模式搜索记录
前提条件/建议:
如何在Java中使用JDBC创建表?
如何在Java中通过JDBC插入记录?
如何在Java中使用JDBC显示所有记录?
如何在Java中使用JDBC通过字段显示特定记录?
如何在Java中使用JDBC删除特定记录?
如何在Java中使用JDBC编辑记录?
在Java中使用JDBC使用PreparedStatement插入记录?
如何在Java中使用JDBC通过字段(薪水)搜索记录?
创建一个Connection类的对象并连接到数据库。
然后,我们需要输入要搜索记录的名称的模式。之后,我们创建一个查询以从MYSQL表中选择所有数据,其中名称类似于输入模式。
然后,我们通过使用Statement类的方法executeQuery()方法执行查询,并在ResultSet的帮助下打印结果。
数据库详细信息:
主机名:本地主机
端口号:3306
用户名:root
密码:123
数据库名称:demo
表名:员工
Java程序使用JDBC按模式搜索记录
import java.io.DataInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class SearchByPattern {
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);
//要搜索的输入模式
System.out.print("Enter Pattern:");
String pat=KB.readLine();
//查询选择类似于输入模式的数据
String q="Select * from employees where empname like '%"+pat+"%'";
//执行查询
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);
}
}
}输出(在控制台中)
Output (In Console) Enter Pattern: an 100,Aman,10/10/1990,Delhi,35000