JDBC中resutset接口操作实例详解
更新时间:2017年09月23日 16:08:45 作者:小明遇小红
这篇文章主要介绍了JDBC中resutset接口操作实例详解,代码示例注释比较详细,需要的朋友可以参考下。
本文主要向大家展示JDBC接口中resutset接口的用法实例,下面我们看看具体内容。
1. ResultSet细节1
功能:封锁结果集数据
操作:如何获得(取出)结果
package com.sjx.a; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import org.junit.Test; //1. next方法,向下移动并判断是否有内容 //2. getXXX方法,根据列索引或列名获得列的内容 public class Demo { @Test public void fun1() throws Exception{ //1 注册驱动 Class.forName("com.mysql.jdbc.Driver"); //2 获得连接 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/day05", "root", "1234"); //3 创建Statement Statement st = conn.createStatement(); //4 书写sql String sql = "select * from t_user" ; //5 执行sql ResultSet rs = st.executeQuery(sql); //向下移动一行,并判断 while(rs.next()){ //有数据 //取数据:getXXX int id = rs.getInt(1);//获得第一列的值 //int id rs.getInt("id");// 获得id列的值 String name = rs.getString(2);//获得第二列的值 int age = rs.getInt(3);//获得第三列的值 System.out.println(id+"==>"+name+"==>"+age); //rs.gettimestamp(columnIndex) } //6关闭资源 st.close(); conn.close(); } /* 数据库类型 java类型 int int double double decimal double char String varchar String datetime Date timestamp Timestamp/Date */ }
2.ResultSet细节2
结果集的滚动-->移动结果集的指针就是滚动
结果集反向修改数据库
package com.sjx.a; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import org.junit.Test; public class Demo2 { @Test public void fun1() throws Exception{ //1 注册驱动 Class.forName("com.mysql.jdbc.Driver"); //2 获得连接 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/day05", "root", "1234"); //3 创建Statement Statement st = conn.createStatement(); //4 书写sql String sql = "select * from t_user" ; //5 执行sql ResultSet rs = st.executeQuery(sql); //倒着遍历 //1> 光标移动到最后一行之后 rs.afterLast(); //2> 遍历=> while(rs.previous()){//向上移动光标,并判断是否有数据 int id = rs.getInt("id");// 获得id列的值 String name = rs.getString("name");//获得第二列的值 int age = rs.getInt("age");//获得第三列的值 System.out.println(id+"==>"+name+"==>"+age); } //6关闭资源 st.close(); conn.close(); } /* 数据库类型 java类型 int int double double decimal double char String varchar String datetime Date timestamp Timestamp/Date */ }
3.使用ResultSet修改记录
package com.sjx.a; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import org.junit.Test; //ResultSet细节 // 2.结果集反向修改数据库 public class Demo3 { @Test public void fun1() throws Exception{ //1 注册驱动 Class.forName("com.mysql.jdbc.Driver"); //2 获得连接 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/day05", "root", "1234"); //3 创建Statement Statement st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE); //4 书写sql String sql = "select * from t_user" ; //5 执行sql ResultSet rs = st.executeQuery(sql); //使用结果集 反向修改数据库 rs.next();//将光标移动到第一行 rs.updateString("name", "汤姆");// 修改第一行name列的值为中文汤姆 rs.updateRow();// 确认修改 //6关闭资源 st.close(); conn.close(); } }
总结
以上就是本文关于JDBC中resutset接口操作实例详解的全部内容了,希望对大家有所帮助。有兴趣的朋友欢迎参阅更多有关JDBC的文章:BaseJDBC和CRUDDAO的写法实例代码、Spring jdbc中数据库操作对象化模型的实例详解、Java基于jdbc连接mysql数据库操作示例等,在此也希望大家对脚本之家网站多多支持!
最新评论