IT序号网

java连接数据库的模糊查询

developer 2021年06月03日 数据库 294 0
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 }

 


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!