一选择题(每题1.5分,共45分)1) 下面的哪个数据库版本可以访问OS/390 上的DB2 UDB 数据库?a) DB2 Connect Personal Editionb) DB2 Universal Database Workgroup Editionc) DB2 Personal Developer's Editiond) DB2 Universal Developer's Edition2) 下面的哪个工具可以编目一个数据库信息?a) Journal 日志工具b) Alert Center 警告中心c) License Center 许可证中心d) Client Configuration Assistant 客户端配置助手3) 下面的哪个工具可以重组数据回收表中被删除的行所占有的资源?a)reorgb) db2lookc) db2moved) runstats4) USE这个特权的用途是?a) query data in a table.b) load data into a table.c) create tables within a table space.d) create table spaces within a database.5) 如果创建数据库则需要下面的哪两个权限?a) DBADMb) SYSADMc) DBCTRLd) SYSCTRLe) SYSMAINT6) 编目一个远程数据库是指:a) 在PC或者Unix 机器上执行编目,目的是为了识别DB2数据库管理器所在的服务器b) 在PC或者Unix机器上编目,目的是为了让用户和应用程序可以识别DB2数据库c) 从不在DB2中编目,仅当每个节点上的数据库被允许编目时编目,所以自动编目那个节点就可以自动编目数据库Nd) 在PC或者UNIX机器上编目是为了打开在DB2数据库中的目录表,这样当前的用户可以访问这个数据库中的一组可以被访问的数据表。
7) 给出下面的语句CREATE DISTINCT TYPE kph AS INTEGER WITH COMPARISONS CREATE DISTINCT TYPE mph AS INTEGER WITH COMPARISONS CREATE TABLE speed_limits(route_num SMALLINT,canada_sl KPH NOT NULL,us_sl MPH NOT NULL)下面的哪个查询语句是正确的?a) SELECT route_num FROM speed_limits WHERE canada_sl > 80b) SELECT route_num FROM speed_limits WHERE canada_sl > kphc) SELECT route_num FROM speed_limits WHERE canada_sl > us_sld) SELECT route_num FROM speed_limits WHERE canada_sl > kph(80)8) 如果给出一个表,在控制中心中没有生成DDL 选项,可能是下面的哪个原因?a) 这个表示系统对象b) 这个表是统计表c) 这个表被暂停挂起d) 这个表示镜像表.e) 这个表是由其他用户创建的9) 给出下面的两个表COUNTRYID NAME STAFFID CITIES1 Argentina 1 102 Canada 2 203 Cuba 2 104 Germany 1 05 France 7 5STAFFID LASTNAME1 Jones2 Smith下面的哪个语句可以从COUNTRY表中删除与STAFF表ID相同的记录?a) DELETE FROM country WHERE id IN (SELECT id FROM staff)b) DELETE FROM country WHERE id IN (SELECT person FROM staff)c) DELETE FROM country WHERE person IN (SELECT id FROM staff)d) DELETE FROM country WHERE person IN (SELECT person FROM staff)10) 表STOCK定义如下type CHAR (1)status CHAR(1)quantity INTEGERprice DEC (7,2)哪个语句可以设置type字段不是’S’的记录: STATUS为NULL,QUANTITY为0,price为0? (选择最可能的语句)a) UPDATE stock SET status='NULL', quantity=0, price=0 WHERE type <> 'S'b) UPDATE stock SET (status, quantity, price) = (NULL, 0, 0) WHERE type <> 'S'c) UPDATE stock SET (status, quantity, price) = ('NULL', 0, 0) WHERE type <> 'S'd) UPDATE stock SET status = NULL, SET quantity=0, SET price = 0 WHERE type <> 'S'11) 下面哪些内容不能设置autocommit自动提交?a) 嵌入式SQLb) 命令中心c) 命令行处理器d) DB2 调用接口12)下面的哪个语句可以在最终的结果表中去除那些重复的记录?a) SELECT UNIQUE * FROM t1b) SELECT DISTINCT * FROM t1c) SELECT * FROM DISTINCT T1d) SELECT UNIQUE (*) FROM t1e) SELECT DISTINCT (*) FROM t113) 给出下面的表STAFFID LASTNAME1 Jones2 Smith3 null下面的哪个语句可以删除lastname字段为空的记录?a) DELETE FROM staff WHERE lastname IS NULLb) DELETE ALL FROM staff WHERE lastname IS NULLc) DELETE FROM staff WHERE lastname = 'NULL'd) DELETE ALL FROM staff WHERE lastname = 'NULL'14)给出下面表的定义DEPARTMENTdeptno CHAR(3)deptname CHAR(30)mgrno INTEGERadmrdept CHAR(3)EMPLOYEEempno INTEGERfirstname CHAR(30)midinit CHARlastname CHAR(30)workdept CHAR(3)下面的哪个语句可以列出每个雇员的编号以及lastname,以及他们经理的雇员编号和lastname,并且包含没有经理管理的那些员工?(提示使用哪种连接?)a) SELECT e.empno, stname, m.empno, stname FROM employee e LEFT INNERJOIN department INNER JOIN employee m ON mgrno = m.empno ON e.workdept = deptnob) SELECT e.empno, stname, m.empno, stname, FROM employee e LEFT OUTER JOINdepartment INNER JOIN employee m ON mgrno = m.empno ON e.workdept = deptnoc) SELECT e.empno, stname, m.empno, stname FROM employee e RIGHT OUTER JOINdepartment INNER JOIN employee m ON mgrno = m.empno ON e.workdept = deptnod) SELECT e.empno, stname, m.empno, stname FROM employee e RIGHT INNER JOINdepartment INNER JOIN employee m ON mgrno = m.empno ONe.workdept = deptno15) 给出下面的表NAMESName NumberWayne Gretzky 99Jaromir Jagr 68Bobby Orr 4Bobby Hull 23Brett Hull 16Mario Lemieux 66Steve Yzerman 19Claude Lemieux 19Mark Messier 11Mats Sundin 13POINTSName PointsWayne Gretzky 244Jaromir Jagr 168Bobby Orr 129Bobby Hull 93Brett Hull 121Mario Lemieux 189PIMName PIMMats Sundin 14Bobby Orr 12Mark Messier 32Brett Hull 66Mario Lemieux 23Joe Sakic 94下面的哪个语句可以显示玩家的名字,号码,得分,以及PIM信息,并且玩家的名称必须在三张表中都要出现?a) SELECT , names.number, points.points, pim.pim FROM names INNER JOIN pointsON = INNER JOIN pim ON =b) SELECT , names.number, points.points, pim.pim FROM names OUTER JOIN pointsON = OUTER JOIN pim ON =c) SELECT , names.number, points.points, pim.pim FROM names LEFT OUTER JOINpoints ON = LEFT OUTER JOIN pim ON =d) SELECT , names.number, points.points, pim.pim FROM names RIGHT OUTER JOINpoints ON = RIGHT OUTER JOIN pim ON =16) 给出以下的表EMPLOYEEemp_num emp_name dept1 Adams 12 Jones 13 Smith 24 Williams 1DEPTdept_id dept_name1 Planning1 Support给出下面的语句:ALTER TABLE employeeADD FOREIGN KEY (dept) REFERENCES (dept_id)ON DELETE CASCADE在下面的语句中共有多少个工作单元需要处理?DELETE FROM dept WHERE dept_id=1a) 0b) 1c) 2d) 3e) 4f) 617. 根据需要存储姓名和雇员编号,当雇员被解雇时,下面的哪个数据类型不能用于保存雇员解雇日期?a) CLOBb) TIMEc) VARCHARd) TIMESTAMP18) 给出下面的事务"CREATE TABLE t1 (id INTEGER,CONSTRAINT chkid CHECK (id<100))" "INSERT INTO t1 VALUES (100)""COMMIT"事务处理的结果是什么?a) 插入了一个NULL值b) 擦如乐一个100c) 插入数据时,数据库拒绝插入100d) 一个名字叫做chkid的触发器被调用并验证数据19) 如果一张表中的一个或者多个字段使用了Check约束,下面的那个工具必须在Load装载数据之后执行?a) Reorgb) Checkc) Runstatsd) Image Copye) Set Integrity20) 给出下面的语句?CREATE VIEW v1 AS SELECT c1 FROM t1 WHERE c1='a' WITH CHECK OPTION下满的哪个语句可以将数据插入到数据库中?a) INSERT INTO v1 VALUES (a)b) INSERT INTO v1 VALUES (b)c) INSERT INTO v1 VALUES ('b')d) INSERT INTO v1 VALUES ('a')e) INSERT INTO v1 VALUES ('ab')21) 如果一个应用程序使用了可重复读取的事务隔离级别,在下面哪种情况下可以释放更新锁?a) 关闭访问行的游标.b) 在事务中执行ROLLBACK指令c) 访问当前行的游标移动到下一行d) 通过使用UPDATE语句改变事务I22) Which of the following isolation levels is most likely to acquire a table level lock during an index scan?下面的哪种事务隔离级别要求在索引扫描期间使用表级锁?a) RSb) RRc) CSd) UR24) 下面哪种应用程序释放锁的方式适用于游标稳定性事务隔离级别?a) 访问当前行的游标移动到下一行b) 访问当前行的游标用于更新当前行c) 应用程序删除当前行d) 一个应用程序访问的当前行需要另外的应用程执行更新语句25 ) 给出下面的表STAFFID LASTNAME1 Jones2 Smith当执行SELECT * FROM staff 返回的行是按照哪种顺序输出的?a) 无序b) 主键顺序c) 插入到表中的记录顺序The order that the rows were inserted into the tabled) 先按ID列上的值,然后按LASTNAME列上的值26) 下面的语句将要创建多少个索引?Create table mytab(Col1 int not null primary key,Col2 char(64),Col3 char(32),Col4 int not null,constraint c4 unique (Col4,Col1))a) 0b) 1c) 2d) 3e) 426) 给出下面的表COUNTRYID NAME PERSON CITIES1 Argentina 1 102 Canada 2 203 Cuba 2 104 Germany 1 05 France 7 5STAFFID LASTNAME1 Jones2 Smith下面的语句:INSERT INTO staff SELECT person, 'Greyson' FROM country WHERE person > 1有多少条记录插入到数据库?a) 0b) 1c) 2d) 327) 给出下面表的定义和授予特权的语句?CREATE TABLE table1 (col1 INT, col2 CHAR(40), col3 INT)GRANT INSERT, UPDATE, SELECT, REFERENCES ON TABLE table1 TO USER usera下面的哪个语句可以撤销USERA在COL1和COL2的特权?(注意授予特权的语句)a) REVOKE UPDATE ON TABLE table1 FROM USER userab) REVOKE ALL PRIVILEGES ON TABLE table1 FROM USER userac) REVOKE ALL PRIVILEGES ON TABLE table1 COLUMNS (col1, col2) FROM USERAd) REVOKE REFERENCES ON TABLE table1 COLUMNS (col1, col2) FROM USER usera28) 给出CREATE TABLE t1 (c1 CHAR(4) NOT NULL). 哪个值可以插入到表中?a) 4b) NULLc) ‘abc’d) ‘abcde’29) 下面的哪个设置,不允许被引用的主键字段在子表中还存在,就删除主表中的数据?a) DELETEb) CASCADEc) RESTRICTd) SET NULL30) 给出两个表的定义ORGdeptnumb INTEGERdeptname CHAR(30)manager INTEGERdivision CHAR(30)location CHAR(30)STAFFid INTEGERname CHAR(30)dept INTEGERjob CHAR(30)years CHAR(30)salary DECIMAL(10,2)comm DECIMAL(10,2)下面的哪个语句可以显示每个部门的名称,并且按照字母顺序升序排列,以及部门经理的名称?a) SELECT a.deptname, FROM org a, staff b WHERE a.manager=b.idb) SELECT a.deptname, FROM org a, staff b WHERE b.manager=a.idc) SELECT a.deptname, FROM org a, staff b WHERE a.manager=b.id order BY a.deptname, d) SELECT a.deptname, FROM org a, staff b, WHERE b.manager=a.id GROUP BY a.deptname, 二简答题( 每题3分,共30分)1 简述SQL语言的分类及其作用?DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)2 什么是谓词?举出10个常见的谓词? (提示经常在where中需要用到的符号) in between like exists is contains3 char类型和varchar类型的区别? graphic和vargraphic的区别用于存储固定长度的字符串可变长度的字符串GRAPHIC 用于存储固定长度的双字节字符串4 什么是数据库的实例?怎样查看系统的中的实例?怎样切换实例?怎样查看实例中的数据库?怎样启动实例?怎样连接数据库? 怎样改变语句结束符?实例是数据库管理器的逻辑环境,可以在实例中5 简述DB2中常见的数据库对象?重点阐述表、索引、视图和模式的概念表空间缓冲池表索引序列视图模式别名存储过程触发器表是一组相关数据逻辑安排的行和列索引是有序键值的集合视图是将一个或者多个表生成的虚拟表,是存储在数据库的sql模式,是数据库对象的命名空间,讲对象逻辑分组6 简述COUNT、SUM、AVG、STDDEV、MAX、MIN函数的作用计算区域中满足个定条件的单元格个数给定条件的数据求和求给定条件的数据的平均值计算标准差7 简述DB2种的约束的类别?并分别写出SQL,怎样使用该约束? (提示:表的字段可以简洁)Not null约束主键约束唯一性约束外间约束,检查约束Create table tablename (a int not null,B varchar(20))Pri mary k ey foreign key constaint b check(b between 1 an 100)8 什么是主表和从表?主键所在的表外面所在的表9 什么是CS,RS,US,RR?US如果是读取操作,不产生任何的行级别锁,非读取同CSCS锁住当前处理记录RS 锁定所有符合条件的记录RR 锁住所有相关记录10 什么是分组语句?where和having子句的区别?请举例说明作用对象不同,WHERE子句作用于基本表或视图,从中选择满足条件的记录;HAVING子句作用于组,从中选择满足条件的组。