7 .简述数据库事务的生命周期?(可画流程图)
答案:无。
8.delete from tablea& truncate table tablea的区别
答案:
truncate 语句执行速度快,占资源少,并且只记录页删除的日志; delete 对每条记录的删除均需要记录日志
三、JDBC相关测试题(二)
选择题
1. 有关JDBC的选项正确的是哪一个?
A. JDBC是一种被设计成通用的数据库连接技术,JDBC技术不光可以应用在Java程
序里面,还可以用在C++这样的程序里面。
B. JDBC技术是SUN公司设计出来专门用在连接Oracle数据库的技术,连接其他的
数据库只能采用微软的ODBC解决方案
C. 微软的ODBC和SUN公司的JDBC解决方案都能实现跨平台使用,只是JDBC的性能
要高于ODBC
D. JDBC只是个抽象的调用规范,底层程序实际上要依赖于每种数据库的驱动文件 2. 选择JDBC可以执行的语句(多选) A. DDL B. DCL C. DML D. 以上都可以
3. 选择Java程序开发中推荐使用的常用数据库(多选) a. Oracle
b. SQL Server 2000 c. MySQL
d. DB2
4. 哪个不是JDBC用到的接口和类? a. System b. Class c. Connection d. ResultSet
5. 使用Connection 的哪个方法可以建立一个PreparedStatement接口?
A. createPrepareStatement() B. prepareStatement()
C. createPreparedStatement() D. preparedStatement() 6. 下面的描述正确的是什么?
A. PreparedStatement继承自Statement B. Statement继承自PreparedStatement C. ResultSet继承自Statement
D. CallableStatement继承自PreparedStatement 7. 下面的描述错误的是什么?
A. Statement的executeQuery()方法会返回一个结果集
B. Statement的executeUpdate()方法会返回是否更新成功的boolean值 C. 使用ResultSet中的getString()可以获得一个对应于数据库中char类型的
值
D. ResultSet中的next()方法会使结果集中的下一行成为当前行 8. 如果数据库中某个字段为numberic型,可以通过结果集中的哪个方法获取?
A. getNumberic() B. getDouble() C. getBigDecimal () D. getFloat()
9. 在Jdbc中使用事务,想要回滚事务事务的方法是什么?
A. Connection的commit() B. Connection的setAutoCommit() C. Connection的rollback() D. Connection的close()
10. 在JDBC编程中执行完下列SQL语句SELECT name, rank, serialNo
FROM employee,能得到rs的第一列数据的代码是哪两个? A. rs.getString(0); B. rs.getString(\C. rs.getString(1); D. rs.getString(\
11. 下面关于PreparedStatement的说法错误的是什么
A. PreparedStatement继承了Statement B. PreparedStatement可以有效的防止SQL注入 C. PreparedStatement不能用于批量更新的操作
D. PreparedStatement可以存储预编译的Statement,从而提升执行效率 12. 下面的选项加载MySQL驱动正确的是哪一个?
A. Class.forname(\B. Class.forname(\C. Class.forname(\D. Class.forname(\13. 下面的选项加载MySQL驱动正确的是哪一个?
A. Class.forname(\B. Class.forname(\C. Class.forname(\D. Class.forname(\14. 下面代码加载Oracle驱动正确的是哪一个?
A. DriverManager.register(\B. DriverManager.forname(\C. DriverManager.load(\
D. DriverManager.newInstance(\15. 有关Connection描述错误的是哪一个?
A. Connection是Java程序与数据库建立的连接对象,这个对象只能用来连接
数据库,不能执行SQL语句。
B. JDBC的数据库事物控制要靠Connection对象完成。
C. Connection对象使用完毕后要及时关闭,否则会对数据库造成负担。 D. 只用MySQL和Oracle数据库的JDBC程序需要创建Connection对象,其他
数据库的JDBC程序不用创建Connection对象就可以执行CRUD操作。
16. 下面有关JDBC事物的描述正确的是哪一个?
A. JDBC事物默认为自动提交,没执行一条SQL语句就会开启一个事物,执行完毕
之后自动提交事物,如果出现异常自动回滚事物。
B. JDBC的事物不同于数据库的事物,JDBC的事物依赖于JDBC驱动文件,拥有
独立于数据库的日志文件,因此JDBC的事物可以替代数据库事物。 C. 如果需要开启手动提交事物需要调用Connection对象的start()方法。 D. 如果事物没有提交就关闭了Connection连接,那么JDBC会自动提交事物。 17. 下列的预编译SQL哪一个是正确的?
A. SELECT* FROM ?;
B. SELECT ?,?,? FROM emp ;
C. SELECT * FROM emp WHERE salary>(?) D. 以上都不对
18. 能执行预编译SQL的是哪一个选项?
A. Statement
B. PreparedStatement C. PrepareStatement D. 以上都不是