mysql resultset用法_JDBC系列教材 (四)- 在JDBC中使用ResultSet查询SQL语句

package jdbc;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

public class JdbcQuery {

private static final String URL = "jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8&serverTimezone=UTC";

private static final String DRIVER_NAME = "com.mysql.cj.jdbc.Driver";

private static final String USER = "root";

private static final String PASSWORD = "root";

/**

* 分页查询

*

* @param start 起始数

* @param count 一页显示总数

*/

public static void pageQuery(Statement s, int start, int count) {

String querySql = String.format("select * from hero limit %d, %d", start, count);

try {

ResultSet rs = s.executeQuery(querySql);

while (rs.next()) {

int id = rs.getInt(1);

String name = rs.getString(2);

float hp = rs.getFloat(3);

int damage = rs.getInt(4);

System.out.printf("id:%d, name:%s, hp:%.2f, damage:%d %n", id, name, hp, damage);

}

} catch (SQLException e) {

e.printStackTrace();

}

}

public static void main(String[] args) {

Connection c = null;

Statement s = null;

try {

Class.forName(DRIVER_NAME);

System.out.println("数据库驱动加载成功!");

} catch (ClassNotFoundException e) {

System.out.println("数据库驱动加载失败!");

e.printStackTrace();

}

try {

c = DriverManager.getConnection(URL, USER, PASSWORD);

System.out.println("数据库连接成功!");

s = c.createStatement();

// 查询hero表中一共有多少条记录

String sql = "select count(*) from hero";

ResultSet rs = s.executeQuery(sql);

int total = 0;

if (rs.next()) {

total = rs.getInt(1);

}

System.out.println("hero表中一共有" + total + "条记录");

// 一页查询total_every_page条记录,一共可分为pages页

int total_every_page = 12;

int pages = (int) Math.ceil((double) total / (double) total_every_page);

System.out.println("一共可分为" + pages + "页");

for (int i = 0; i < pages; i++) {

System.out.printf("查询第%d页结果:%n", i + 1);

pageQuery(s, i * total_every_page, total_every_page);

}

} catch (SQLException e) {

e.printStackTrace();

} finally {

if (s != null) {

try {

s.close();

System.out.println("Statement已关闭");

} catch (SQLException e) {

System.out.println("Statement关闭异常");

e.printStackTrace();

}

}

if (c != null) {

try {

c.close();

System.out.println("Connection已关闭");

} catch (SQLException e) {

System.out.println("Connection关闭异常");

e.printStackTrace();

}

}

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您解答JDBC连接MySQL并进行增删改查操作的问题。 首先,您需要确保已经安装了MySQL数据库和Java开发环境。然后,您需要下载MySQL提供的JDBC驱动程序,将其添加到您的Java项目。 接下来,您可以使用以下代码示例来连接MySQL数据库并进行增删改查操作: ``` import java.sql.*; public class JdbcExample { public static void main(String[] args) throws SQLException { Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; try { // 连接到数据库 conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase", "username", "password"); // 执行查询操作 pstmt = conn.prepareStatement("SELECT * FROM mytable"); rs = pstmt.executeQuery(); while (rs.next()) { // 处理查询结果 String name = rs.getString("name"); int age = rs.getInt("age"); System.out.println("Name: " + name + ", Age: " + age); } // 执行插入操作 pstmt = conn.prepareStatement("INSERT INTO mytable (name, age) VALUES (?, ?)"); pstmt.setString(1, "John"); pstmt.setInt(2, 30); int rows = pstmt.executeUpdate(); System.out.println(rows + " row(s) inserted."); // 执行更新操作 pstmt = conn.prepareStatement("UPDATE mytable SET age = ? WHERE name = ?"); pstmt.setInt(1, 31); pstmt.setString(2, "John"); rows = pstmt.executeUpdate(); System.out.println(rows + " row(s) updated."); // 执行删除操作 pstmt = conn.prepareStatement("DELETE FROM mytable WHERE name = ?"); pstmt.setString(1, "John"); rows = pstmt.executeUpdate(); System.out.println(rows + " row(s) deleted."); } catch (SQLException e) { e.printStackTrace(); } finally { if (rs != null) { rs.close(); } if (pstmt != null) { pstmt.close(); } if (conn != null) { conn.close(); } } } } ``` 在这个代码示例,我们首先使用`DriverManager.getConnection()`方法连接到MySQL数据库,然后使用`PreparedStatement`对象执行查询、插入、更新和删除操作。最后,我们使用`ResultSet`对象处理查询结果,使用`SQLException`对象处理异常,使用`close()`方法关闭数据库连接、语句和结果集。 当然,在实际开发,您需要根据自己的需求进行适当的修改和优化。希望这个示例可以帮助您理解如何使用JDBC连接MySQL并进行增删改查操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值