javasql查询,java mysql 查询

本文目录一览:

如何用java语言中如何执行sql查询语句

使用jdbc技术,首先导入连接数据库的jar包,声明加载的类名,获取连接,进行查询,如:

Class.forName(“oracle.jdbc.driver.OracleDriver”);

Connection conn = DriverManager.getConnection(“jdbc:oracle:thin:@localhost:1521:orcl”, “scott”, “tiger”);

Statement sta = conn.createStatement();

ResultSet rs = sta.executeQuery(“select * from tablename”);

java sql数据库查询语句怎么写

使用java的jdbc来连接数据库

如连接mysql(其余数据库类似),引入mysql-connector-java-5.1.24.jar包到工程中,在程序中可以这样连接mysql:

String Server = 你服务器的ip;

String User = 你的账号名;

String Password = 你的密码;

String Database = 你的数据库名;

// 驱动程序名

String driver = “com.mysql.jdbc.Driver”;

// URL指向要访问的数据库名scutcs

String url = “jdbc:mysql://”+Server+”/” + Database;

// 加载驱动程序

Class.forName(driver);

// 连续数据库

Connection conn = DriverManager.getConnection(url, User, Password);

if(!conn.isClosed())

System.out.println(“Succeeded connecting to the Database!”);

// statement用来执行SQL语句

Statement statement = conn.createStatement();

String sql = “select ** from ** where **”;

ResultSet rs = statement.executeQuery(sql);

//假设数据库表只有两个属性值,一个属性值为String类型,另一个为Int类型

while(rs.next()) {

System.out.println(rs.getString(1)+” ” +rs.getInt(2) );

}

java 获取SQL查询语句返回的结果

在Java中,获得ResultSet的总行数的方法有以下几种。

第一种:利用ResultSet的getRow方法来获得ResultSet的总行数

Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);

ResultSet rset = stmt.executeQuery(“select * from yourTableName”);

rset.last();

int rowCount = rset.getRow(); //获得ResultSet的总行数

第二种:利用循环ResultSet的元素来获得ResultSet的总行数

ResultSet rset = stmt.executeQuery(“select * from yourTableName”);

int rowCount = 0;

while(rset.next()) {

rowCount++;}rowCount就是ResultSet的总行数。

第三种:利用sql语句中的count函数获得ResultSet的总行数

ResultSet rset = stmt.executeQuery(“select count(*) totalCount from yourTableName”);

int rowCount = 0;

if(rset.next()) {

rowCount=rset .getInt(“totalCount “);}rowCount就是ResultSet的总行数。

middot;*****************************************************************************************************************

middot;Java中获得ResultSet的总列数是非常简单事情,因为Java中ResultSet提供了ResultSetMetaData工具类,ResultSetMetaData是ResultSet的元数据的集合说明。

java获得ResultSet总列数的代码如下:

Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);

ResultSet rset = stmt.executeQuery(“select * from yourtable”);

ResultSetMetaData rsmd = rset.getMetaData() ;

columnCount就是ResultSet的总列数。

java 获取SQL查询语句返回的结果?

step1:构造连接

Class.forName(“com.mysql.jdbc.Driver”);

Connection con = DriverManager.getConnection(“jdbc:mysql://127.0.0.1:3306/db”,”root”,”123″);

step2:构造语句

String sql = “select username,password from t_user where username=?”;

PreparedStatement stmt = con.prepareStatement(sql);

stmt.setString(1, “zhangshan”); //给SQL的”?”(问号)传值。

step3:执行查询

ResultSet rs = stmt.executeQuery(); //rs就是SQL查询语句返回的结果集

step4:处理结果(java 获取SQL查询语句返回的结果)

List list = new ArrayList();

//遍历结果集,这样写就可以了,就是一个循环,有多少条记录,这里就会循环多少次,

//一次就是一条记录,想像一下就像一个表的一条记录

//在这里可以做查询出来的数据处理,可以封装成对象之类的(就是把值给它)

if(rs.next()) { //遍历结果集,这样写就可以了

User u = new User();

String username = rs.getString(“username”);

String address = rs.getString(“password “);

u.setUsername(username);

u.setAddress(address);

list.add(u);

}

//上面这个例子意思是,把每一条记录封装成了一个User对象,然后这些User对象都放存入到了一个list

step4:关闭连接等

java如何实现sql连接和查询的代码?

import java.sql.Connection。

import java.sql.DriverManager;  

import java.sql.PreparedStatement;  

import java.sql.ResultSet;  

import java.sql.SQLException;

import javax.naming.Context;  

import javax.naming.InitialContext;  

import javax.naming.NamingException;  

import javax.sql.DataSource;

public class DBCon {

//数据库驱动对象

public static final String DRIVER=”oracle.jdbc.driver.OracleDriver”;

//数据库连接地址(数据库名)

public static final String URL=”jdbc:oracle:thin:@localhost:1521:orcl”;

//登陆名

public static final String USER=”FM”;

//登陆密码

public static final String PWD=”FM”;

//创建数据库连接对象

private Connection con=null;

//创建数据库预编译对象

private PreparedStatement ps=null;

//创建结果集

private ResultSet rs=null;

//创建数据源对象

public static DataSource source=null;

//  //静态代码块  

//  static{  

//  

//      //初始化配置文件context  

//      try {  

//          Context context=new InitialContext();  

//          source=(DataSource)context.lookup(“java:comp/env/jdbc/webmessage”);  

//      } catch (Exception e) {  

//          // TODO Auto-generated catch block  

//          e.printStackTrace();  

//      }  

//  

//  

//  }

/**

* 获取数据库连接

*/

public Connection getCon(){

try {

Class.forName(DRIVER);

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

try {

con=DriverManager.getConnection(URL,USER,PWD);

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return con;

}  

//  /**  

//   * 获取数据库连接  

//   */  

//  public Connection getCon(){  

//  

//      try {  

//          con=source.getConnection();  

//      } catch (SQLException e) {  

//          // TODO Auto-generated catch block  

//          e.printStackTrace();  

//      }  

//  

//      return con;  

//  }  

/**

* 关闭所有资源

*/

public void closeAll(){

if(rs!=null)

try {

rs.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

if(ps!=null)

try {

ps.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

if(con!=null)

try {

con.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}  

}

/**

* @param sql数据库更新(增、删、改) 语句

* @param pras参数列表(可传,可不传,不传为NULL,以数组形式存在)

* @return 返回受影响都行数

*/

public int update(String sql,String… pras){

int resu=0;

con=getCon();

try {

ps=con.prepareStatement(sql);

for(int i=0;ipras.length;i++){

ps.setString(i+1,pras[i]);

}

resu=ps.executeUpdate();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

finally{

closeAll();

}

return resu;

}

/**

* @param sql数据库查询语句

* @param pras参数列表(可传,可不传,不传为NULL,以数组形式存在)

* @return 返回结果集

*/

public ResultSet query(String sql,String… pras){

con=getCon();

try {

ps=con.prepareStatement(sql);

if(pras!=null)

for(int i=0;ipras.length;i++){

ps.setString(i+1, pras[i]);

}

rs=ps.executeQuery();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return rs;

}  

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/303533.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-31 11:50
下一篇 2024-12-31 11:50

相关推荐

  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • 如何修改mysql的端口号

    本文将介绍如何修改mysql的端口号,方便开发者根据实际需求配置对应端口号。 一、为什么需要修改mysql端口号 默认情况下,mysql使用的端口号是3306。在某些情况下,我们需…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29

发表回复

登录后才能评论