写点什么

Java 连接操作 MySQL 数据库(增删查改操作)

用户头像
若尘
关注
发布于: 2021 年 06 月 17 日
Java 连接操作 MySQL 数据库(增删查改操作)

MySQL 操作有不懂的,可查看我的 MySQL教程

环境

  • MySQL 5.5 版本

  • eclipse

  • MySQL 连接驱动 mysql-connector-java-5.1.18-bin.jar


mysql8.0 之前的版本与之后的版本使用的 jar 包是不同的,在使用时也有一定的区别。这里,我的 MySQL 版本为 5.5。

准备工作

  • 将 jar 包添加到项目中,右键项目,如下,选择Configure Build Path...

  • 将刚才下载好的 jar 包添加进去即可

增删查改操作

  • 首先,建立一个数据库模板 DBConfig.java


注意:要提前建立一个数据库,然后在JDBC_URL中填写你自己的数据库名称


/* * 若尘 */package test;
import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;

/** * 数据库连接和关闭工具类 * @author ruochen * @version 1.0 */public class DBConfig { /** 定义数据库驱动类名称 */ private static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; /** 数据库连接地址 */ private static final String JDBC_URL = "jdbc:mysql://127.0.0.1:3306/JavaDB?characterEncoding=utf8"; /** 数据库用户名 */ private static final String JDBC_USERNAME = "root"; /** 数据库密码 */ private static final String JDBC_PASSWORD = "root"; /** 数据库连接对象 */ private static Connection conn = null; /** * 获得链接 * @return */ public static Connection getConnection() { try { try { // 加载驱动程序 Class.forName(JDBC_DRIVER); System.out.println("加载成功"); } catch (java.lang.ClassNotFoundException e) { System.out.println("ForName: " + e.getMessage()); } conn = DriverManager.getConnection(JDBC_URL, JDBC_USERNAME, JDBC_PASSWORD); } catch (Exception e) { e.printStackTrace(); } return conn; } public static void closeConnection(ResultSet rs, Statement ps, Connection conn) { try { if (null != rs) { rs.close(); } if (null != ps) { ps.close(); } if (null != conn) { conn.close(); } } catch (Exception e) { System.out.println("Close connection error"); e.printStackTrace(); } }}
复制代码


  • 建表操作 CreateTest.java


/* * 若尘 */package test;
import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;
/** * JDBC链接数据库,创建数据表 * @author ruochen * @version 1.0 */public class CreateTest { public static void main(String[] args) { Connection conn = DBConfig.getConnection(); try { Statement st = conn.createStatement(); ResultSet re = conn.getMetaData().getTables(null, null, "student", null); if (re.next()) { System.out.println("表已经存在"); } else { // 建表语句 String sql = "create table student ( " + "id char(10)," + "name char(16)," + "score integer" + ")"; st.executeUpdate(sql); System.out.println("创建成功"); } DBConfig.closeConnection(re, st, conn); } catch (SQLException e) { System.out.println("SQLException: " + e.getMessage()); } }
}
复制代码


加载成功创建成功
复制代码



  • 插入操作 InsertTest.java


/* * 若尘 */package test;
import java.sql.Connection;import java.sql.SQLException;import java.sql.Statement;
/** * 数据表中插入数据 * @author ruochen * @version 1.0 */public class InsertTest {
public static void main(String[] args) { Connection conn = DBConfig.getConnection(); try { Statement st = conn.createStatement(); String r1 = "insert into student values('0001', '小王', 80)"; String r2 = "insert into student values('0002', '小李', 82)"; String r3 = "insert into student values('0003', '小张', 90)"; st.executeUpdate(r1); st.executeUpdate(r2); st.executeUpdate(r3); System.out.println("插入成功"); DBConfig.closeConnection(null, st, conn); } catch (SQLException e) { e.printStackTrace(); } }}
复制代码


加载成功插入成功
复制代码



  • 更新操作 UpdateTest.java


/* * 若尘 */package test;
import java.sql.Connection;import java.sql.PreparedStatement;
/** * 更新数据库操作 * @author ruochen * @version 1.0 */public class UpdateTest {
public static void main(String[] args) { Connection conn = DBConfig.getConnection(); String[] id = {"0002", "0003"}; int[] score = {70, 60}; PreparedStatement ps; try { ps = conn.prepareStatement("Update student set score=? where id=?"); int i = 0, idlen = id.length; do { ps.setInt(1, score[i]); ps.setString(2, id[i]); ps.executeUpdate(); System.out.println("修改成功"); ++i; } while (i < idlen); DBConfig.closeConnection(null, ps, conn); } catch (Exception e) { e.printStackTrace(); } }}
复制代码


加载成功修改成功修改成功
复制代码



  • 删除、查询操作 SearchTest.java


/* * 若尘 */package test;
import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.Statement;
/** * 删除、查询数据库操作 * @author ruochen * @version 1.0 */public class SearchTest { public static void main(String[] args) { Connection conn = DBConfig.getConnection(); try { Statement st = conn.createStatement(); PreparedStatement ps = conn.prepareStatement("delete from student where id=?"); ps.setString(1, "0002"); ps.executeUpdate(); System.out.println("删除成功"); ResultSet rs = st.executeQuery("select * from student"); while (rs.next()) { System.out.println(rs.getString("id") + "\t" + rs.getString("name") + "\t" + rs.getShort("score")); } st.close(); DBConfig.closeConnection(rs, ps, conn); } catch (Exception e) { e.printStackTrace(); } }
}
复制代码


加载成功删除成功0001  小王  800003  小张  60
复制代码



mysql-connector-java-5.1.18-bin.jar 链接:https://pan.baidu.com/s/1Ep7pKfFnHq_S8oN1Z4kaNg 提取码:tz8n

发布于: 2021 年 06 月 17 日阅读数: 10
用户头像

若尘

关注

还未添加个人签名 2021.01.11 加入

还未添加个人简介

评论

发布
暂无评论
Java 连接操作 MySQL 数据库(增删查改操作)