成都创新互联网站制作重庆分公司

java代码实现条件查询 java实现查询功能代码

求助用JAVA实现数据库带条件查询

我这里有个现成的数据库连接类

网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了沙湾免费建站欢迎大家使用!

先配个数据源

import java.sql.*;

public class DB{

Connection con;

Statement stt;

private void begin()

{

if(con!=null||stt!=null)

{

this.closs();

}

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

con = DriverManager.getConnection("jdbc:odbc:数据源名");

stt = con.createStatement();

}

public Resultset qu(String sql)

{

this.begin();

return stt.executeQuery(sql);

}

public boolean cun(String sql)

{

this.begin();

return stt.execute(sql);

}

public void closs()

{

stt.close();

con.close();

}

}

要用的时候 DB a = new DB()

a.qu("select * from 你的表名 where 你表中书名的那一列的列名 like '%书名%'")

%是通配符 就是说如果书名是"12ab45" 你输入"ab 也能查询到" 如果不需要可以去掉%

a.qu()

返回一个ResultSet

你可以创建一个数组

String[][] b = new String[返回的Result的条数][JTable中需要显示的列数量]

用new JTable(String[][],String[])的方法来构造这个表吧

java中的条件查询怎么写

import java.sql.Connection;

import java.sql.Date;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.sql.PreparedStatement;

public class JDBC {

private Connection con = null;

private Statement stmt = null;

private ResultSet rs = null;

private String driver = "com.mysql.jdbc.Driver";

private String url="jdbc:mysql://localhost:3306/dataname

?characterEncoding=GBK";

private String user = "root";

private String password = "mysql";

/**

* 准备连接

*/

public void startConnection() throws ClassNotFoundException, SQLException {

Class.forName(driver); //注册数据库驱动

con = DriverManager.getConnection(url, user, password); //获得数据库连接

}

/**

* 执行select 并返回结果集 throws SQLException

*/

public ResultSet query(String sql) throws SQLException {

stmt = con.createStatement(); //创建Statement

rs = stmt.executeQuery(sql); //执行查询

return rs;

}

/**

* 执行insert update delete

*/

public int update(String sql) throws SQLException {

stmt = con.createStatement();

int r = stmt.executeUpdate(sql);

return r;

}

/**

* 释放资源(连接)

*/

public void releaseConnection() {

try {

if (rs != null)

rs.close();

stmt.close();

if (con != null)

con.close();

} catch (SQLException e) {

e.printStackTrace(); }

} }

Java中数据库实现多条件查询(条件是不确定的,可以是一个,两个,三个,四个,五个)!

你这样做输出SS语句调试看看,你会发现你输出的SQL语句有问题!

String ss="SELETE * FROM MESSAGE WHERE";

int i=1;char c='"';

if(na!=null)

{ss=ss+"AND 姓名='"+na+"'";i=0;

System.out.println(ss);

}

if(se!="")

{

if(i==0){ss=ss+"AND 性别='"+se+"'";i=0;}

else {ss=ss+"AND 性别='"+se+"'";i=1;}

}

if(xi!="")

{

if(i==0){ss=ss+"AND 系别='"+xi+"'";i=0;}

else {ss=ss+"AND 系别='"+xi+"'";i=1;}

}

if(zh!="")

{

if(i==0){ss=ss+"AND 专业='"+zh+"'";i=0;}

else {ss=ss+"AND 专业='"+zh+"'";i=1;}

}

if(ni!="")

{

if(i==0){ss=ss+"AND 年级='"+ni+"'";}

else {ss=ss+"AND 年级='"+ni+"'";}

}

ss=c+ss+c;

rs=sql.executeQuery(ss);

就拿第一个SQL语句来做示范,加入你的na值为abc,输出的SS是 SELETE * FROM MESSAGE WHEREAND 姓名= 'abc'

仔细一看就知道SQL语句上很严重的错误 WHERE 后面接了AND关键词

可以这样改:ss=ss+" " + "姓名='"+na+"'" +" " +"AND";

最后使用replaceAll('AND$', ")") 替换最后一个AND字符穿。或者使用字符创截取 去掉最后三个字符(AND)


分享名称:java代码实现条件查询 java实现查询功能代码
文章链接:http://cxhlcq.com/article/doedgps.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部