实验三 JDBC基础(2)
一、相关知识点
1、JDBC基本概念
2、JDBC简单查询、preparedstatement、连接查询、集函数查询等 Odbc:
Jdbc:
二、实验目的:
理解Java连接数据库的基本概念。理解Statement对象、PreparedStatement对象和ResultSet对象。
三、实验内容:
1、 游标滚动模式试验。
第一步:将RsTest类放入对应的工程包中cn.edu.zucc.booklib.rstest; 第二步:在BeanSystemUser表中增加一些测试数据; 第三步:运行程序,并查看执行结果。
第四步:将游标滚动模式改成TYPE_SCROLL_SENSITIVE,运行程序,并查看结果
【实验结果与分析】
A、 第三步、第四步运行结果截图? 并说明区别。 第三步:
第四步:修改前
第四步:修改后
B、
说明下列ResultSet方法的用途和返回值 方法 rs.next() 用途 将当前游标下后移动一行 返回值说明 如果返回true表示新位置有数据;否则表示游标移动前已经是最后一行了 列值;如果值为 SQL NULL,则返回值为 null 如果光标现在位于有效行上,则返回 true;如果光标位于第一行的前面,则返回 false rs.getString(1) 以 Java 编程语言中 String 的形式获取此 ResultSet 对象的当前行中指定列的值。 将光标移动到此 ResultSet 对象的上一行。 rs.previous(); rs.isBeforeFirst() 获取光标是否位于此 ResultSet 如果光标位于第一行之前,则返回 对象的第一行之前。 true;如果光标位于任何其他位置或者结果集不包含任何行,则返回 false rs.last(); 将光标移动到此 ResultSet 对象的最后一行。 获取当前行编号。第一行为 1 号,第二行为 2 号,依此类推。 rs.absolute(row) 将光标移动到此 ResultSet 对象的给定行编号。 如果行编号为正,则将光标移动到相对于结果集开头的给定行编号。第一行为行 1,第二行为行 2,依此类推。 如果给定行编号为负,则将光标移动到相对于结果集末尾的绝对行位置。 试图将光标置于结果集的第一行/最后一行之外将导致光标位于第一行之前或最后一行之后。 将光标移动到此 ResultSet 对象的开头,正好位于第一行之前。如果结果集中不包含任何行,则此方法无效。 用途 将当前游标下后移动一行 如果光标移动到此 ResultSet 对象的位置处,则返回 true;如果光标在第一行的前面或最后一行的后面,则返回 false 如果光标位于有效行,则返回 true;如果结果集中不存在任何行,则返回 false 当前行的编号;如果不存在当前行,则返回 0 rs.getRow() rs.beforeFirst() 方法 rs.next() 返回值说明 如果返回true表示新位置有数据;否则表示游标移动前已经是最后一行了 如果返回true表示新位置有数据;否则表示游标移动前已经是第一一行了 rs.getString(1) rs.previous(); 取当前记录第一列的值 将当前游标向前移动一行 rs.isBeforeFirst() rs.last(); rs.getRow() rs.absolute(row) rs.beforeFirst() 测试光标位置 将光标定位到结果集中最后一行 得到当前行 光标定位到row行 将光标定位到结果集中第一行之前。
2、 利用ResultSet对象进行数据修改
第一步:将RsTest2类放入对应的工程包中cn.edu.zucc.booklib.rstest;
第二步:运行程序,并查看执行结果。
第三步:删除rs.updateRow(); 允许程序,并查看执行结果
【实验结果与分析】 A、
请给出第二步、第三步的执行截图。说明区别,并分析原因。 第二步:
第三步:
3、 利用PreparedStatement对象修改实验二的两个对出版社的查询。
第一步:在实验二的基础上,把传入的查询条件(出版社名称)改成带单引号的字符串,并运行程序。查看执行结果。
第二步:将原来的查询函数,改成用PreparedStatement。运行程序,查看执行结果。通用把传入的查询条件(出版社名称)改成带单引号的字符串,并运行程序。查看执行结果。
【实验结果与分析】 A、
第一步执行结果截图。