1.下列不属于接口的是
A.Statement
B.PreparedStatement
C.Driver
D.DriverManager
D
2. 关于ResultSetMetaData API描述错误的是
A.getColumnCount() 返回列的数目
B.getColumnTypeName(int index) 返回指定列的类型的名称
C.getColumnType(int index) 返回字符串表示形式的指定列的类型
D.isNullable 指定列是否为空
C
3.emp表数据如下
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
----- ---------- --------- ----- ----------- --------- --------- ------
7369 SMITH CLERK 7902 1980/12/17 800.00 20
7499 ALLEN SALESMAN 7698 1981/2/20 1600.00 0.00 30
下面代码输出的结果是:
...
ResultSet rs = stmt.executeQuery ("select comm from emp");
while(rs.next())
{
System.out.println(rs.getDouble(1) + "," +rs.wasNull());
}
A.0, true 0, false
B.null, true 0,false
C.0, false 0, false
D.0, true 0, true
A
4.下面的代码用于将存放于文件中的图片信息(mouse.bmp)和文本信息(some.xml)插入到Oracle数据库(Oracle 10g 以上驱动)
应该填入的代码是:
public void testSaveLOB() throws Exception {
Connection con = DBUtils.getConnection();
PreparedStatement stmt = con .prepareStatement("insert into sd_user (id, photo,mem) values(?,?,?)");
stmt.setInt(1, 30); File file = new File("d:/mouse.bmp");
FileInputStream fis = new FileInputStream(file);
< 填入代码 >
File xml = new File("d:/some.xml");
InputStreamReader reader = new InputStreamReader(new FileInputStream( xml), "utf-8");
< 填入代码 >
int n = stmt.executeUpdate();
System.out.println(n);
fis.close();
stmt.close();
con.close();
}
A.stmt.setStream(2, fis, (int) file.length());
stmt.setReader(3, reader, (int) xml.length());
B.stmt.setBinaryStream(2, fis, (int) file.length());
stmt.setCharacterStream(3, reader, (int) xml.length());
C.stmt.setInputStream(2, fis, (int) file.length());
stmt.setCharacterStream(3, reader, (int) xml.length());
D.stmt.setBinaryStream(2, fis, (int) file.length());
stmt.setFileReader(3, reader, (int) xml.length());
B
5.下面描述不属于连接池的功能的是
A.可以缓解连接频繁的关闭和创建会造成系统性能的下降
B.可以大幅度提高查询语句的执行效率
C.可以限制客户端的连接数量
D.可以提高系统的伸缩性
B
6.下面的代码用于实现对emp表的分页查询(Oracle),在每页10行的前提下查询第8页的语句是:
A.String sql = "select ename,sal from emp where limit ?,?" ;
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setInt(1,10*7+1+10); stmt.setInt(2,10*7+1);
stmt.executeQuery();
...
B.String sql = "select ename,sal from emp limit ?,?";
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setInt(1,10*7+1+10);
stmt.setInt(2,10*7+1);
stmt.executeQuery();
C.String sql = "select ename, sal from emp (select enam, sal, rownum n from foo where rownum>=?) where n"
PreparedStatement stmt = con.