第13章课后作业
一、选择题
1. 假设已经获得ResultSet对象,那么获取第一行数据的正确语句是()
A. rs.hasNext()
B. rs.next();
C. rs.nextRow();
D. rs.hasNextRow()
2. 假设已经获得一个数据库连接 ,使用变量conn表示,下列语句中能够正确获得结果集的有()
A. Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(“select * from Student”);
B. Statement stmt = conn.createStatement(“select * from Student”);
ResultSet rs = stmt.executeQuery();
C. PreparedStatement stmt = conn.prepareStatement();
ResultSet rs = stmt.executeQuery(“select * from Student”);
D. PreparedStatement stmt = conn.prepareStatement(“select * from Student”);
ResultSet rs = stmt.executeQuery();
3. 给定如下java代码片断,假设查询语句是select id , creator from FirstLevelTitle , 并且已经获得了相应结果集对象,使用变量rs表示,现在要在控制台上输出 FirstLevelTitle表中各行“creator”列(字段类型为varchar)的值,可以填入下划线的代码是() (选两项)
while(rs.next() ){
int id = rs.getInt(“id”);
String creator = ________;
System.out.println(creator);
}
A. rs.getString(“creator”);
B. rs.getString(1);
C. rs.getString(2);
D. rs.getString(creator);
4. 下面的描述错误的是 ( )
A. Statement的executeQuery()方法会返回一个结果集
B. Statement的executeUpdate()方法会返回是否更新成功的boolean值
C. 使用ResultSet中的getString()可以获得一个对应于数据库中char类型的值
D. ResultSet中的next()方法会使结果集中的下一行成为当前行
二、 简答题
1. 根据你的理解,简述使用Statement与PreparedStatement区别
2. 描述JDBC查询数据的步骤
三、 编程题
1. 在MySQL中创建一个表Student,表结构如下所示,向其中添加一条或多条测试数据。完成以下要求:
(1) 编写代码查询出目前表中记录总数
(2) 查询所有记录,并在控制台中输出每行数据。
字段名称 | 字段说明 | 数据类型 | 大小 |
Id | 序号 | Int | |
Name | 姓名 | Varchar | 50 |
2. 使用MySchool数据库实现功能:用户输入年级编号,查询该年级各科目的平均成绩。运行效果如下:
本文来源:https://www.2haoxitong.net/k/doc/85e95fabcd7931b765ce0508763231126fdb771b.html
文档为doc格式