1
数据字典是数据库系统中最重要的数据之一,是DBMS记录“表”的定义的数据,当然也保存着关于“表”的各种运行参数。DBMS中的数据字典可以________。
A.
用SQL语言查询
B.
由任何用户使用
C.
没有
D.
由用户创建
A
2
数据字典通常是由下面哪个组成_________。
A.
表和视图
B.
用户和权限
C.
角色和视图
D.
用户和表
A
3
下面关于数据字典的描述中,不正确的是________。
A.
数据字典是用户通过SQL-DML(SELECT, UPDATE, DELETE, INSERT)建立和维护的;
B.
数据字典是元数据而不是数据本身
C.
数据字典通常也用二维表结构存储相关的数据
D.
数据字典是DBMS维护和查询数据库所依赖的重要数据
A
4
以下关于JDBC的叙述,不正确的是_________。
A.
JDBC通过一组Java接口实现其目标
B.
JDBC使用java.sql.DriverManager类和java.sql.Driver类连接到数据库
C.
JDBC可做三件事:与数据库建立连接、创建SQL语句对象并执行、返回结果数据集并提取数据给高级语言程序
D.
JDBC是一种用于执行SQL语句的Java API 的面向对象的应用程序接口
B
5
应用程序使用JDBC API访问数据库的具体实施过程有4步:
(1) 通过URL得到一个Connection对象, 建立数据库连接;
(2) 创建一个Statement对象(PreparedStatement或CallableStatement),用来查询或者修改数据库;
(3) 传递一个Driver给DriverManager,加载数据库驱动;
(4) 执行查询并返回一个ResultSet,提取数据到应用程序。
若要使用这四步,正确顺序是_________。
A.
3124
B.
3214
C.
1234
D.
1324
A
6
JDBC核心API中对特定的数据库执行SQL语句的类是_________。
A.
java.sql.Statement
B.
java.sql.PreparedStatement
C.
java.sql.CallableStatement
D.
java.sql.ResultSet
A
7
下列关于动态SQL语句的叙述中,不正确的是_________。
A.
动态SQL 语句是SQL 标准提供的一种语句运行机制
B.
动态SQL 语句是指在程序编译时尚未确定,需要在程序执行过程中临时生成的SQL语句
C.
SQL 标准引入动态SQL 语句的原因是由于静态SQL 语句不能提供足够的编程灵活性
D.
SQL 标准提供的动态SQL 语句的执行方式只有立即执行方式
D
8
下列关于动态SQL、静态SQL的叙述中,不正确的是_________。
A.
SQL语句在程序中已经按要求写好,体现为一个可执行的SQL语句,把一些参数通过变量传送给SQL语句即可执行,这是静态SQL
B.
SQL语句在程序中动态构造,体现为一个字符串,然后再交给DBMS执行,执行时可以传递变量,这是动态SQL
C.
动态SQL语句的执行方式只能是Prepare-Execute-Using方式,即预编译-传递参量并执行
D.
动态SQL 语句是指在程序编译时尚未确定,需要在程序执行过程中临时生成的SQL语句
C
9
SQLCA和SQLDA是嵌入在C语言中的SQL语言经常使用的两种数据结构。关于SQLCA和SQLDA,下列说法正确的是_________。
A.
SQLCA是SQL通讯区,记录着SQL语句被DBMS执行后返回的状态信息;SQLDA是SQL描述区,记录着数据库/表等对象的定义信息。
B.
SQLCA是SQL通讯区,记录着数据库/表等对象的定义信息;SQLDA是SQL描述区,记录着SQL语句被DBMS执行后返回的状态信息。
C.
SQLCA是SQL描述区,记录着SQL语句被DBMS执行后返回的状态信息;SQLDA是SQL通讯区,记录着数据库/表等对象的定义信息。
D.
SQLCA是SQL描述区,记录着数据库/表等对象的定义信息;SQLDA是SQL描述区,记录着SQL语句被DBMS执行后返回的状态信息。
A
10
应用程序通过ODBC连接一个数据库服务器的基本步骤如下:
(1) SQLConnect(conn, “aura.bell-labs.com”, SQL_NTS, “avi”, SQL_NTS, avipasswd", SQL_NTS);
(2) SQLAllocConnect(env, &conn);
(3) { …. Do actual work … }
(4) SQLDisconnect(conn);SQLFreeConnect(conn);SQLFreeEnv(env);
其正确的操作次序是_________。
A.
2134
B.
1234
C.
2314
D.
1324
A
11
关于嵌入式SQL语言的思维模式,说法正确的是_________。
A.
建立数据库连接à声明一个游标(游标与SQL语句绑定)à打开游标(执行SQL语句)à循环地获取一条一条记录(属性与高级语言变量绑定)à关闭游标à可循环地再打开到关闭游标à断开数据库连接。
B.
建立数据库连接à请求分配语句句柄(申请内存空间)à用句柄执行SQL(句柄与SQL语句绑定)à建立高级语言变量与句柄属性的对应à循环地获取一条一条记录à释放语句句柄à断开数据库连接。
C.
建立数据库连接à创建语句对象(申请内存空间)à用语句对象执行SQL(语句对象与SQL语句绑定)à返回结果对象à循环地从结果对象获取一条一条记录并提取对象的属性值传给高级语言变量à释放语句对象à断开数据库连接
D.
建立数据库连接à声明一个游标(游标与SQL语句绑定并执行)à打开游标(将执行结果从磁盘放入内存缓冲区)à循环地获取一条一条记录à关闭游标à可循环地再声明游标、打开到关闭游标à断开数据库连接。
A
12
关于下面的思维模式,“建立数据库连接à请求分配语句句柄(申请内存空间)à用句柄执行SQL(句柄与SQL语句绑定)à建立高级语言变量与句柄属性的对应à循环地获取一条一条记录à释放语句句柄à断开数据库连接”。这是关于__________的思维模式。
A.
嵌入式SQL语言。
B.
ODBC
C.
JDBC
D.
其他都不是
B
13
关于下面的思维模式,“建立数据库连接à创建语句对象(申请内存空间)à用语句对象执行SQL(语句对象与SQL语句绑定)à返回结果对象à循环地从结果对象获取一条一条记录并提取对象的属性值传给高级语言变量à释放语句对象à断开数据库连接”。这是关于__________的思维模式。
A.
嵌入式SQL语言
B.
ODBC
C.
JDBC
D.
其他都不是
C
14
SQL语句执行后,需要将结果记录集中的属性值,读到高级语言的变量中,那什么时候建立高级语言变量与属性的绑定,下列说法不正确的是_________。
A.
嵌入式SQL语言:在一条一条地读取记录时(Fetch)建立绑定。
B.
ODBC:在开始一条一条地读取记录之前用专门的语句建立绑定。
C.
JDBC:一条一条记录的,边绑定,边读取相应的属性值。
D.
其他选项说法有不正确的。
D
15
一段构造SQL语句的程序代码如下:
Str_temp =“Select * From Student Where ”;
If (cbx_id.checked = true and len(trim(sle_id.text))>0) then
Str_temp= Str_temp + “(sid like ‘”+trim(sle_id.text)+“’)”
End if
If (cbx_name.checked = true and len(trim(sle_name.text))>0) then
Str_temp= Str_temp+ “(sname like ‘”+ trim(sle_name.text)+ “’)”
End if
该段程序出现的问题是________。
A.
条件构造错误
B.
编译不通过
C.
出现多语义
D.
语义与查询意图不符
A
16
一段构造SQL语句的程序代码如下:
char *dcid, *acid, *ecid;
dcid = “001”; ecid= “002”; acid= “003”;
strcpy(sqltext, “SELECT * from Student where s# =”);
strcpy(sqltext,“: dcid”);
… …
exec sql whenever not found goto no_such_s#;
exec sql prepare ecid from :sqltext;
exec sql execute ecid using :acid;
exec sql commit work; continue;
no_such_s#: printf(“No such student in table Student\n”);
continue;
问:当该段程序执行“exec sql execute ecid using :acid;”语句时,其执行的查询是_______。
A.
检索001号同学的信息
B.
检索002号同学的信息
C.
检索003号同学的信息
D.
其他都不是
C