Java之JDBC-ResultSet(结果集)
创始人
2024-05-20 03:23:49

在这里插入图片描述
之前的dml语句都返回值都是int表示有改动的行数
那么Select可是要展示数据的

SELECT查询的结果
通过这个ResultSet遍历
然后通过next方法来一行行读取数据
类似于迭代器(肯定不是迭代器)
里面还包含获得的数据元素
相当于这个既包含元素,还能迭代自己的元素
具体你看底层

不过不能直接输出,我们需要一列一列数据获取(Get数据类型(第几列))
案列

package yuan.hsp.JDBC;import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;import com.mysql.jdbc.Driver;
@SuppressWarnings("all")
public class 结果集 {
public static void main(String[] args) throws SQLException, ClassNotFoundException {Class.forName("com.mysql.jdbc.Driver");Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/db02", "root", "123456");Statement createStatement = connection.createStatement();String sql="select id,name,sex,borndate from actor";ResultSet executeQuery = createStatement.executeQuery(sql);//和之前的execute不同,executeQuery返回一个ResultSet//用while取出数据while (executeQuery.next()) {//没有数据返回falseint id=executeQuery.getInt(1);//获取该行第一列数据String name=executeQuery.getString(2);//第二列String sex=executeQuery.getString(3);//第三列Date date = executeQuery.getDate(4);//第四列System.out.println(id+name+sex+date);}//关闭createStatement.close();connection.close();}
}

底层

ResultSet实际上是一个接口
真正的类型
在这里插入图片描述
是这个黄线表的
是由我们的数据厂商实现
ResultSet里面有
一个rowData的数据结构
在这里插入图片描述
这里面还有一个elementData数据类型
数据其实就放在这个elementData数组里面
在这里插入图片描述
当然存储的都是ASCLL码
在这里插入图片描述
jack对应的ASCLL码-106 97 99 107
用字节数组存储每一个对应的字符呗

相关内容

热门资讯

世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...