第六周Oracle基础测试

合集下载

Oracle测试题及答案.doc

Oracle测试题及答案.doc
if s=:new.bno then
insert into borrow_save
values(:o,:new.bno,:new.rdate);
end if;
end;
/
12.建立一个视图,显示“力01”班学生的借书信息(只要求显示姓名和书名)。
create view ca_view as
解决两个写事务冲突的办法就是采用“加锁”机制。例如A、B两个事务同吋对一个表的某航数据进行修改,A事务首先修改时对该数据加锁,禁止其他事务对该数据的修改。只有当A事务完成修改工作、并将锁打开后,其他事物才被允许修改。这时候等待的B事务才可以对该数据进行修改。锁可以防止两个写事务同时对一个数裾进行修改,所以也就不会出现写丢失的错误。
11.在borrow表上建立一个触发器,完成如下功能:如果读者借阅的书名是“数据库技术及应用”,就将该读者的借阅记录保存在borrow_save表中(注:borrow_save表结构同borrow表)。
create table borrow_save as
(select * from borrow)
借书卡card (eno卡号,name姓名,class班级)
图书books (bno书号,bname书名,author作者,price单价,quantity库存册数)借书记录borrow (eno借书卡号,bno书号,rdate还书曰期)
注:限定每人每种书只能借一本;库存册数随借书、还书而改变。
1.写出建立borrow表的SQL语句,要求定义主码完整性约束和引用完整性约束create table card
mark INTEGER;
BEGIN
BEGIN//嵌套块1
select氺into tin_rec from tin ;

Oracle数据库基础题库【含答案】(小编推荐)

Oracle数据库基础题库【含答案】(小编推荐)

Oracle数据库基础题库【含答案】(小编推荐)第一篇:Oracle数据库基础题库【含答案】(小编推荐)一、判断题,正确请写写“T”,错误请写写“F”,1、oracle 数据库系统中,启动数据库的第一步是启动一个数据库实例。

(T)2、Oracle服务器端的监听程序是驻留在服务器上的单独进程,专门负责响应客户机的连接请求。

(F)3、oracle数据库中实例和数据库是一一对应的(非ORACLE并行服务,非集群)。

(T)4、系统全局区SGA 是针对某一服务器进程而保留的内存区域,它是不可以共享的。

(F)5、数据库字典视图ALL_***视图只包含当前用户拥有的数据库对象信息。

(F)8、数据字典中的内容都被保存在SYSTEM表空间中。

(T)9、HAVING后面的条件中可以有聚集函数,比如SUM(),AVG()等,WHERE 后面的条件中也可以有聚集函数。

(F)10、“上海西北京” 可以通过like ‘%上海_’查出来。

(F)11、表空间是oracle 最大的逻辑组成部分。

Oracle数据库由一个或多个表空间组成。

一个表空间由一个或多个数据文件组成,但一个数据文件只能属于一个表空间。

(T)12、表空间分为永久表空间和临时表空间两种类型。

(T)13、truncate是DDL操作,不能 rollback。

(T)14、如果需要向表中插入一批已经存在的数据,可以在INSERT 语句中使用WHERE语句。

(F)15、Oracle数据库中字符串和日期必须使用双引号标识。

(F)16、Oracle数据库中字符串数据是区分大小写的。

(T)17、Oracle数据库中可以对约束进行禁用,禁用约束可以在执行一些特殊操作时候保证操作能正常进行。

(F)18、为了节省存储空间,定义表时应该将可能包含NULL值的字段放在字段列表的末尾。

(T)20、在连接操作中,如果左表和右表中不满足连接条件的数据都出现在结果中,那么这种连接是全外连接。

(T)21、自然连接是根据两个表中同名的列而进行连接的,当列不同名时,自然连接将失去意义。

Oracle测试题+答案

Oracle测试题+答案

Oracle测试题+答案1) PL/SQL块中可以使用下列()命令。

(选择两项)a) TRUNCATEb) DELETEc) SA VEPOINTd) ALTER TABLE2) 授予sa用户在SCOTT.EMP表中SAL列的更新权限的语句是(B)〔选择一项〕a) GRANT CHANGE ON SCOTT.EMP TO SAb) GRANT UPDA TE ON SCOTT.EMP(SAL) TO SAc) GRANT UPDA TE (SAL) ON SCOTT.EMP TO SAd) GRANT MODIFY ON SCOTT.EMP(SAL) TO SA3) EMP表有14条记录,则语句SELECT ‘Aptech’FROM EMP 的执行结果是(C)〔选择一项〕a) Aptechb) 无输出c) 14行Aptechd) 编译出错4) PL/SQL块中哪几部分是可选的()〔选择二项〕a) Declareb) Beginc) Exceptiond) Constant5) 在创建序列的过程中,下列()选项指定序列在达到最大值或最小值后,将继续从头开始生成值。

(选择一项)a) Cycleb) Nocyclec) Cached) Nocache6) 同义词有以下()用途。

(选择三项)a) 简化SQL 语句b) 隐藏对象的名称和所有者c) 提供对对象的公共访问d) 显示对象的名称和所有者7) Oracle中用来释放锁的语句有()〔选择二项〕a) commitb) Drop lockc) rollbackd) unlock8) 关于类型定义Number(9,2)说法正确的有()〔选择一项〕a) 整数部分9位,小数部分2位,共11位b) 整数部分7位,小数部分2位,共9位c) 整数部分6位,小数点一位,小数部分2位,共9位d) 以上说法均不正确9) 下列哪种Lob类型用来存储数据库以外的操作系统文件()〔选择一项〕a) CLOBb) BLOBc) CFILEd) BFILE10) Oracle中的三种系统文件分别是()〔选择三项〕a) 数据文件b) 归档文件c) 日志文件d) 控制文件11) 下列哪项不是Oracle中常用的分区方法?()〔选择一项〕a) 范围分区b) 散列分区c) 列表分区d) 条件分区12) 查看Test中名称为P1的分区中的记录的查询语句为()〔选择一项〕a) Select * from Test Where PartitionName=’p1’b) Select * from Test(p1)c) Select * from Test Partition(p1);d) 以上均正确13) 创建序列时,若未指定Cycle选项,则当当前值大于MaxValue时将()〔选择一项〕a) 从MinValue重新开始循环b) 重复使用MaxValue 值c) 执行出错d) 使用随机值14) 下列哪项是创建索引组织表所必需的()〔选一项〕a) Primary Keyb) Order Byc) Group Byd) 以上均不是15) 若表的某字段值存在大量的重复,则基于该字段适合创建哪种索引?()〔选一项〕a) 标准索引b) 唯一索引c) 位图索引d) 分区索引16) 在PL/SQL块中定义一个名为PI值为3.14的Real型常量的语法是()〔选一项〕a) A.Pi Const Real=3.14;b) B.Pi Real Const =3.14;c) C.Constant Pi Real:=3.14d) D.Pi Constant Real:=3.1417) 22.当Select语句没有返回行时,将引发下列哪个异常?()[选择一项]a) A.No_rows_foundb) B.No_data_foundc) C.No_Data_rows_foundd) D.Invalid_Number18) Oracle中提供的两种游标是()〔选择二项〕a) A.隐式游标b) B.静态游标c) C.REF游标d) D.显式游标19) 若Emp表中有14条记录,则用户执行了以下操作,结果是:()〔选择一项〕Cursor mycur is Select * From emp;。

ORACLE数据库基础测试题oracle数据库复习题

ORACLE数据库基础测试题oracle数据库复习题

ORACLE数据库基础测试题提示:本题为ORACLE数据库基础测试题,适合初学者对基础知识进行测试,以便查漏补缺;1.DDL指的是:;A.数据定义语言B.数据操作语言C.数据查询语言D.数据控制语言正确答案:A解析:2.下列创建表语句正确的是:;A.create table emp id number4 , ;B.create table emp id number4 ;C.alter table emp id number4 ;D.alter table emp id number4, ;正确答案:B解析:3.下列Oracle函数中能够返回两个字符串连接后的结果的是:;A.initcapB.instrC.trimD.concat正确答案:D解析:4.下列SQL语句的查询结果是:;selectround45.925,0,trunc45.925 from dual;A.45 45B.46 45C.45 46D.46 46正确答案:B解析:关于函数nvld1,d2的用法说法正确的是:;A.表示如果d1为null则d2必须为nullB.表示如果d1为null则忽略d2C.表示如果d1不为null则用d2替代D.表示如果d1为null则用d2替代正确答案:D解析:6.显示emp表的所有行,所有列,下列SQL语句正确的是:;A.select from emp;B.select all. from emp;C.select all from emp;D.select / from emp;正确答案:A解析:7.查询职员的姓名及其直接领导,如果没有直接领导的职员,则显示为“No Manager”,下列SQL语句正确的是:;1select a1.ename ,nvla2.ename,'No Manager' 2from emp a1 right join emp a23on a1.mgr = a2.empno;B.1select a1.ename ,nvla2.ename,'No Manager' 2from emp a1 left join emp a23on a1.mgr = a2.empno;C.1select a1.ename ,nvla2.ename,'No Manager'from emp a1 join emp a23on a1.mgr = a2.empno;D.1select a1.ename ,nvla2.ename,'No Manager'2from emp a1, emp a23on a1.mgr = a2.empno;正确答案:B解析:8.emp表中,比“FORD”入职晚的员工信息,下列SQL语句正确的是:; A.1select ename,hiredate from empwhere ename = 'FORD';B.1select ename,hiredate from emp 2where hiredate >3select hiredate from emp 4where ename = 'FORD'; C.1select ename,hiredate from emp 2where hiredate > minhiredate3and ename = 'FORD';D.1select ename,hiredate from emp2where hiredate in3select hiredate from emp4where ename = 'FORD';正确答案:B解析:9.在Oracle中,以下是STUDENTS表的结构:sid number primary key sname varchar230 course_id varchar210 not null marks number 你需要查询参加了course_id为C10的考试,并且分数marks排在前10名的学生,以下SQL语句能够实现此功能的是:;A.SELECT sid, marks, ROWNUM "Rank"2FROM students3WHERE ROWNUM <= 10 AND course_id = ‘C10’4ORDER BY marks DESC;B.1SELECT sid, marks, ROWNUM "Rank"2FROM students3WHERE ROWNUM <= 10 AND course_id = ‘C10’4ORDER BY marks;1SELECT sid, marks, ROWNUM "Rank"2FROM SELECT sid, marks3FROM students4WHERE ROWNUM <= 10 AND course_id = ‘C10’5ORDER BY marks DESC;D.1SELECT sid, marks, ROWNUM "Rank"2FROM SELECT sid, marks3FROM students4WHERE course_id = ‘C10’ORDER BY marks DESC5WHERE ROWNUM <= 10;正确答案:D解析:10.在Oracle中,使用以下语句创建视图:CREATE OR REPLACE VIEW MyView AS SELECT FROM orders Where status=’p’; 假定orders 表中包含10条status=’p’的记录,当用户试图执行以下语句: UPDATE MyView SET status = ‘o’WHERE status=’p’; 下列描述正确的是:;A.Oracle不执行更新操作,并返回错误信息B.Oracle成功执行更新操作,再次查看视图时返回0行记录C.Oracle成功执行更新操作,再次查看视图时返回10行记录D.Oracle执行更新操作,但提示错误信息正确答案:B解析:11.在Oracle中,有一个名为seq的序列对象,以下语句能返回下一个序列值的是:;A.select seq.ROWNUM from dual;B.select seq.ROWID from dual;C.select seq.CURRVAL from dual;D.select seq.NEXTVAL from dual;正确答案:D解析:12.为emp表的ename字段创建名为idx_emp_ename的索引,下列选项正确的是:;A.create index idx_emp_ename on empename ;B.create index idx_emp_ename as empename ;C.create index ename on empidx_emp_ename ;D.create index ename as empidx_emp_ename ;正确答案:A解析:13.在Oracle中, 获得当前系统时间的查询语句是:;A.sysdate;B.select sysdate;C.select sysdate from dual;D.select sysdate from common;正确答案:C解析:14.现有cost表,该表中id,unit_cost列的数据如下:ID UNIT_COST 1 2 0.40 3 0.30 4 0.20 5 0.10 6 0.50 执行如下SQL语句的结果为:; select countunit_cost from cost;A.0.0B.5.0C.6.0D.1.0正确答案:B解析:15.将员工号为1007的员工薪水改为3500 , 职位改为Programmer,下列SQL语句正确的是:;A.1update emp2set salary = 3500 and job = 'Programmer' 3where empno = 1007 ;B.1update emp2set salary = 3500 ,set job = 'Programmer' 3where empno = 1007 ;C.1update emp2salary = 3500 , job = 'Programmer'3where empno = 1007 ;D.1update emp2set salary = 3500 , job = 'Programmer'3where empno = 1007 ;正确答案:D解析:16.修改emp表删除bonus列,下列SQL语句正确的是:;A.alter table emp drop bonus ;B.alter table emp drop column bonus ;C.alter table emp delete column bonus ;D.alter table emp delete bonus ;正确答案:A解析:17.下列SQL语句查询到的字符串是:; SELECT SUBSTR'JavaPhpOracleC++Html',5, 9 FROM DUAL;A.hpOracleCB.PhpOracleC.hpOrD.PhpO正确答案:B解析:18.下列SQL语句的查询结果是:; SELECT CEIL35.823,FLOOR35.823 FROM DUAL;A.35 35B.35 36C.36 35D.36 36正确答案:C解析:19.test表包含一列c1为date类型数据,向该列插入2008年8月8日8点8分8秒,然后查询该表以“2008-08-08 08:08:08”格式显示c1列数据,下列SQL语句正确的是:;A.1insert into test values2to_char'2008-08-08 08:08:08','yyyy-mm-dd hh24:mi:ss';3select to_charc1,'yyyy-mm-dd hh24:mi:ss' from test;B.1insert into test values2to_date'2008-08-08 08:08:08','yyyy-mm-dd hh24:mi:ss';3select to_datec1,'yyyy-mm-dd hh24:mi:ss' from test; C.1insert into test values2to_char'2008-08-08 08:08:08','yyyy-mm-dd hh24:mi:ss'; 3select to_datec1,'yyyy-mm-dd hh24:mi:ss' from test; D.1insert into test values2to_date'2008-08-08 08:08:08','yyyy-mm-dd hh24:mi:ss'; 3select to_charc1,'yyyy-mm-dd hh24:mi:ss' from test;正确答案:D解析:20.下列选项中说法正确的是:;A.“empno NUMBER6“表示empno列中的数据为整数,最大位数为6位;B.“balance NUMBER10,1“表示balance列中的数据,整数最大位数为10位,小数为1位;C.“bak CHAR10”表示bak列中最多可存储10个字节的字符串,并且占用的空间是固定的10个字节D.“content VARCHAR2300”表示content列中最多可存储长度为300个字节的字符串;根据其中保存的数据长度,占用的空间是变化的,最大占用空间为300个字节;正确答案:ACD解析:。

oracle数据库设计课程设计

oracle数据库设计课程设计

oracle数据库设计课程设计一、课程目标知识目标:1. 理解Oracle数据库的基本概念,掌握数据库设计的基本原理;2. 学会使用SQL语言进行数据库的基本操作,如创建表、查询数据、更新数据等;3. 掌握数据库设计规范,能够设计出结构合理、性能优良的数据库表结构;4. 了解数据库的安全性和一致性约束,能够为数据库设置合理的约束条件。

技能目标:1. 能够运用所学知识独立完成小型信息系统的数据库设计;2. 能够熟练运用SQL语言进行数据库的操作,解决实际问题;3. 能够运用数据库设计原则对现有数据库进行优化,提高数据库性能;4. 能够分析实际业务需求,撰写数据库设计文档,为软件开发提供支持。

情感态度价值观目标:1. 培养学生对数据库技术的兴趣,激发学习积极性,提高自主学习能力;2. 培养学生具备良好的团队合作精神,能够在团队项目中发挥积极作用;3. 培养学生严谨、细致的学习态度,对待数据库设计和操作能够认真负责;4. 通过数据库技术在实际案例中的应用,使学生认识到信息技术对社会发展的积极作用,增强社会责任感。

二、教学内容1. Oracle数据库基础知识- 数据库概念、发展历史及Oracle数据库特点- 数据库体系结构、数据库存储结构- SQL*Plus工具的使用2. SQL语言基础- 数据定义语言(DDL):创建、修改、删除表- 数据操纵语言(DML):插入、查询、更新、删除数据- 数据控制语言(DCL):权限管理、事务控制3. 数据库设计原理- 实体关系模型(ER模型)及其转换- 数据库设计范式:1NF、2NF、3NF、BCNF- 数据完整性、约束条件设置4. Oracle数据库高级应用- 索引、分区、视图、序列的应用- 存储过程、函数、触发器的创建与使用- 数据库性能优化、备份与恢复5. 实践项目- 设计一个小型信息系统的数据库,包括表结构设计、数据操作、完整性约束设置等- 对数据库进行性能优化,分析并解决性能瓶颈- 撰写数据库设计文档,进行项目展示与交流教学内容按照以上五个方面进行组织,确保学生能够系统地掌握Oracle数据库的设计与应用。

Oracle笔试题-参考答案

Oracle笔试题-参考答案

f(考试时间:180分钟试卷满分:300分)注意事项:1.答卷前,请关闭手机,禁止使用设备对试卷进行拍照。

2.请务必将个人相关信息填写在相应位置。

3.请将答案填写在相应位置,否则无效。

第一部分单选题(每题2分,满分80分)做题时,先将答案标在试卷上,录音结束后,你将有两分钟的时间将试卷上的答案转涂到答题卡上。

一、单选题(每题2分 * 40 = 80分)1. 使用Oracle数据库,必须启动哪个服务()A.OracleHOME_NAMETNSListener B.OracleServiceSIDC.OracleMTSRecoveryService D.OracleJobSchedulerSID2. 在Windows操作系统中,Oracle的()服务监听并接受来自客户端应用程序的连接请求。

A.OracleHOME_NAMETNSListener B.OracleServiceSIDC.OracleHOME_NAMEAgent D.OracleHOME_NAMEHTTPServer3. 用二维表结构表达实体集的模型是()A.概念模型 B.层次模型 C.网状模型D.关系模型4. Oracle 11g 是基于()的A.关系型B.文件系统C.层次型D.网络型5. ( )代表了数据库中最小粒度的逻辑数据存储层次。

A.盘区B.表空间C.数据块D.数据文件6. 你使用下列命令连接数据库:sqlplusscott/***************:1522/orcl.目标数据库是哪一个?()A. B.tigerC. orclD. scott7. 设有一个关系:DEPT(DNO,DNAME,LOC),如果要找出倒数第三个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成WHERE DNAME LIKE ()A.‘_ _ W _ %’B.‘_ % W _ _’C. ‘_ W _ _’D. ‘_ W _ %’8. 下列解锁scott账户的命令正确的是()A、update user scottaccount unlock;B、alter user scott account unlock;C、alter user scott unlock;9. having , where , group by 的正确执行顺序是()A、having,where,group byB、group by,having,whereC、where,having,group byD、where ,group by,having10. 分析下面两个SQL语句,选项中说法正确的有( )SELECT last_name, salary , hire_dateFROM EMPLOYEESORDER BY salary DESC;SELECT last_name, salary , hire_dateFROM EMPLOYEESORDER BY 2 DESC;A、两个SQL语句的结果完全相同B、第二个SQL语句产生语法错误C、没有必要指定排序方式为desc,因为默认的排序方式是降序排序D、可以通过为第二个SQL语句的salary列添加列别名来使两个SQL语句得到相同的结果注意:Order by group by 后跟数字,代表select后的字段的位置11. 数据库设计中用关系模型表示实体和实体之间的联系。

Oracle笔试题库附参考答案

Oracle笔试题库附参考答案

Oracle笔试题库附参考答案1.下列不属于ORACLE的逻辑结构的是(C)1. 区2. 段3. 数据⽂件4. 表空间2. 下⾯哪个⽤户不是ORACLE缺省安装后就存在的⽤户(A)A . SYSDBAB. SYSTEMC. SCOTTD. SYS3 下⾯哪个操作会导致⽤户连接到ORACLE数据库,但不能创建表(A)1. 授予了CONNECT的⾓⾊,但没有授予RESOURCE的⾓⾊2. 没有授予⽤户系统管理员的⾓⾊3. 数据库实例没有启动4. 数据库监听没有启动1. ( )函数通常⽤来计算累计排名,移动平均数和报表聚合。

A . 汇总B. 分析C 分组、D 单⾏1. 带有(B)字句的SELECT语句可以在表的⼀⾏或多⾏放置排他锁。

A . FOR INSERTB. FOR UPDATEC. FOR DELETED. FOR REFRESH1. 在Oracle中,你以SYSDBA登录,CUSTOMER表位于Mary⽤户⽅案中,下⾯哪条语句为数据库中的所有⽤户创建CUSTOMER表的同义词(B)。

1. CREATE PUBLIC SYNONYM cust ON mary.customer;2. CREATE PUBLIC SYNONYM cust FOR mary.customer;3. CREATE SYNONYM cust ON mary.customer FOR PUBLIC;4. 不能创建CUSTOMER的公⽤同义词。

5.7. 在Oracle中,当FETCH语句从游标获得数据时,下⾯叙述正确的是(C)。

1. 游标打开2. 游标关闭3. 当前记录的数据加载到变量中4. 创建变量保存当前记录的数据8. 在Oracle中,下⾯关于函数描述正确的是(AD)。

1. SYSDATE函数返回Oracle服务器的⽇期和时间2. ROUND数字函数按四舍五⼊原则返回指定⼗进制数最靠近的整数3. ADD_MONTHS⽇期函数返回指定两个⽉份天数的和4. SUBSTR函数从字符串指定的位置返回指定长度的⼦串9. 阅读下⾯的PL/SQL程序块:BEGININSERT INTO employee(salary,last_name,first_name)VALUES(35000,’Wang’,'Fred’);SAVEPOINT save_a;INSERT INTO employee(salary,last_name,first_name)VALUES(40000,’Woo’,'David’);SAVEPOINT save_b;DELETE FROM employee WHERE dept_no=10;SAVEPOINT save_c;INSERT INTO employee(salary,last_name,first_name)VALUES(25000,’Lee’,'Bert’);ROLLBACK TO SAVEPOINT save_c;VALUES(32000,’Chung’,'Mike’);ROLLBACK TO SAVEPOINT save_b;COMMIT;END;运⾏上⾯的程序,哪两个更改永久保存到数据库(CD)。

oracle 练习题

oracle 练习题

oracle 练习题关键信息项:1、练习题的类型:____________________2、练习题的数量:____________________3、练习题的难度级别:____________________4、完成练习题的时间要求:____________________5、练习题的评估标准:____________________6、练习题的使用目的:____________________11 协议目的本协议旨在明确关于 oracle 练习题的相关规定和要求,以确保练习题的有效使用和达到预期的学习效果。

111 适用范围本协议适用于所有参与 oracle 练习题练习的相关人员。

12 练习题类型121 理论知识练习题涵盖 oracle 数据库的基本概念、原理、架构等方面的选择题、填空题、简答题等。

122 操作实践练习题要求进行实际的数据库操作,如创建表、插入数据、查询数据、更新数据、删除数据等。

123 故障排除练习题设定数据库出现的各种故障场景,要求参与者分析并解决问题。

13 练习题数量131 每次练习提供的题目数量应根据练习的目的和难度进行合理安排。

132 对于基础知识的练习,数量可相对较多,以加强记忆和理解。

133 对于复杂的操作和故障排除练习,数量可适当减少,以保证参与者有足够的时间思考和解决问题。

14 练习题的难度级别141 分为初级、中级和高级三个难度级别。

142 初级练习题主要针对初学者,重点考察基本概念和简单操作的掌握程度。

143 中级练习题要求对常用功能和操作有较为熟练的掌握,并能解决一些常见问题。

144 高级练习题则涉及复杂的数据库设计、优化和疑难故障的处理。

15 完成练习题的时间要求151 初级练习题的完成时间一般不超过 30 分钟。

152 中级练习题的完成时间通常在 60 分钟左右。

153 高级练习题的完成时间可设定在 90 分钟至 120 分钟之间。

16 练习题的评估标准161 准确性答案的正确性是首要评估标准,包括操作结果的正确性和理论回答的准确性。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、根据查询要求和所得结果,写出相应的SQL。

表:CSW ITEM(主键PK1:COMPANY CD,主键PK2:ITEM CODE)
表: STOCK(主键PANY CD,主键PK2:DEPT CODE,主键PK3:ITEM CODE)
1、按下列条件从表STOCK中抽出数据,选择相应的SQL
表示项目:COMPANY-CD. DEPT-CODE
抽出条件1:COMPANY-CD为E0
抽出条件2:ITEM-CODE为ITEM001或者ITEM002
排序条件1:按QTY-A升序
A.SELECT COMPANY-CD, DEPT-CODE FROM STOCK
WHERE COMPANY-CD=‘E0’AND ITEM-CODE IN(‘ITEM001’、‘ITEM002’)ORDER BY QTY-A
B.SELECT COMPANY-CD+ DEPT-CODE FROM STOCK
WHERE COMPANY-CD=‘E0’AND ITEM-CODE IN(‘ITEM001’、‘ITEM002’)ORDER BY QTY-A
C. SELECT COMPANY-CD, DEPT-CODE FROM STOCK
WHERE COMPANY-CD=‘E0’AND ITEM-CODE=‘ITEM001’OR ITEM-CODE=‘ITEM002’ORDER BY QTY-A ASC
D. SELECT COMPANY-CD, DEPT-CODE FROM STOCK
WHERE COMPANY-CD=‘E0’AND ITEM-CODE=‘ITEM001’OR ITEM-CODE=‘ITEM002’ORDER BY QTY-A DESC
2、按下列条件从表STOCK中抽出数据,选择相应的SQL。

表示项目:COMPANY-CD,DEPT-CODE
抽出条件1:QTY-B为NULL
抽出条件2:去掉重复的数据
A.SELECT COMPANY-CD, DEPT-CODE FROM STOCK
WHERE QTY-B=NULL
B.SELECT COMPANY-CD+ DEPT-CODE FROM STOCK
WHERE QTY-B IS NULL
C.SELECT DISTINCT COMPANY-CD, DEPT-CODE FROM STOCK
WHERE QTY-B=NULL
D.SELECT DISTINCT COMPANY-CD, DEPT-CODE FROM STOCK
WHERE QTY-B is NULL
3、按下列条件从主表STOCK,副表CSW-ITEM中抽出数据。

选择相应的SQL。

表示项目: ITEM-CODE,QTY-A
抽出条件1:ITEM-NAME含‘卡’字
抽出条件2:QTY-A小于0的负数
要求:副表不满足抽出条件时,不会影响主表的件数,
此时副表的表示项目内容显示为NULL
A.SELECT ITEM-CODE,QTY-A FROM STOCK LEFT JOIN CSW-ITEM
ON PANY-CD = PANY-CD
AND STOCK.ITEM-CODE = CSW-ITEM.ITEM-CODE
WHERE
ITEM-NAME LIKE ‘%卡%’ AND QTY-A<0
B.SELECT STOCK.ITEM-CODE.QTY-A FROM STOCK LEFT JOIN CSW-ITEM ON PANY-CD = PANY-CD
AND STOCK.ITEM-CODE = CSW-ITEM.ITEM-CODE
WHERE
ITEM-NAME LIKE ‘%卡%’ AND QTY-A<0
C.SELECT ITEM-CODE,QTY-A FROM STOCK RIGHT JOIN CSW-ITEM
ON PANY-CD = PANY-CD
AND STOCK.ITEM-CODE = CSW-ITEM.ITEM-CODE
WHERE
ITEM-NAME LIKE ‘%卡%’ AND QTY-A<0
D.SELECT STOCK.ITEM-CODE.QTY-A FROM STOCK RIGHT JOIN CSW-ITEM ON PANY-CD = PANY-CD
AND STOCK.ITEM-CODE = CSW-ITEM.ITEM-CODE
WHERE
ITEM-NAME LIKE ‘%卡%’ AND QTY-A<0
4、按下列条件从表STOCK中抽取数据,选择相应的SQL.
表示项目: COMPANY CD. DEPT-CODE.
QTY-A的合计值
分组条件1:COMPANY CD
分组条件2:DEPT-CODE
抽出条件1:QTY-A为小于0的负数
A.SELECT COMPANY-CD, DEPT-CODE,SUM(QTY-A) FROM STOCK WHERE QTY-A<0
GROUP BY COMPANY-CD, DEPT-CODE
B.SELECT COMPANY-CD, DEPT-CODE,COUNT(QTY-A) FROM STOCK
WHERE QTY-A<0
GROUP BY COMPANY-CD, DEPT-CODE
C.SELECT COMPANY-CD, DEPT-CODE, SUM(QTY-A) FROM STOCK
GROUP BY COMPANY-CD, DEPT-CODE
WHERE QTY-A<0
D.SELECT COMPANY-CD, DEPT-CODE,COUNT(QTY-A) FROM STOCK
GROUP BY COMPANY-CD, DEPT-CODE
WHERE QTY-A<0
二、要求以SQL语法实现
表结构如下:(表名Tablel)
1、查询数学分数在表中第10名到第15名的学生信息
2、用一条SQL语句查询出每门课都大于85分的学生姓名
3、用一条SQL语句得到如下表结果:
三、编写SQL语句
1、创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话。

2、修改学生表的结构,添加一列信息,学历。

3、修改学生表的结构,删除一列信息,家庭地址。

4、向学生表添加如下信息:
学号姓名年龄性别联系电话学历
1 A 2
2 男123456 小学
2 B 21 男119 中学
3 C 23 男110 高中
4 D 18 女114 大学
5、修改学生表的数据,将电话以11开头的学员的学历改为“高中”。

6、删除学生表的数据,姓名以C开头,性别为‘男’的记录删除。

7、查询学生表的数据,将所有年龄小于22岁的,学历为“高中”的,学生的姓名和学号示出来。

8、查询出所有学生的姓名,性别,年龄降序排列。

9、按照性别分组查询所有的平均年龄。

四、有下列关系数据库,其中两张表结构如下
学生表:Student
学生成绩:Score
请写出下列查询:
“三年级”平均分数超过85分的每个学生的平均成绩,但不包括“体育”成绩,要求查询结果按平均成绩降序排列,如果平均成绩相同则按学号升序排列。

五、有下列关系数据库,其中表结构如下
Student(Sno,Sname,Sgender) 学生表 Sno:学号:Sname:学生姓名:Sage:学生年Sgender:学生性别
Course(Cno,Cname,Tno) 课程表Cno: 课程编号;Cname: 课程名字;Tno: 教室编号SC(Sno,Cno,score)成绩表Sno: 学号;Cno: 课程编号;score: 成绩
Teacher(Tno,Tname) 教师表 Tno: 教师编号:Tname: 教师名称
1查询姓“李”的老师的人数。

2、查询每门课程的平均成绩,结果按平均成绩升序排列。

3、查询课程名称为“数据库”,且分数高于80的学生姓名和分数。

六、请描述数据库的三范式并举例说明。

七、请用代码实现对象的浅复制与深复制。

相关文档
最新文档