随笔 - 597  文章 - 4  评论 - 445  阅读 - 424万

java连接数据库的模糊查询

1:模糊查询是比较常见的一种查询方式,例如在订单表中,包含有订单的具体日期。如果要查询某年某月的订单信息,最好的方式就是使用模糊查询。进行模糊查询需要使用关键字LIKE。在使用LIKE关键字进行模糊查询时,可以使用通配符"%",来代替0个或者多个字符,使用下划线_来代表一个字符。

注释:需要注意的是在使用LIKE的时候,后面的查询条件需要加 '  ',英文状态下的单引号引起来,不然报错如下

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%别%' at line 1

 


 

复制代码
 1 package com.ningmeng;
 2 
 3 import java.sql.*;
 4 
 5 public class Test07 {
 6 
 7     public static void main(String[] args) {
 8         // TODO Auto-generated method stub
 9         try {
10             Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
11             System.out.println("加载数据库驱动成功");
12             String url="jdbc:mysql://localhost:3306/test";//声明自己的数据库test的url
13             String user="root";//自己的数据库用户名
14             String pass="123456";//自己的数据库密码
15             //建立数据库连接,获得连接的对象conn
16             Connection conn=DriverManager.getConnection(url,user,pass);
17             System.out.println("连接数据库驱动成功");
18             Statement stmt=conn.createStatement();//创建一个Statement对象
19             String sql="select * from users where username like '%别%' ";//生成sql语句
20             ResultSet rs=stmt.executeQuery(sql);//执行sql语句
21             int id,age,sex;
22             String username,password;
23             System.out.println("id\t 用户名\t 密码\t 性别\t 年龄");
24             while(rs.next()){
25                 id=rs.getInt("id");
26                 username=rs.getString(2);
27                 password=rs.getString("password");
28                 age=rs.getInt(4);
29                 sex=rs.getInt("age");
30                 System.out.println(id+"\t"+username+"\t"+password+"\t"
31                         +sex+"\t"+age);//输出查询结果
32             }
33             System.out.println("模糊查询成功");
34             conn.close();//关闭数据库连接
35             System.out.println("关闭数据库连接成功");
36         } catch (ClassNotFoundException e) {
37             // TODO Auto-generated catch block
38             e.printStackTrace();
39         } catch (SQLException e) {
40             // TODO Auto-generated catch block
41             e.printStackTrace();
42         }
43         
44     }
45 }
复制代码

 

 

posted on   别先生  阅读(23712)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示