天气炎热,希望大家静心刷计算机等级考试题库!祝大家都能一次性通过考试!认真复习以下的四级数据库工程师试题。
1.试述SQL的定义功能。 (填空题)
答案:SQL的数据定义功能包括定义表、定义视图和定义索引。 SQL语言使用CREATE TABLE语句建立基本表,ALTER TABLE语句修改基本表定义,DROP TABLE语句删除基本表;使用CREATE INDEX语句建立索引, DROP INDEX语句删除索引;使用CREATE VIEW命令建立视图,DROP VIEW语句删除视图。
2.SQL语言除了具有数据查询和数据操纵功能之外,还具有________和________的功能,它是一个综合性的功能强大的语言。 (问答题)
答案:数据定义 数据控制
3.在关系数据库标准语言SQL中,实现数据检索的语句命令是________。 (问答题)
答案:SELECT
4.用SQL语句建立第2章习题5中的四个表。 (填空题)
答案:对于S表:S( SNO,SNAME,STATUS,CITY); 建S表 CREATE TABLE S (SNO CHAR(3), SNAME CHAR(10), STATUS CHAR(2), CITY CHAR(10)); P(PNO,PNAME,COLOR,WEIGHT); 建P表 CREATE TABLE P (PNO CHAR(3), PNAME CHAR(10), COLOR CHAR(4), WEIGHT INT); J(JNO,JNAME,CITY); 建J表 CREATE TABLE J (JNO CHAR(3), JNAME CHAR(10), CITY CHAR(10)); SPJ(SNO,PNO,JNO,QTY); 建SPJ表 CREATE TABLE SPJ (SNO CHAR(3), PNO CHAR(3), JNO CHAR(3), QTY INT);
5.在SQL语言的结构中,________有对应的物理存储,而________没有对应的物理存储。 (问答题)
答案:基本表 视图
6.针对上题中建立的四个表试用SQL语言完成第2章习题5中的查询。 (填空题)
答案:(1) 求供应工程J1零件的供应商号码SNO; SELECT SNO FROM SPJ WHERE JNO=‘J1’;(2) 求供应工程J1零件P1的供应商号码SNO; SELECT SNO FROM SPJ WHERE JNO=‘J1’ AND PNO=‘P1’;(3) 求供应工程J1零件为红色的供应商号码SNO; SELECT SNO /*这是嵌套查询*/ FROM SPJ WHERE JNO=‘J1’ AND PNO IN /*找出红色的零件的零件号码PNO */ (SELECT PNO FROM P /*从P表中找*/ WHERE COLOR=‘红’);或 SELECT SNO FROM SPJ,P /*这是两表连接查询*/ WHERE JNO=‘J1’ /*这是复合条件连接查询*/ AND SPJ.PNO=P.PNO AND COLOR=‘红’; (4) 求没有使用天津供应商生产的红色零件的工程号JNO; *解析:读者可以对比第2章习题5中用ALPHA语言来完成该查询的解答。如果大家理解了有关该题的解析说明,那么本题的解答可以看成是把关系演算用SQL来表示的过程。 GET W (J.JNO): ??SPJX( SPJX.JNO=J.JNO ? ?SX ( SX.SNO=SPJX.SNO ? SX.CITY='天津' ? ?PX(PX.PNO=SPJX.PNO ? PX.COLOR=' 红' )) 这里的第一种解法是使用多重嵌套查询,第二种方法的子查询是一个多表连接。注意:从J表入手,以包含那些尚未使用任何零件的工程号。 SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND SNO IN /*天津供应商的SNO*/ (SELECT SNO FROM S WHERE CITY=‘天津’) AND PNO IN /*红色零件的PNO*/ (SELECT PNO FROM P WHERE COLOR=‘红’)); 或 SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ, S, P WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND SPJ.PNO=P.PNO AND S.CITY=‘天津’ AND P. COLOR=‘红’); //删除: 本例中父查询和子查询均引用了Student表,可以像自身连接那样用别名将父查询中的Student表与子查询中的Student表区分开:// (5) 求至少用了供应商S1所供应的全部零件的工程号JNO (类似于P113例44)。 *解析:本查询的解析可以参考第二章第5题,用ALPHA语言的逻辑蕴函来表达。 上述查询可以抽象为: 要求这样的工程x,使 (?y) p ? q为真。即: 对于所有的零件y,满足逻辑蕴函 p ? q: P表示谓词:“供应商S1供应了零件y” q表示谓词:“工程x选用了零件y” 即 只要“供应商S1供应了零件y”为真,则“工程x选用了零件y”为真。逻辑蕴函可以转换为等价形式: (?y)p ? q≡ ? (?y (?(p ? q ))≡? (?y (?(? p∨ q)≡? ?y(p∧?q) 它所表达的语义为:不存在这样的零件y,供应商S1供应了y,而工程x没有选用y。用SQL语言表示如下: SELECT DISTINCT JNO FROM SPJ SPJZ WHERE NOT EXISTS /*这是一个相关子查询 */ (SELECT * /*父查询和子查询均引用了SPJ表*/ FROM SPJ SPJX /*用别名将父查询与子查询中的SPJ表区分开*/ WHERE SNO='S1' AND NOT EXISTS (SELECT * FROM SPJ SPJY WHERE SPJY.PNO=SPJX.PNO AND SPJY.JNO=SPJZ.JNO AND SPJY.SNO=’S1’));
7.针对习题1中的四个表试用SQL语言完成以下各项操作: (1) 找出所有供应商的姓名和所在城市。 (2) 找出所有零件的名称、颜色、重量。 (3) 找出使用供应商S1所供应零件的工程号码。 (4) 找出工程项目J2使用的各种零件的名称及其数量。 (5) 找出上海厂商供应的所有零件号码。 (6) 找出使用上海产的零件的工程名称。 (7) 找出没有使用天津产的零件的工程号码。 (8) 把全部红色零件的颜色改成蓝色。 (9) 由S5供给J4的零件P6改为由S3供应,请作必要的修改。 (填空题) 答案:(1) 找出所有供应商的姓名和所在城市。 SELECT SNAME, CITY FROM S; (2) 找出所有零件的名称、颜色、重量。 SELECT PNAME, COLOR, WEIGHT FROM P; (3) 找出使用供应商S1所供应零件的工程号码。 SELECT JNO FROM SPJ WHERE SNO=‘S1’; (4) 找出工程项目J2使用的各种零件的名称及其数量。 SELECT P.PNAME, SPJ.QTY FROM P, SPJ WHERE P.PNO=SPJ.PNO AND SPJ.JNO='J2'; (5) 找出上海厂商供应的所有零件号码。 SELECT DISTINCT PNO FROM SPJ WHERE SNO IN (SELECT SNO FROM S WHERE CITY='上海'); (6) 找出使用上海产的零件的工程名称。 SELECT JNAME FROM J, SPJ, S WHERE J. JNO=SPJ. JNO AND SPJ. SNO=S.SNO AND S.CITY='上海'; 或 SELECT JNAME FROM J WHERE JNO IN (SELECT JNO FROM SPJ, S WHERE SPJ. SNO=S.SNO AND S.CITY='上海'); (7) 找出没有使用天津产的零件的工程号码。 SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE SPJ.JNO=J.JNO AND SNO IN (SELECT SNO FROM S WHERE CITY=‘天津’)); 或 SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ, S WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND S.CITY=‘天津’); (8) 把全部红色零件的颜色改成蓝色。 UPDATE P SET COLOR='蓝' WHERE COLOR='红' ; (9) 由S5供给J4的零件P6改为由S3供应,请作必要的修改。 UPDATE SPJ SET SNO='S3' WHERE SNO='S5' AND JNO='J4' AND PNO='P6'; (10) 从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录。 DELETE FROM SPJ WHERE SNO='S2'; DELETE FROM S WHERE SNO='S2'; *解析:注意删除顺序,应该先从SPJ表中删除供应商S2所供应零件的记录,然后从从S表中删除S2。(11) 请将 (S2,J6,P4,200) 插入供应情况关系。 INSERT INTO SPJ(SNO, JNO, PNO, QTY) /*INTO子句中指明列名*/ VALUES (S2,J6,P4,200); /*插入的属性值与指明列要对应*/ 或 INSERT INTO SPJ /*INTO子句中没有指明列名*/ VALUES (S2,P4,J6,200); /*插入的记录在每个属性列上有值*/ /*并且属性列要和表定义中的次序对应*/
总而言之,还有4天的时间就要考试了,赶紧复习以上的计算机四级数据库工程师试题,收获是与付出成正比的。千万不要忘记刷计算机等级考试题库哦!预祝大家都能够顺利考取计算机等级证书~加油吧!考无忧小编等着你们的好消息~
文章推荐:
2018年全国计算机等级考试题库“二级MS Office 高级应用考试大纲”
全国计算机等级考试报考成功后可以退费吗?(内附计算机等级考试题库)
温馨提示:
考试想拿高分吗?更多计算机等级考试题库二级ms office试题请点击查看>>>二级ms office
想要了解更多的计算机等级考试题库请点击下载>>>计算机等级考试题库
想知道更多关于计算机等级考试题库的最新资讯吗?点击进入>>>计算机等级考试题库资讯