第十章 JDBC 题库

1、下面关于JDBC驱动器API与JDBC驱动器关系的描述,正确的是()

A、 JDBC驱动器API是接口,而JDBC驱动器是实现类

B、 JDBC驱动器API内部包含了JDBC驱动器

C、 JDBC驱动器内部包含了JDBC驱动器API

D、 JDBC驱动器是接口,而JDBC驱动器API是实现类

答案: A

2、以下选项中,有关Connection描述错误的是( )

A、 Connection是Java程序与数据库建立的连接对象,这个对象只能用来连接数据库,不能执行SQL语句。

B、 JDBC的数据库事务控制要靠Connection对象完成。

C、 Connection对象使用完毕后要及时关闭,否则会对数据库造成负担。

D、 只有MySQL和Oracle数据库的JDBC程序需要创建Connection对象,其他数据库的JDBC程序不用创建Connection对象就可以执行CRUD操作。

答案: D

3、使用Connection 的哪个方法可以建立一个PreparedStatement接口?( )

A、 createPrepareStatement()

B、 prepareStatement()

C、 createPreparedStatement()

D、 preparedStatement()

答案: B

4、下面选项中描述错误的是( )

A、 Statement的executeQuery()方法会返回一个结果集

B、 Statement的executeUpdate()方法会返回是否更新成功的boolean值

C、 Statement的execute ()方法会返回boolean值 ,含义是是否返回结果集

D、 Statement的executeUpdate()方法会返回值是int类型,含义是DML操作影响记录数

答案: B
解析:Statement的executeUpdate()方法用于执行SQL中的insert、update、delete语句,该方法返回一个int类型的值,表示数据库中受该SQL语句影响的记录条数。

5、以下选项中,关于PreparedStatement的说法错误的是()

A、 PreparedStatement继承了Statement ,可以执行预编译的SQL语句

B、 PreparedStatement可以有效的防止SQL注入

C、 PreparedStatement只能执行带问号占位符的预编译SQL,不能执行SQL语句

D、 PreparedStatement可以存储预编译的SQL语句,从而提升执行效率

答案: C

6、下列选项中,关于Statement描述错误的是()

A、 Statement是用来执行SQL语句的

B、 Statement是PreparedStatement的子接口

C、 获取Statement实现需要使用Connection的createStatement()方法

D、 PreparedStatement能使用参数占位符,而Statement不行

答案: B
解析:PreparedStatement是Statement的子接口

7、Statement接口中executeQuery()方法的返回值是()

A、 ResultSet

B、 int

C、 Boolean

D、 Result

答案: A
解析:Statement接口中executeQuery()方法返回一个表示查询结果的ResultSet对象。

8、下列选项,可用于存储结果集的对象是()

A、 ResultSet

B、 Connection

C、 Statement

D、 PreparedStatement

答案: A

9、SELECT COUNT(*) FROM emp;这条SQL语句执行,如果员工表中没有任何数据,那么ResultSet中将会是()

A、 null

B、 有数据

C、 不为null,但是没有数据

D、 以上都选项都不对

答案: B

10、如果为预编译SQL UPDATE emp SET ename=?,job=?,salary=? WHERE empno=? 的第三个问号赋值,那么正确的选项是()

A、 pst.setInt("3",2000);

B、 pst.setInt(3,2000);

C、 pst.setFloat("salary",2000);

D、 pst.setString("salary","2000");

答案: B

11、下列选项中,能够执行带参数占位符SQL语句的是()

A、 Statement

B、 Connection

C、 PreparedStatement

D、 ResultSet

答案: C

12、以下操作数据库结束后关闭资源顺序合理的是()

A、 ResultSet>Statement(或PreparedStatement)->Connection

B、 Connection>Statement(或PreparedStatement)->ResultSet

C、 Statement(或PreparedStatement)>ResultSet->Connection

D、 以上都错误

答案: A

13、下面选项中,属于JDBC实现的是()

A、 JDBC驱动管理器

B、 JDBC驱动器API

C、 JDBC驱动器

D、 Java程序

答案: ABC

14、下列选项有关ResultSet说法错误的是()

A、 ResultSet是查询结果集对象,如果JDBC执行查询语句没有查询到数据,那么ResultSet将会是null值

B、 判断ResultSet是否存在查询结果集,可以调用它的next()方法

C、 如果Connection对象关闭,那么ResultSet也无法使用

D、 ResultSet有一个记录指针,指针所指的数据行叫做当前数据行,初始状态下记录指针指向第一条记录

答案: AD

15、下面关于 ResultSet接口中getXXX()方法的描述正确的是()

A、 可以通过字段的名称来获取指定数据

B、 可以通过字段的索引来获取指定的数据

C、 字段的索引是从1开始编号的

D、 字段的索引是从0开始编号的

答案: ABC

16、在JDBC编程中执行完下列SQL语句SELECT name, rank, serialNo FROM employee,能得到rs的第一列数据的代码是( )

A、 rs.getString(0);

B、 rs.getString("name");

C、 rs.getString(1);

D、 rs.getString("ename");

答案: BC

17、JDBC对Java程序员而言是接口模型,对实现与数据库连接的服务提供商而言是API。

答案: 错误
解析:JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。

18、如果我们想要取得ResultSet里的某一条记录,可以使用ResultSet的next()方法。

答案: 正确

19、ResultSet对象自动维护指向当前数据行的游标,每调用一次next()方法,游标向下移动一行, 循环完毕后指回第一条记录。

答案: 错误
解析:ResultSet对象自动维护指向当前数据行的游标,每调用一次next()方法,游标向下移动一行。如果下一行没有数据,返回false。

20、作为一种好的编程风格,应在不需要Statement对象和Connection对象时显式地关闭它们。

答案: 正确

21、PreparedStatement是Statement的子接口,用于执行预编译的SQL语句。

答案: 正确
解析:PreparedStatement是Statement的子接口,用于执行预编译的SQL语句。

22、Statement接口的executeUpdate(String sql)返回值是int,它表示数据库中受该SQL语句影响的记录的数目。

答案: 正确

23、ResultSet接口表示select查询语句得到的结果集,该结果集封装在一个逻辑表格中。

答案: 正确

24、CallableStatement是PreparedStatement的子接口,用于执行SQL存储过程。

答案: 错误

25、Statement接口的execute(String sql)返回值是boolean,它代表sql语句的执行是否成功。

答案: 错误
解析:可用于执行任何SQL语句,返回一个boolean值,表明执行该SQL语句是否返回了查询结果。如果执行的SQL语句有查询结果,则返回true,否则返回false。

26、对于相同的SQL语句,Statement对象每次执行时,也都会对其进行编译。

答案: 正确

27、应用程序可以直接与不同的数据库进行连接,而不需要依赖于底层数据库驱动。

答案: 错误
解析:应用程序与数据库连接需要依赖底层驱动。

28、JDBC访问数据库后,不需要手动关闭数据库资源。

答案: 错误
解析:JDBC访问数据库后,需要手动关闭数据库连接,释放资源,以重复利用资源。

29、当ResultSet的 Statement 关闭、重新执行或用于从多结果序列中获取下一个结果时,该ResultSet将被自动关闭。

答案: 正确

30、关闭资源时,按先ResultSet结果集,后Statement,最后Connection的顺序关闭资源。

答案: 正确
解析:关闭资源时,按先ResultSet结果集,后Statement,最后Connection的顺序关闭资源。

31、为了保证在异常情况下也能关闭资源,需要在try...catch的finally代码块中统一关闭资源。

答案: 正确
解析:为了保证在异常情况下也能关闭资源,需要在try...catch的finally代码块中统一关闭资源。

32、每次操作数据库结束后都要关闭数据库连接,资源的关闭顺序与打开顺序相同。

答案: 错误
解析:每次操作数据库结束后都要关闭数据库连接,资源的关闭顺序与打开顺序相反。

33、【】是一种用于执行SQL语句的Java API,为多种关系数据库提供统一访问。

答案: JDBC;

34、加载JDBC驱动是通过调用【】方法实现的。

答案: java.lang.Class.forName();

35、JDBC与数据库建立连接是通过调用 DriverManager类的静态方法 【】实现的。

答案: getConnection(url,username,password);

36、【】对象是executeQuery()方法的返回值,它被称为结果集,它通过一套getXXX方法提供了对这些行中数据的访问。

答案: ResultSet;

37、【】对象自动维护指向当前数据行的游标,每调用一次next() 方法,游标向下移动一行。

答案: ResultSet;

38、JDBC通过Statement类所提供的方法,可以利用标准的SQL对数据库进行【】 、【】 、【】 操作。

答案: 新增;插入;修改;

39、Statement接口提供了最常见的执行SQL的方法是【】和【】。

答案: createQuery();createUpdate();

40、当批量更新对象时,采用【】创建对象效率较高,且在SQL语句中使用?占位符;采用【】创建则效率较低。

答案: preparedStatement;Statement;

41、通过Connection实例的createStatement()方法获得的接口对象【】,会把静态的SQL语句发送到数据库中编译执行,然后返回数据库的处理结果。

答案: Statement;

42、PreparedStatement是Statement的子接口,用于执行【】的SQL语句。

答案: 预编译;

43、ResultSet接口中,能将游标移动到此 ResultSet 对象的最后一行的方法是【】。

答案: last();

44、Statement接口的executeUpdate(String sql)方法用于执行SQL中的insert、【】和delete语句。

答案: update;

45、Connection接口的【】方法用于创建一个PreparedStatement对象来将参数化的SQL语句发送到数据库。

答案: prepareStatement(String sql);

46、Statement接口的executeQuery(String sql)方法用于执行SQL的【】语句。

答案: select;

47、【】接口表示select语句得到的结果集,并将该结果集封装在一个逻辑表格中。

答案: ResultSet;

48、加载数据库驱动通常调用Class类的静态方法【】来实现。

答案: forName();

49、在JDBC中,事务操作成功后,系统将自动调用【】 方法 提交,否则调用rollback()回滚。

答案: commit();

50、JDBC常用API 中,【】类用于加载JDBC驱动并且创建与数据库的连接。

答案: DriverManager;

51、在编写JDBC应用程序时,必须要把指定数据库驱动程序或类库加载到【】中。

答案: classpath;

52、DriverManager中提供了一个【】方法来获取数据库连接。

答案: getConnection();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

还没有名字哦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值