JDBC初体验3

JDBC案例3

1.回顾案例2

从案例2我们进行了增删改操作,都是使用executeUpdate()方法,返回值都是1
现在使用查询操作,因为查询是要获取结果集(二维的),所以使用executeQuery()方法,
返回的数据类型是ResultSet

2.直接上代码

1.先准备数据表
数据库中的数据表
准备的一条数据
在这里插入图片描述

细节:id是主键,自增长
username是字符串类型
password也是
nickname这个字段也是
不一定都要写,写一个id和username也可以

2.获取结果集
在这里插入图片描述

细节:因为直接我们进行的是update操作,所以现在进行query操作,要更新sql语句
以及Preparedstatement对象对应的应该是查询的
得到的结果集ResultSet类型,是一个二维的
next()指光标往下移动一行好比上面这张数据表,往下一行就是读取一条记录
接下来就是到了每行怎么读取数据

3.读取数据
在这里插入图片描述

从结果集中读取数据,肯定是get啦,getInt()表示读取int类型,
我们的数据表的id是int类型,所以用它,为什么传入的参数是"id"???
因为数据表的字段名是id,所以传入"id"
细节,当我们传入数据表的字段名时,是传入字符串,可不是直接getInt(id)!!!

4.测试输出
在这里插入图片描述
结果
在这里插入图片描述

细节:
1.不难发现 executeUpdate()方法,只要执行了,也就是sql语句格式正确,但是没有达到你要的效果,它也是返回1这个返回值.有点拗口,解释下
解释: 我数据表就一条数据,id是等于1的,而我想要删除id=2的这条记录,虽然没有真的删除,但是它确实执行了,也就意味着它这条sql执行成功便返回1,不管是否真的影响了数据表
2.理解这个next()方法,它就是起一个引导作用,引导结果集读取哪行数据,它的返回值是boolean类型,而我们使用了while死循环,只有false时才会退出,也就是指的这行数据不存在数据时才会退出!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值