当前位置: 首页 > news >正文

java通过JDBC连接mysql和postgres数据库实现读写数据

通过JDBC 连接mysql需要JDBC驱动程序包,本例子使用的是:mysql-connector-java-5.1.43-bin.jar

通过JDBC 连接postgres需要JDBC驱动程序包,本例子使用的是:postgresql-42.7.4.jar


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;/*** @author LYJ**/
public class JDBCTest {/*** @param args* @throws SQLException * @throws ClassNotFoundException */public static void main(String[] args) throws ClassNotFoundException, SQLException {// TODO Auto-generated method stub//jdbcMysqlSelect();//jdbcMysqlWrite();jdbcPostgresSelect();jdbcPostgresWrite();}/** 通过JDBC连接mysql数据* 实现数据读写操作*/public static void jdbcMysqlSelect() throws ClassNotFoundException,SQLException{//01、注册驱动Class.forName("com.mysql.jdbc.Driver");//02、获取连接Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test1", "root", "123456");//03、定义SqlString sql = "SELECT * FROM student_t";//04、获取执行者对象Statement stat = conn.createStatement();//05、执行Sql并获取结果ResultSet rs = stat.executeQuery(sql);rs.last();//定位到最后一行int totalRows = rs.getRow();System.out.println("一共有:" + totalRows + "行");rs.beforeFirst();//定位到第一行前//06、处理返回结果while(rs.next()) {System.out.println(rs.getInt("stu_id") + "\t" + rs.getString("stu_name"));}//07、关闭资源rs.close();stat.close();conn.close();}/** 通过JDBC连接mysql数据* 实现数据读写操作*/public static void jdbcMysqlWrite() throws ClassNotFoundException,SQLException{//01、注册驱动Class.forName("com.mysql.jdbc.Driver");//02、获取连接Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test1?useUnicode=true&characterEncoding=utf8", "root", "123456");//03、定义SqlString sql = "insert into student_t(stu_id,stu_name,stu_sex,stu_age) values("+"6" + "," + "'王五'" + "," + "'男'" + "," + "20" + ")";//04、获取执行者对象Statement stat = conn.createStatement();//05、执行Sql并获取结果boolean resultFlag = stat.execute(sql);//06、判断执行结果if(resultFlag){System.out.println("插入数据成功");}//07、关闭资源stat.close();conn.close();}/** 通过JDBC连接postgress数据* 实现数据读写操作*/public static void jdbcPostgresSelect() throws ClassNotFoundException,SQLException{//01、注册驱动Class.forName("org.postgresql.Driver");//02、获取连接,数据库连接URL,格式为:jdbc:postgresql://主机名:端口/数据库名Connection conn = (Connection) DriverManager.getConnection("jdbc:postgresql://localhost:5432/mydb1", "liyongjie", "liyongjie");//03、定义SqlString sql = "SELECT * FROM schema1.student_t";//04、获取执行者对象//在 PostgreSQL JDBC 驱动中,如果没有指定使用可滚动的 ResultSet,那么默认创建的 ResultSet 是不支持滚动的。Statement stat = (Statement) conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);//05、执行Sql并获取结果ResultSet rs = stat.executeQuery(sql);rs.last();//定位到最后一行int totalRows = rs.getRow();System.out.println("一共有:" + totalRows + "行");rs.beforeFirst();//定位到第一行前//06、处理返回结果while(rs.next()) {System.out.println(rs.getInt("stu_id") + "\t" + rs.getString("stu_name"));}//07、关闭资源rs.close();stat.close();conn.close();}/** 通过JDBC连接Postgres数据* 实现数据读写操作*/public static void jdbcPostgresWrite() throws ClassNotFoundException,SQLException{//01、注册驱动Class.forName("org.postgresql.Driver");//02、获取连接,数据库连接URL,格式为:jdbc:postgresql://主机名:端口/数据库名Connection conn = (Connection) DriverManager.getConnection("jdbc:postgresql://localhost:5432/mydb1", "liyongjie", "liyongjie");//03、定义SqlString sql = "insert into schema1.student_t(stu_id,stu_name,stu_sex,stu_age) values("+"1" + "," + "'王五'" + "," + "'男'" + "," + "20" + ")";//04、获取执行者对象Statement stat = conn.createStatement();//05、执行Sql并获取结果boolean resultFlag = stat.execute(sql);//06、判断执行结果if(resultFlag){System.out.println("插入数据成功");}//07、关闭资源stat.close();conn.close();}}


http://www.mrgr.cn/news/8014.html

相关文章:

  • 利用API返回值实现商品信息的自动化更新
  • git提交项目,报403无权限
  • 福特汽车削减电动车计划,聚焦成本控制
  • 支持2.4G频秒变符合GB42590的标准的飞行器【无人机GB42590发射端】
  • Springboot统一给redis缓存的Key加前缀
  • 【网络】传输层协议——TCP协议(初阶)
  • Java JNA调用C函数常见问题及解决方法
  • Elasticsearch核心
  • 开发者学习类网站
  • 第二课《动态规划》
  • Swift 可选链
  • 区块链的搭建与运维4
  • 芯片后端之 PT 使用 report_timing 产生报告 之 常用命令
  • adb install
  • 火语言RPA流程组件介绍--获取/结束进程
  • 2.2 python基础知识复习——python面向对象的原理和代码详解
  • Nginx 405 not allowed
  • 代码随想录算法训练营第55天| 并查集 107.寻找存在的路径
  • 开发团队学会应对突发的技术故障和危机
  • Rust 学习笔记 2:猜数字游戏