JDBC操作MySQL中的表
Posted 夕西行
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDBC操作MySQL中的表相关的知识,希望对你有一定的参考价值。
在数据库test里先创建表school,内容如下
创建接口对象:
Statement stmt=con.createStatement(); //创建语句(Statement)
ResultSet res=stmt.executeQuery("selcet * from school"); //执行查询(execute query),结果集,以表school为例
ResultSet接口常用方法:
行:
next() 表格指针向下移动一行(初始在第一行上方,不指向任何一行)
first() 表格指针到第一行
last() 表格指针到最后一行
列:
getInt()
getDouble()
getString()
getObject() 等
定位列的方式:以getString为例
getString(String 列名) //用表头名来定位列
getString(int 第几列) //用列数来定位列,从1开始,而不是0
查询test库中school表的结果:
import java.sql.*; public class Demo { public static void main(String[] args) { //定义为null,因为它们是数据流,之后要finally依次关闭 Connection con = null;//连接接口 Statement stmt = null;//语句接口 ResultSet rs = null;//结果集接口 try { Class.forName("com.mysql.cj.jdbc.Driver");//加载驱动 String url = "jdbc:mysql://localhost:3306/test?serverTimezone=UTC&characterEncoding=utf8&useSSL=false"; con = DriverManager.getConnection(url, "root", "123456");//连接数据库test //System.out.println(con);//查看结果,确认是否连接成功 stmt = con.createStatement();//创建语句(Statement)对象 rs = stmt.executeQuery("select * from school;");//执行查询(execute query),表school后的分号可以不写。 while (rs.next()) {//下一行 int id = rs.getInt("id");//或1,第一列值 String name = rs.getString(2); String sex = rs.getString(3); String birthday = rs.getString(4); System.out.println("编号=" + id + " 姓名=" + name + " 性别=" + sex + " 生日=" + birthday); } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } finally {//注意流的关闭顺序 if (rs != null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } if (stmt != null) { try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); } } if (con != null) { try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } } } }
以上是关于JDBC操作MySQL中的表的主要内容,如果未能解决你的问题,请参考以下文章
关于mysql驱动版本报错解决,Cause: com.mysql.jdbc.exceptions.jdbc4Unknown system variable ‘query_cache_size(代码片段