Oracle数据库试题

合集下载

oracle数据库题库

oracle数据库题库

选择题1)哪些DBMS的调度器过程可以用来启用程序?2)A. ENABLE3)B. ENABLE_PROGRAM4)C. VALIDATE_PROGRAM5)D. SET_ATTRIBUTE6)E. SET_ENABLED7)答案: A,D8)下列哪项不是一个有效的日程表语法元素A. FREQB. BYHOURC. RUNDATED. INTERVALE. BYMINUTE答案:C"3)哪个调度视图可以查询目前正在执行工作?4)A. DBA_SCHEDULER_JOB_RUN_DETAILS5)B. DBA_SCHEDULER_RUNNING_JOBS DBA6)C. DBA_SCHEDULER_CURRENT_JOBS7)D. DBA_SCHEDULER_JOBS DBA8)E. DBA_SCHEDULER_EXECUTING_JOBS9)答案: B,D10)一个作业或程序创建时,启用属性的默认值是什么?11)A. TRUE12)B. FALSE13)C. There is no default. It must be defined at creation time.D. PENDINGE. NULL答案: B14)全球化支持是通过Oracle特性中的哪一个提供的文本和字符处理功能实现?15)A. RSTLNE16)B. NLSRTL17)C. LISTENER18)D. NLSSORT19)E. Linguistic sorts20)答案: B21)以下哪种数据类型存储时区信息到数据库中?22)A. TIMESTAMP23)B. DATE24)C. TIMESTAMP WITH TIME ZONED. TIMESTAMP WITH LOCAL TIME ZONEE. DATETIME答案: C,25)你要备份你的100 GB的数据库到一台远程磁带设备上。

当转移备份到磁带设备时您必须确保最低网络带宽消耗。

Oracle数据库考试试题库

Oracle数据库考试试题库

1.启动数据库的命令(A )。

A.startupB.startup openC.shutdownD.startup database2.(C )是启动数据库时用来记录数据文件、联机日志文件的相关信息的二进制文件。

A.数据文件B.参数文件C.控制文件D.归档文件3.你需要在表SALES里查找一些产品明细,其中PROD_ID列包括字符'_D123'。

(B )WHERE子句条件能得到这些相符产品。

A. WHERE prod_id LIKE '%_D123%' ESCAPE '_'B. WHERE prod_id LIKE '%\_D123%' ESCAPE '\'C. WHERE prod_id LIKE '%_D123%' ESCAPE '%_'D. WHERE prod_id LIKE '%\_D123%' ESCAPE '\_'4.关于单行函数,哪一个描述是正确的?(D )A. 他们只能接受一个参数。

B. 他们只能嵌套两层。

C. 参数只能是字段值或常量。

D. 他们始终为查找表中的每个行返回一个值。

5.下面哪个SQL语句显示1890.55 as $1,890.55?(ADE )选三项A. SELECT TO_CHAR(1890.55,'$0G000D00')FROM DUAL;B. SELECT TO_CHAR(1890.55,'$9,999V99')FROM DUAL;C. SELECT TO_CHAR(1890.55,'$99,999D99')FROM DUAL;D. SELECT TO_CHAR(1890.55,'$99G999D00')FROM DUAL;E. SELECT TO_CHAR(1890.55,'$99G999D99')FROM DUAL;6.下列关于ORACLE的to_date函数和to_char函数,描述正确的是(BC )选两项A. to_char函数是将字符串数据转换为日期数据B. to_date函数是将字符串数据转换为日期数据C. to_char函数是将日期数据转换为字符数据D. to_date函数是将日期数据转换为字符数据7.在表emp里,计算员工的年薪SAL*12并生成别名Annual Salary。

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、在连接操作中,如果左表和右表中不满足连接条件的数据都出现在结果中,那么这种连接是全外连接。

Oracle数据库试题100题(附答案)

Oracle数据库试题100题(附答案)

Oracle数据库试题100题(附答案)1.当Oracle服务器启动时,下列哪种文件不是必须的(D)。

A.数据文件B.控制文件C.日志文件D.归档日志文件2.在Oracle中,当用户要执行SELECT语句时,下列哪个进程从磁盘获得用户需要的数据(B)。

A.用户进程B.服务器进程C.日志写入进程(LGWRD.检查点进程(CKPT)3.在Oracle中,一个用户拥有的所有数据库对象统称为(B)。

A.数据库B.模式C.表空间D.实例4.在Oracle中,有一个教师表teacher的结构如下:ID NUMBER(5)NAME V ARCHAR2(25)EMAIL VARCHAR2(50)下面哪个语句显示没有Email地址的教师姓名(C)。

A.SELECT name FROM teacher WHERE email = NULL;B.SELECT name FROM teacher WHERE email NULL;C.SELECT name FROM teacher WHERE email IS NULL;D.SELECT name FROM teacher WHERE email IS NOT NULL;5.在Oracle数据库的逻辑结构中有以下组件:A 表空间B 数据块C 区D 段这些组件从大到小依次是(B)。

A.A→B→C→DB.A→D→C→BC.A→C→B→DD.D→A→C→B6.在Windows操作系统中,Oracle的(A)服务监听并接受来自客户端应用程序的连接请求。

A.OracleHOME_NAMETNSListenerB.OracleServiceSIDC.OracleHOME_NAMEAgentD.OracleHOME_NAMEHTTPServer7.在Oracle 中创建用户时,若未提及DEFAULT TABLESPACE关键字,则Oracle 就将(B)表空间分配给用户作为默认表空间。

ORACLE数据库习题.62

ORACLE数据库习题.62

1.ORACLE数据库物理结构包括以下三种文件,以下不属于的是〔〕A.系统文件B.日志文件C.数据文件D.控制文件2.以下哪个命令是用于ORACLE中数据导出的 ( )A.exp B.imp C.input D.output3.〔〕是用于控制数据访问的语言。

A.DML B.DDL C.DCL D.DLL4.NULL表示什么〔〕A.0 B.空格 C.值 D.没有值5.下面四个语句中哪一个是正确的?〔〕A.SELECT * , ENAME FROM EMP;B. DELETE * FROM EMP;C. SELECT DISTINCT EMPNO ,HIREDATE FROM EMP;D.SELECT ENAME|SAL AS “name〞 FROM EMP ;6.假定有一张表用户表users,其中一身份证字段ID_card。

为了维护数据的完整性,在设计数据库时,最好对ID_card字段添加约束,请问应该添加什么约束〔〕A. primary key B.check C.default D.not null7.下面哪一个like命令会返回名字象HOTKA的行?〔〕A.where ename like ‘_HOT%'B.where ename like ‘H_T%'C.where ename like ‘%TKA_'D.where ename like ‘%TOK%'8.〔〕操作符只返回由第一个查询选定但是没有被第二个查询选定的行。

B.UNION ALL9.EMPLOYEES表的结构如下:A.表中没有行。

B.有一个姓名为James的员工。

C.不能屡次回滚到相同的保存点。

D. 由于已经删除了员工ID180,因此最后一次更新未更新任何行。

10.以下运算结果不为空值的是〔〕A.12+NULLB.60*NULLC.NULL‖’NULL’D.12/〔60+NULL〕11.假设当前日期为’25-5月-06’,以下〔〕表达式能计算出5个月后那一天所在月份的最后一天的日期。

Oracle数据库基础题库【含答案】

Oracle数据库基础题库【含答案】

1、判断题,正确请写写"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、在连接操作中,如果左表和右表中不满足连接条件的数据都出现在结果中,那么这种连接是全外连接。

oracle笔试题及答案

oracle笔试题及答案

oracle笔试题及答案一、选择题1. Oracle数据库是一种()数据库管理系统。

A. 关系型B. 非关系型C. 层次型D. 网状型答案:A2. 下列哪个选项不属于Oracle数据库的特点?A. 完全支持SQL语言B. 支持分布式数据库C. 提供高可用性和故障恢复机制D. 仅支持单用户操作答案:D3. 在Oracle数据库中,下列关键字中哪个用于插入一行数据?A. UPDATEB. DELETEC. SELECTD. INSERT答案:D4. 在Oracle数据库中,下列关键字中哪个用于从表中删除一行数据?A. TRUNCATEB. DROPC. DELETED. REMOVE答案:C5. 在Oracle数据库中,下列关键字中哪个用于更新表中的数据?A. MODIFYB. ALTERC. UPDATED. CHANGE答案:C6. 在Oracle数据库中,下列哪个语句用于创建一个新的用户?A. CREATE ROLEB. CREATE USERC. GRANT PERMISSIOND. ALTER ACCOUNT答案:B7. 在Oracle数据库中,下列关键字中哪个用于将表中的数据按照指定的列进行排序?A. SORTB. GROUPC. ORDERD. ARRANGE答案:C8. 在Oracle数据库中,下列关键字中哪个用于查询满足特定条件的数据?A. SELECTB. SEARCHC. FINDD. FILTER答案:A9. 在Oracle数据库中,下面哪个关键字用于创建新的表?A. CREATEB. MAKEC. BUILDD. CONSTRUCT答案:A10. 下列哪个Oracle数据库对象用于避免数据冗余,提高查询速度,并提供数据的一致性和完整性?A. 视图(View)B. 函数(Function)C. 存储过程(Stored Procedure)D. 游标(Cursor)答案:A二、简答题请简要回答以下问题。

oracle练习题(打印版)

oracle练习题(打印版)

oracle练习题(打印版)### Oracle数据库练习题#### 一、选择题1. Oracle数据库中,哪个命令用于创建表?- A. CREATE TABLE- B. CREATE DATABASE- C. DROP TABLE- D. ALTER TABLE2. 以下哪个不是Oracle数据库的数据类型?- A. NUMBER- B. CHAR- C. DATE- D. IMAGE3. 在Oracle数据库中,哪个命令用于删除表?- A. DELETE FROM- B. DROP TABLE- C. REMOVE TABLE- D. ERASE TABLE4. Oracle数据库中,如何查看当前用户?- A. SELECT USER FROM DUAL;- B. SELECT CURRENT_USER FROM DUAL;- C. SELECT USERNAME FROM ALL_USERS;- D. SELECT CURRENT_USER FROM ALL_USERS;5. 以下哪个命令用于在Oracle数据库中创建索引?- A. CREATE INDEX- B. CREATE KEY- C. CREATE CONSTRAINT- D. CREATE UNIQUE#### 二、填空题1. 在Oracle数据库中,使用____命令可以查看表结构。

2. Oracle数据库中,使用____命令可以查看当前数据库的所有表。

3. 要删除Oracle数据库中的行,可以使用____命令。

4. Oracle数据库中,____用于存储二进制数据。

5. Oracle数据库中,____命令用于查看数据库中所有的索引。

#### 三、简答题1. 描述Oracle数据库中事务的ACID属性。

2. 解释Oracle数据库中的锁定机制。

3. 说明Oracle数据库中视图的作用。

#### 四、操作题1. 创建一个名为`Employees`的表,包含以下字段:- `EmployeeID` NUMBER(10) PRIMARY KEY,- `FirstName` VARCHAR2(50),- `LastName` VARCHAR2(50),- `HireDate` DATE,- `Salary` NUMBER(10, 2),- `DepartmentID` NUMBER(10).2. 向`Employees`表中插入以下数据:- `EmployeeID`: 1001, `FirstName`: 'John', `LastName`:'Doe', `HireDate`: '2023-01-01', `Salary`: 70000,`DepartmentID`: 101.- `EmployeeID`: 1002, `FirstName`: 'Jane', `LastName`:'Smith', `HireDate`: '2023-02-15', `Salary`: 50000,`DepartmentID`: 102.3. 编写一个查询,显示所有员工的姓名和工资,按工资从高到低排序。

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

constraint pk_spj primary key (sno,pno,jno),constraint fk_spj_sno foreign key (sno) references s(sno),constraint fk_spj_pno foreign key (pno) references p(pno),constraint fk_spj_jno foreign key (jno) references j(jno)实验二游标和函数1、定义一个游标完成显示所有供应商名。

declarev_sname s.sname%type;cursor cursor_sname is select sname from s;beginfor curso in cursor_snameloopdbms_output.put_line(curso.sname);end loop; end;2、定义、调用一个简单函数:查询返回指定供应商编号的供应商名及其供应零件总数量。

create or replace function fun(f_sno in s.sno%type,f_sname out s.sname%type)return number as f_qty number;beginSELECT s.sname,sum(qty) into f_sname,f_qty from s,spj WHERE s.sno=spj.sno GROUP BY s.sname,spj.sno having spj.sno=f_sno;return f_qty; end;declarev_sno s.sno%type:='&sno';v_sname s.sname%type;v_qty spj.qty%type;beginv_qty:=fun(v_sno,v_sname);dbms_output.put_line(v_sname||v_qty);end;3、定义一个函数:对于给定的供应商号,判断是否存在,若存在返回0,否则返回-1。

写一段程序调用此函数,若供应商号存在则在spj插入一元组。

create or replace function fun1(f1_sno in s.sno%type)return number as a number;beginselect count(sno) into a from s where sno=f1_sno;if a=0 thenreturn -1;else return 0;end if; end;declarev_sno s.sno%type:='&sno';beginif fun1(v_sno)=0 theninsert into spj values(v_sno,'P4','J5',120);end if; end;select *from spj where sno='S1';4、定义、调用一个类似于SUM功能的函数:计算指定供应商编号的供应零件总数量。

create or replace function fsum(fs_sno in s.sno%type)return number as summ number;cursor cursor_sno is select qty from s,spj where s.sno=fs_sno and spj.sno=s.sno ;beginsumm:=0;for curso in cursor_sno loopsumm:=summ+curso.qty;end loop;return summ; end;declarev_sno s.sno%type:='&sno';c number;beginc:=fsum(v_sno);dbms_output.put_line(c);end;5、将题2中函数改用包定义。

create or replace package packIs function fun(f_sno in s.sno%type,f_sname out s.sname%type)return number; end;create or replace package body packIs function fun(f_sno in s.sno%type,f_sname out s.sname%type)return number as f_qty number;beginSELECT s.sname,sum(qty) into f_sname,f_qty from s,spj WHERE s.sno=spj.sno GROUP BY s.sname,spj.sno having spj.sno=f_sno;return f_qty; end fun; end;declarev_sno s.sno%type:='&sno';v_sname s.sname%type;v_qty spj.qty%type;beginv_qty:=pack.fun(v_sno,v_sname);dbms_output.put_line(v_sname||v_qty);end;实验三存储过程1、定义、调用简单存储过程:计算所有供应商供应零件总数量并修改供应商相关列sqty。

create or replace procedure pro1As p_qty number;cursor cur1 is select sno,sum(qty) as p_qty from spj group by spj.sno;beginfor c in cur1 loopupdate s set s.sqty=c.p_qty where sno=c.sno;end loop; end;beginpro1; end;2、定义、调用参数存储过程:查询返回指定供应商的供应零件总数量。

比较与函数不同。

create or replace procedure pro2(p_sno in s.sno%type,p_qty out spj.qty%type)As beginselect sum(qty) into p_qty from spj WHERE spj.sno=p_sno GROUP BY spj.sno ; dbms_output.put_line('供应商'||p_sno||'的总数量为:'||p_qty);end;declarev_sno s.sno%type:='&sno';v_qty spj.qty%type;Beginpro2(v_sno,v_qty);end;3、定义、调用存储过程:插入一个供应商信息(所有信息由参数提供)。

create or replace procedure pro3(p_sno s.sno%type,p_sname s.sname%type,p_status s.status%type,p_city s.city%type)As cout number;beginselect count(*) into cout from s where s.sno=p_sno;if cout>0 thendbms_output.put_line('编号为'||p_sno||'的供应商已存在!');elsif cout=0 theninsert into s(sno,sname,status,city) values(p_sno,p_sname,p_status,p_city);dbms_output.put_line('插入成功!');else dbms_output.put_line('出现其它错误!');end if; end;declarev_sno s.sno%type:='&sno';v_sname s.sname%type:='&sname;v_status s.status%type:='&status';v_city s.city%type:='&city';beginpro3(v_sno,v_sname,v_status,v_city);end;select *from s;4、定义、调用存储过程:删除指定代码的零件信息,并给出删除元组数。

create or replace procedure pro4(p_pno in p.pno%type,p_cut out number)As begindelete from spj where spj.pno=p_pno;delete from p where pno=p_pno;p_cut:=SQL%ROWCOUNT;dbms_output.put_line('已经删除'||p_cut||'行');end;declarev_pno p.pno%type:='&pno';v_cut number;beginpro4(v_pno,v_cut);end;5、定义、调用存储过程:修改指定代码项目的其它信息(所有信息由参数提供)。

create or replace procedure pro5(p_jno in j.jno%type,p_jname j.jname%type,p_city j.city%type)As p_cout number;beginselect count(*) into p_cout from j where jno=p_jno;if p_cout=0 thendbms_output.put_line('编号'||p_jno||'的项目不存在');else update j set jname=p_jname,city=p_city where jno=p_jno;dbms_output.put_line('修改成功!');end if; end;declarev_jno j.jno%type:='&jno';v_jname j.jname%type:='&jname';v_city j.city%type:='&city';beginpro5(v_jno,v_jname,v_city);end;select * from j;实验四触发器1、定义一个触发器,完成及时计算所有供应商供应零件总数量。

相关文档
最新文档