oracle数据库期末考试试题及答案

oracle数据库期末考试试题及答案
oracle数据库期末考试试题及答案

oracle数据库期末考试试题及答案

A1、以下()内存区不属于SGA。

A.PGAB.日志缓冲区C.数据缓冲区D.共享池

D2、()模式存储数据库中数据字典的表和视图。

A.DBAB.SCOTTC.SYSTEMD.SYS

C3、在Oracle中创建用户时,若未提及DEFAULTTABLESPACE关键字,则Oracle就将()表空间分配给用户作为默认表空间。

A.HRB.SCOTTC.SYSTEMD.SYS

A4、()服务监听并按受来自客户端应用程序的连接请求。

A.OracleHOME_NAMETNSListener

B.OracleServiceSID

C.OracleHOME_NAMEAgent

D.OracleHOME_NAMEHTTPServer

B5、()函数通常用来计算累计排名、移动平均数和报表聚合等。

A.汇总B.分析C.分组D.单行

B6、()SQL语句将为计算列SAL*12生成别名AnnualSalary

A.SELECTename,sal*12‘AnnualSalary’FROMemp;

B.SELECTename,sal*12“AnnualSalary”FROMemp;

C.SELECTename,sal*12ASAnnualSalaryFROMemp;

D.SELECTename,sal*12ASINITCAP(“AnnualSalary”)FROMemp;

B7、锁用于提供()。

A.改进的性能

B.数据的完整性和一致性

C.可用性和易于维护

D.用户安全

C8、()锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。

A.行共享B.行排他C.共享D.排他

B9、带有()子句的SELECT语句可以在表的一行或多行上放置排他锁。

A.FORINSERTB.FORUPDATE

C.FORDELETED.FORREFRESH

C10、使用()命令可以在已分区表的第一个分区之前添加新分区。

A.添加分区B.截断分区

C.拆分分区D.不能在第一个分区前添加分区

C11、()分区允许用户明确地控制无序行到分区的映射。

A.散列B.范围C.列表D.复合

C12、可以使用()伪列来访问序列。

A.CURRVAL和NEXTVALB.NEXTVAL和PREVAL

C.CACHE和NOCACHED.MAXVALUE和MINVALUE

A13、带有错误的视图可使用()选项来创建。

A.FORCE

B.WITHCHECKOPTION

C.CREATEVIEWWITHERROR

D.CREATEERRORVIEW

B14、在联接视图中,当()时,该基表被称为键保留表。

A.基表的主键不是结果集的主键

B.基表的主键是结果集的主键

C.基表的主键是结果集的外键

D.基表的主键不是结果集的外键

D15、在列的取值重复率比较高的列上,适合创建()索引。

A.标准B.唯一C.分区D.位图

C16、要以自身的模式创建私有同义词,用户必须拥有()系统权限A.CREATEPRIVATESYNONYM

B.CREATEPUBLICSYNONYM

C.CREATESYNONYM

D.CREATEANYSYNONYM

D17、PL/SQL块中不能直接使用的SQL命令是()。

A.SELECTB.INSERT

C.UPDATED.DROP

B18、以零作除数时会引发()异常。

A.VALUE_ERRORB.ZERO_DIVIDE

C.STORAGE_ERRORD.SELF_IS_NULL

A19、要更新游标结果集中的当前行,应使用()子句。

A.WHERECURRENTOFB.FORUPDATE

C.FORDELETED.FORMODIFY

B20、用于处理得到单行查询结果的游标为()。

A.循环游标B.隐式游标

C.REF游标D.显式游标

C21、公用的子程序和常量在()中声明。

A.过程B.游标

C.包规范D.包主体

C22、数据字典视图()包含存储过程的代码文本

A.USER_OBJECTSB.USER_TEXT

C.USER_SOURCED.USER_DESC

C23、以下不属于命名的PL/SQL块的是()。

A.程序包B.过程

C.游标D.函数

A24、()包用于显示PL/SQL块和存储过程中的调试信息。

A.DBMS_OUTPUT

B.DBMS_STANDARD

C.DBMS_INPUT

D.DBMS_SESSION

A25、Oracle的内置程序包由()用户所有。

A.SYSB.SYSTEM

C.SCOTTD.PUBLIC

A26、()触发器允许触发操作中的语句访问行的列值。

A.行级B.语句级

C.模式D.数据库级

A27、在非归档日志方式下操作的数据库禁用了()。

A.归档日志

B.联机日志

C.日志写入程序

D.日志文件

A28、以下哪种备份方式需要在完全关闭数据库进行()。

A.无归档日志模式下的数据库备份

B.归档日志模式下的数据库备份

C.使用导出实用程序进行逻辑备份

D.以上都不对

B29、()方式的导出会从指定的表中导出所有数据。

A.分区B.表

C.全部数据库D.表空间

C30、()参数用于确定是否要导入整个导出文件。

A.CONSTRAINTSB.TABLES

C.FULLD.FILE

二、填空题(每空2分,共40分)

1、假设已在某远程客户端完成网络服务名配置,服务名为aptech,请写出用户MARTIN(用

户口令martinpass)连接到服务器的命令:

Connectmartin/martinpass@aptech

2、SYS用户以管理员身份登录后,要授予用户MARTIN可以对SCOTT用户的EMP表进行查询

的权限,请写出授权命令:(假设MARTIN用户已存在)

Grantselectonscott.emptomartin

3、创建表employee的副本,但不包含表中的记录:

CREATETABLEemployee_copyAS select*fromemployeewhere1=2

4、查询itemfile表中itemrate列的信息,要求将数值转换为字符串,并使用当前货币符

号作为前缀:

SELECT to_char(itemrate,'C99999')FROMitemfile;

5、查itemfile表中itemdesc、re_level列的信息,要求re_level为NULL时显示为0

SELECTitemdesc,NVL(re_level,0)FROMitemfile;

6、完成以下PL/SQL块,功能是:显示2 到50的25个偶数。

BEGIN

FOR even_numbe rIN1..25

LOOP

DBMS_OUTPUT.PUT_LINE(even_number*2);

ENDLOOP

END;

7、完成以下PL/SQL块,功能是:接受职员编号并检索职员姓名。将职员姓名存储在变量

empname中,如果代码引发VALUE_ERROR异常,则向用户显示错误消息。

DELCARE

empnameemployee.ename%TYPE;;

enoemployee.empno%TYPE;

BEGIN

eno:=’&employee_number’;

selectenameintoempnamefromemployeewhereempno=eno

DBMS_OUTPUT.PUT_LINE(‘职员姓名:’||empname);

exception

WHENVALUE_ERRORTHEN

DBMS_OUTPUT.PUT_LINE(‘要存储在变量中的值过大’)

END;

8、完成以下PL/SQL块,功能是:使用游标,显示所有单价低于250元的玩具的单价。

DECLARE

my_toy_pricetoys.toyprice%TYPE;

CURSORtoy_curIS

SELECTtoypriceFROMtoys

WHEREtoyprice<250;

BEGIN

Opentoy_cur

LOOP

Fetchtoy_curintomy_toy_price

EXITWHENtoy_cur%NOTFOUND;

DBMS_OUTPUT.PUT_LINE(toy_cur%ROWCOUNT||'.玩具单价:'||my_toy_price);

ENDLOOP;

CLOSEtoy_cur;

END;

9、完成以下PL/SQL块,功能是:使用游标显示销售报表。如果目标销售额(tsales)大于实际销售额(asales),则显示消息“需提高销售额”。如果tsales等于asales,则显示消息“已达到销售额”,否则显示消息“销售业绩出色”

DECLARE

CURSORsales_curISSELECT*FROMsalesdetails;

BEGIN

Forsales_resinsales_curloop

IFsales_rec.tsales>sales_rec.asalesTHEN

DBMS_OUTPUT.PUT_LINE('产品:'||sales_rec.pid||'需提高销售额');

ELSE

IF sales_res.tsales=sales_res.asales THEN

DBMS_OUTPUT.PUT_LINE('产品:'||sales_rec.pid||'已达到销售额');

ELSE

DBMS_OUTPUT.PUT_LINE('产品:'||sales_rec.pid||'销售业绩出色');

ENDIF;

ENDIF;

ENDLOOP;

END;

10、完成以下PL/SQL块,功能是:创建一个交换两数的过程。

CREATEORREPLACEPROCEDURE

swap(p1INOUTNUMBER,p2inout NUMBER)IS

v_tempNUMBER;

BEGIN

v_temp:=p1;

p1:=p2;

p2:=v_temp;

END;

11、完成以下PL/SQL块,功能是:创建一个函数dept_name,其功能是接受职员编号后返回职

(注:部门名称在dept表中,而职员信息在emp表中,职员所在部门号的列名为deptno)员所在部门名称。

CREATEORREPLACEFUNCTIONdept_name(emp_noNUMBER)

RETURNVARCHAR2AS

dept_noNUMBER(2);

resultdept.dname%TYPE;

BEGIN

Selecetdeptnointodept_nofromempwhereempno=emp_no

SELECTdnameINTOresultFROMdept

WHEREdeptno=dept_no;

Returnresult

EXCEPTION

WHENOTHERSTHEN

RETURNNULL;

END;

12、要执行pack_me包中的order_proc过程(有一个输入参数),假设参数值为’002’,可以输入以下命令:

EXECUTEpack_ma.order-proc(‘002’)

13、完成以下PL/SQL块的功能是:创建一个触发器biu_job_emp,无论用户插入记录,还是修改EMP表的job列,都将用户指定的job列的值转换成大写。

CREATEORREPLACETRIGGERbiu_job_emp

Beforeinsertorupdateofjobonemp

Foreachrow

BEGIN

:NEW.job:=upper(;new.job)

END;

答案

二、填空题(每空2分,共40分)

中南大学oracle数据库期末考试试题及答案

A1、以下()内存区不属于SGA。 A.PGA B.日志缓冲区C.数据缓冲区D.共享池 D2、()模式存储数据库中数据字典的表和视图。 A.DBA B.SCOTT C.SYSTEM D.SYS C3、在Oracle中创建用户时,若未提及DEFAULT TABLESPACE 关键字,则Oracle就将()表空间分配给用户作为默认表空间。 A.HR B.SCOTT C.SYSTEM D.SYS A4、()服务监听并按受来自客户端应用程序的连接请求。 A.OracleHOME_NAMETNSListener B.OracleServiceSID C.OracleHOME_NAMEAgent D.OracleHOME_NAMEHTTPServer B5、()函数通常用来计算累计排名、移动平均数和报表聚合等。 A.汇总B.分析C.分组D.单行 B6、()SQL语句将为计算列SAL*12生成别名Annual Salary A.SELECT ename,sal*12 …Annual Salary? FROM emp; B.SELECT ename,sal*12 “Annual Salary” FROM emp; C.SELECT ename,sal*12 AS Annual Salary FROM emp; D.SELECT ename,sal*12 AS INITCAP(“Annual Salary”) FROM emp; B7、锁用于提供( )。 A.改进的性能

B.数据的完整性和一致性 C.可用性和易于维护 D.用户安全 C8、( )锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。 A.行共享B.行排他C.共享D.排他 B9、带有( )子句的SELECT语句可以在表的一行或多行上放置排他锁。 A.FOR INSERT B.FOR UPDATE C.FOR DELETE D.FOR REFRESH C10、使用( )命令可以在已分区表的第一个分区之前添加新分区。 A.添加分区B.截断分区 C.拆分分区D.不能在第一个分区前添加分区 C11、( )分区允许用户明确地控制无序行到分区的映射。 A.散列B.范围C.列表D.复合 C12、可以使用()伪列来访问序列。 A.CURRVAL和NEXTVAL B.NEXTVAL和PREVAL C.CACHE和NOCACHE D.MAXVALUE和MINVALUE A13、带有错误的视图可使用()选项来创建。 A.FORCE B.WITH CHECK OPTION C.CREATE VIEW WITH ERROR

Oracle数据库系统-课程设计文档

Oracle数据库 课程设计报告班级:浦计软1303 姓名:陈子阳 学号:P1405130307 学期:2014 上半学期

1.数据项和数据结构 (1)学生基本信息 组成:学号、姓名、班级、性别、出生日期、所在年级、所在班级、联系电话(2)课程基本信息 组成:课程编号、课程名称、授课教师、学分、学时、课程简介 (3)学生成绩信息 组成:考试编号、所在班级、学生学号、课程名称、考试分数 (4)课程设置信息 组成:年级、课程名称 数据库结构 2.系统功能

(1)课程管理功能: 完成课程信息的录入、修改、删除、查询等功能,基本信息包括:课程编号,课程名称,任课教师、学分、学时和课程内容简介等。 (2)成绩录入功能: 主要功能用来对学生的成绩进行收集和修改。具体包括学生成绩录入、修改、删除、查询、打印等功能,由于一些资料可以Word文档或Excel表格输入,故需要增加导入、导出数据功能。成绩录入需要分班级、分年级以及考试时间。修改要与成绩录入相对应。查询条件设置应该齐全,可以班级查询,年级查询,也可以姓名查询,学号查询等等。要实现打印功能。 (3)班级统计功能: 主要用于对学生的成绩以班级为单位进行处理。具体包括各班学生总成绩、平均成绩、统计班级某分数段内的学生人数及班级内排名。各项统计仅对于某学期某次考试而言。 (4)用户信息管理功能: 本系统包括三类使用用户:系统管理员,学生和教师。管理员具有最高权限,但不能修改成绩。教师只能录入和修改自己所教课程的成绩。成绩一旦录入完成,教师也不可轻易修改,除非向管理员申请。学生只有查询自己成绩的权限。所有用户必须注册登录后方可使用本管理系统。所有用户都可以修改自己登录的密码。 学生的信息包括:学号、姓名、性别、出生日期、班级、年级等。教师的信息包括:编号、姓名、性别、职称等。 (5)系统维护功能: 数据备份、数据恢复,帮助信息,用户注册、登陆及退出。 3.实现过程 创建学生基本信息表

Oracle数据库设计文档模板

DR-RD-020(V1.1) 超市管理系统 数据库设计说明书 (内部资料请勿外传) 编写:丁东亚日期:2013-12-03 检查:日期: 审核:日期: 批准:日期: 淮阴师范学校 超市管理系统 (1) 数据库设计说明书 (1)

1 引言 (2) 1.1 编写目的 (2) 1.2 术语表 (2) 1.3 参考资料 (3) 2 数据库环境说明 (3) 3 数据库的命名规则 (3) 4 逻辑设计 (3) 5 物理设计 (4) 5.1 表汇总 (4) 5.2 表[X]:[XXX表] (4) 5.3 视图的设计 (6) 5.4 存储过程、函数及触发器的设计 (6) 6 安全性设计 (6) 6.1 防止用户直接操作数据库的方法 (6) 6.2 用户帐号密码的加密方法 (7) 6.3 角色与权限 (7) 7 优化 (7) 8 数据库管理与维护说明 (7) 1引言 1.1 编写目的 本需求的编写目的在于研究超市管理系统软件的开发途径和应用方法。 本需求的预期读者是与超市管理系统软件开发有联系的决策人,开发组成人员,扶助开发者,支持本项目的领导和公司人员,软件验证者。 1.2 术语表 定义系统或产品中涉及的重要术语,为读者在阅读文档时提供必要的参考信息。

1.3 参考资料 2数据库环境说明 提示: (1)说明所采用的数据库系统,设计工具,编程工具等 (2)详细配置 3数据库的命名规则 提示: (1)说明本数据库的命名规则,例如:本数据库设计完全按照《xx数据库设计规范》命名。 (2)如果本数据库的命名规则与公司的标准不完全一致的话,请作出解释。 4逻辑设计 数据实体-关系图 (说明本数据库将反映的现实世界中的实体、属性和它们之间的关系等的原始数据形式,建

Oracle实验报告

Oracle数据库实验报告 实验一:Oracle 10g安装卸载及相关工具配置 一、实验目标: 安装Oracle 10g,了解OEM,通过DBCA安装数据库,通过DBCA删除数据库,sqldeveloper连接数据库,卸载oracle 10g。 二、实验学时数 2学时 三、实验步骤和内容: 1、安装Oracle10g(默认安装数据库) 双击setup.exe, 选择基本安装,安装目录D:盘,标准版,默认数据库orcl,口令bhbh。 进入先决条件检查界面时:网络配置需求选项不用打勾,直接下一步,是。 直到安装成功。 2、登陆和了解OEM 主要是已网页的形式来对数据库进行管理。

http://主机IP:1158/em 用户名:sys 口令:bhbh 身份:sysdba 或者 用户名:system 口令:bhbh 身份:normal 3、通过DBCA删除已安装的默认数据库orcl 程序->Oracle - OraDb10g_home1->配置和移植工具->Database Configuration Assistant->删除数据库->…… 4、通过DBCA安装数据库xscj 程序->Oracle - OraDb10g_home1->配置和移植工具->Database Configuration Assistant->创建数据库->…… 5、sqldeveloper连接数据库 打开sqldeveloper,新建连接 连接名:system_ora 用户名:system 口令:bhbh 主机名:本机计算机名 SID:xscj 测试,显示成功,连接,保存。

6、卸载oracle 10g Windows下 1>停止所有Oracle服务,点Universal Installer卸载 2>删除注册表中的所有关于Oracle项 在HKEY_LOCAL_MACHINE\SOFTWARE下,删除Oracle目录 3>删除硬盘上所有Oracle文件。 (1)Oracle安装文件 (2)系统目录下,在Program files文件夹中的Oracle文件 四、上机作业 根据实验步骤完成逐个实验目标中的任务。 五、心得体会 通过这次的实验,我了解了oracle数据库的情况。懂得了数据库就是把数据存储在一个类似与仓库的地方,需要用时才从数据库里调出来。通过上机实践,知道了装数据库和卸载数据库,并且学会了怎样连数据库。 实验二:Oracle 10g手工建数据库 一、实验目标: 安装Oracle 10g数据库环境,手工建立数据库;通过Net Configuration Assistant建立监听,使用sqldeveloper连接数据库测试。 二、实验学时数 2学时 三、实验步骤和内容: 先安装好Oracle 10g数据库环境(不安装默认数据库)。 1.创建好相关的目录

ORACLE数据库期末考试题目及答案

期末考试卷(卷) 课程名称:数据库考试方式:开卷()闭卷(√) 、本试卷共4 页,请查看试卷中是否有缺页。 2、考试结束后,考生不得将试卷、答题纸带出考场。 1、以下(a )内存区不属于SGA。 A.PGA B.日志缓冲区 C.数据缓冲区 D.共享池 2、d )模式存储数据库中数据字典的表和视图。 (A.DBA B.SCOTT C.SYSTEM D.SYS 3、Oracle 中创建用户时,在若未提及DEFAULT TABLESPACE 关键字,Oracle 就将 c )则(表空间分配给用户作为默认表空间。A.HR B.SCOTT C.SYSTEM D.SYS

4、a )服务监听并按受来自客户端应用程序的连接请求。(A.OracleHOME_NAMETNSListener B.OracleServiceSID C.OracleHOME_NAMEAgent D.OracleHOME_NAMEHTTPServer 5、b )函数通常用来计算累计排名、移动平均数和报表聚合等。(A.汇总B.分析C.分组D.单行 6、b)SQL 语句将为计算列SAL*12 生成别名Annual Salary (A.SELECT ename,sal*12 …Annual Salary? FROM emp; B.SELECT ename,sal*12 “Annual Salary” FROM emp; C.SELECT ename,sal*12 AS Annual Salary FROM emp; D.SELECT ename,sal*12 AS INITCAP(“Annual Salary”) FROM emp; 7、锁用于提供(b )。 A.改进的性能 B.数据的完整性和一致性 C.可用性和易于维护 D.用户安全 8、( c )锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。 A.行共享B.行排他C.共享D.排他 9、带有( b )子句的SELECT 语句可以在表的一行或多行上放置排他锁。 A.FOR INSERT B.FOR UPDATE C.FOR DELETE D.FOR REFRESH

Oracle数据库数据对象分析_张达宇

Oracle数据库数据对象分析 日期:2006-01-18 08:00 点击: Oracle数据库数据对象中最基本的是表和视图,其他还有约束、序列、函数、存储过程、包、触发器等。对数据库的操作可以基本归结为对数据对象的操作,理解和掌握Oracle数据库对象是学习Oracle的捷径。 表和视图 Oracle中表是数据存储的基本结构。ORACLE8引入了分区表和对象表,ORACLE8i引入了临时表,使表的功能更强大。视图是一个或多个表中数据的逻辑表达式。本文我们将讨论怎样创建和管理简单的表和视图。 管理表 表可以看作有行和列的电子数据表,表是关系数据库中一种拥有数据的结构。用CREATE TABLE语句建立表,在建立表的同时,必须定义表名,列,以及列的数据类型和大小。例如: 这样我们就建立了一个名为products的表,关键词CREATE TABLE后紧跟的表名,然后定义了三列,同时规定了列的数据类型和大小。 在创建表的同时你可以规定表的完整性约束,也可以规定列的完整性约束,在列上普通的约束是NOT NULL,关于约束的讨论我们在以后进行。 在建立或更改表时,可以给表一个缺省值。缺省值是在增加行时,增加的数据行中某一项值为null时,oracle即认为该值为缺省值。 下列数据字典视图提供表和表的列的信息: . DBA_TABLES . DBA_ALL_TABLES . USER_TABLES . USER_ALL_TABLES . ALL_TABLES . ALL_ALL_TABLES . DBA_TAB_COLUMNS . USER_TAB_COLUMNS . ALL_TAB_COLUMNS 表的命名规则 表名标识一个表,所以应尽可能在表名中描述表,oracle中表名或列名最长可以达30个字符串。表名应该以字母开始,可以在表名中包含数

ORACLE数据库管理系统介绍精编

O R A C L E数据库管理系 统介绍精编 Lele was written in 2021

ORACLE 数据库管理系统介绍 的特点: 可移植性 ORACLE采用C语言开发而成,故产品与硬件和操作系统具有很强的独立性。从大型机到微机上都可运行ORACLE的产品。可在UNIX、DOS、Windows等操作系统上运行。可兼容性由于采用了国际标准的数据查询语言SQL,与IBM的SQL/DS、DB2等均兼容。并提供读取其它数据库文件的间接方法。 可联结性对于不同通信协议,不同机型及不同操作系统组成的网络也可以运行ORAˉCLE数据库产品。 的总体结构 (1)ORACLE的文件结构一个ORACLE数据库系统包括以下5类文件:ORACLE RDBMS的代码文件。 数据文件一个数据库可有一个或多个数据文件,每个数据文件可以存有一个或多个表、视图、索引等信息。 日志文件须有两个或两个以上,用来记录所有数据库的变化,用于数据库的恢复。控制文件可以有备份,采用多个备份控制文件是为了防止控制文件的损坏。参数文件含有数据库例程起时所需的配置参数。 (2)ORACLE的内存结构一个ORACLE例程拥有一个系统全程区(SGA)和一组程序全程区(PGA)。

SGA(System Global Area)包括数据库缓冲区、日志缓冲区及共享区域。 PGA(Program Global Area)是每一个Server进程有一个。一个Server进程起动时,就为其分配一个PGA区,以存放数据及控制信息。 (3)ORACLE的进程结构ORACLE包括三类进程: ①用户进程用来执行用户应用程序的。 ②服务进程处理与之相连的一组用户进程的请求。 ③后台进程 ORACLE为每一个数据库例程创建一组后台进程,它为所有的用户进程服务,其中包括: DBWR(Database Writer)进程,负责把已修改的数据块从数据库缓冲区写到数据库中。LGWR(Log Writer)进程,负责把日志从SGA中的缓冲区中写到日志文件中。 SMON(System Moniter)进程,该进程有规律地扫描SAG进程信息,注销失败的数据库例程,回收不再使用的内存空间。PMON(Process Moniter)进程,当一用户进程异常结束时,该进程负责恢复未完成的事务,注销失败的用户进程,释放用户进程占用的资源。 ARCH(ARCHIVER)进程。每当联机日志文件写满时,该进程将其拷贝到归档存储设备上。另外还包括分布式DB 中事务恢复进程RECO和对服务进程与用户进程进行匹配的Dnnn进程等。

ORACLE数据库设计指南

数据库设计核心原则 罗代均 一、3NF第三范式 通常认为,第三范式在性能,扩展性和数据完整性方面达到了最好平衡. 通常认为,第三范式在性能,扩展性和数据完整性方面达到了最好平衡. 有以下几个要点。有以下几个要点。 1.一个表只描述一个单一的事物(实体)。一个表只描述一个单一的事物 2.表内的每一个值在整个数据库只出现一次(外键除外) 2.表内的每一个值在整个数据库只出现一次(外键除外)。表内的每一个值在整个数据库只出现一次 3.表内的每一行都应该被唯一的标识(有唯一主键)。 3.表内的每一行都应该被唯一的标识(有唯一主键)。表内的每一行都应该被唯一的标识 4.表内不存储与主键无关的信息。表内不存储与主键无关的信息 二、字段设计技巧 1.确保表中没有计算字段 计算字段的值,是由其他字段的值计算而来,当你更新其他字段的时候,很容易忽略同时更新这个计算字段,造成数据的错误。 2.确保这个字段的值只有一个 例如下表Users: 用户ID 用户名称电话号码 001 robin 1358888888/028-*******/… 电话号码的值就不只一个,因此电话字段不能放在users表中,解决办法是增加一个表Phone 电话号码ID 用户ID 电话号码 001 001 13588888 002 001 028-888888 这个表就是Users的从表,用户ID是外键. 还有地址address,和电话的情况类似。 3.尽可能地细分字段 如下雇员表(employee) 雇员ID 雇员名称地址 emp_id emp_name emp_address 001 Robin 四川省成都市高新区天泰路1号 这里的emp_address就可以细分,改进的表如下 雇员ID 雇员名称国家省/直辖市地/市 001 罗代均china 四川成都区/县高新区街道天泰路1号 这样更方便我们编辑和统计,有利于保证数据的完整性。 三数据表设计技巧 1.为表内的每一个字段添加表名缩写 例如客户表 customer cust_id cust_name cust_type cust_city ... 这样书写SQL语句时,很容易就知道这个字段属于哪个表,代表什么含义。 例如cust_city ,就不会和employee表的emp_city混淆了。

oracle数据库期末考试试题及复习资料

oracle数据库期末考试试题及答案 A1、以下()内存区不属于SGA。 A.PGA B.日志缓冲区C.数据缓冲区D.共享池 D2、()模式存储数据库中数据字典的表和视图。 A.DBA B.SCOTT C.SYSTEM D.SYS C3、在Oracle中创建用户时,若未提及DEFAULT TABLESPACE 关键字,则Oracle就将()表空间分配给用户作为默认表空间。A.HR B.SCOTT C.SYSTEM D.SYS A4、()服务监听并按受来自客户端应用程序的连接请求。A.OracleHOME_NAMETNSListener B.OracleServiceSID C.OracleHOME_NAMEAgent D.OracleHOME_NAMEHTTPServer B5、()函数通常用来计算累计排名、移动平均数和报表聚合等。A.汇总B.分析C.分组D.单行 B6、()SQL语句将为计算列SAL*12生成别名Annual Salary A.SELECT ename,sal*12 ‘Annual Salary' FROM emp; B.SELECT ename,sal*12 “Annual Salary”FROM emp; C.SELECT ename,sal*12 AS Annual Salary FROM emp; D.SELECT ename,sal*12 AS INITCAP(“Annual Salary”) FROM

12 / 1 emp; B7、锁用于提供( )。 A.改进的性能 B.数据的完整性和一致性 C.可用性和易于维护 D.用户安全 C8、( )锁用于锁定表,允许其他用户查询表中的行和锁定表,但不允许插入、更新和删除行。 A.行共享B.行排他C.共享D.排他 B9、带有( )子句的SELECT语句可以在表的一行或多行上放置排他锁。 A.FOR INSERT B.FOR UPDATE C.FOR DELETE D.FOR REFRESH C10、使用( )命令可以在已分区表的第一个分区之前添加新分区。A.添加分区B.截断分区 C.拆分分区D.不能在第一个分区前添加分区 C11、( )分区允许用户明确地控制无序行到分区的映射。 A.散列B.范围C.列表D.复合 C12、可以使用()伪列来访问序列。 A.CURRVAL和NEXTVAL B.NEXTVAL和PREVAL C.CACHE和NOCACHE D.MAXVALUE和MINVALUE

ORACLE-数据库管理系统介绍

数据库管理系统介绍 1的特点: 可移植性采用C语言开发而成,故产品与硬件和操作系统具有很强的独立性。从大型机到微机上都可运行的产品。可在、、等操作系统上运行。可兼容性由于采用了国际标准的数据查询语言,与的、2等均兼容。并提供读取其它数据库文件的间接方法。 可联结性对于不同通信协议,不同机型及不同操作系统组成的网络也可以运行ˉ数据库产品。 2的总体结构 (1)的文件结构一个数据库系统包括以下5类文件的代码文件。 数据文件一个数据库可有一个或多个数据文件,每个数据文件可以存有一个或多个表、视图、索引等信息。 日志文件须有两个或两个以上,用来记录所有数据库的变化,用于数据库的恢复。控制文件可以有备份,采用多个备份控制文件是为了防止控制文件的损坏。参数文件含有数据库例程起时所需的配置参数。 (2)的内存结构一个例程拥有一个系统全程区()和一组程序全程区()。 ()包括数据库缓冲区、日志缓冲区及共享区域。 ()是每一个进程有一个。一个进程起动时,就为其分配一个

区,以存放数据及控制信息。 (3)的进程结构包括三类进程: ①用户进程用来执行用户应用程序的。 ②服务进程处理与之相连的一组用户进程的请求。 ③后台进程为每一个数据库例程创建一组后台进程,它为所有的用户进程服务,其中包括: ()进程,负责把已修改的数据块从数据库缓冲区写到数据库中。()进程,负责把日志从中的缓冲区中写到日志文件中。 ()进程,该进程有规律地扫描进程信息,注销失败的数据库例程,回收不再使用的内存空间。()进程,当一用户进程异常结束时,该进程负责恢复未完成的事务,注销失败的用户进程,释放用户进程占用的资源。 ()进程。每当联机日志文件写满时,该进程将其拷贝到归档存储设备上。另外还包括分布式中事务恢复进程和对服务进程与用户进程进行匹配的进程等。 3的逻辑结构 构成的数据库的逻辑结构包括: (1)表空间 (2)5种类型的段() ①数据段;②索引段;③回滚()段;④临时段;⑤自举()段。 段的分配单位叫范围() 表空间()一个数据库划分成的若干逻辑部分称为表空间。一

Oracle 实验4(实验报告)-PL_SQL程序设计

学期 Oracle数据库应用技术 实验报告 选课序号: 班级: 学号: 姓名: 指导教师:史金余 成绩: 2017年月日

目录 1.实验目的 (1) 2.实验内容 (1) 2.1 触发器设计 (2) 2.2 存储过程、自定义函数设计 (2) 2.3 程序包设计 (3) 3.实验步骤 (3) 3.1 创建表空间RESTAURANT,创建用户DINER (3) 3.2 创建餐饮系统数据库的所有表,并向各表插入演示数据 (4) 3.3 完成【实验内容】中的触发器、存储过程、函数和程序包等 功能设计,将程序脚本保存到文本文件Source.sql中 (7) 4.实验总结 (13)

PL/SQL程序设计 1.实验目的 ◆掌握PL/SQL程序设计基本技巧,包括基本数据类型、表类型、数组类 型、匿名程序块、控制语句、PL/SQL中使用SQL语句、游标、错误处 理等。 ◆熟悉和掌握PL/SQL中关于存储过程、函数、包和触发器程序设计技术。 2.实验内容 实验平台:PL/SQL Developer或Oracle的其它客户端管理工具。 某餐饮系统数据库(加粗字段为主键,斜体字段为外键),请创建如下各数据表,并实现如下存储过程、函数、包和触发器等功能设计,将程序脚本保存到文本文件Source.sql中: (1)菜肴类别表MK(菜肴类别编号MKid,菜肴类别名称MkName),菜肴类别名称:鱼类、蔬菜类、凉菜类、肉类、主食类和酒水类等。 (2)菜单信息表MList(菜肴编号Mid,菜肴名称Mname,菜肴类别MKid,菜肴单价Mprice,菜肴成本单价Mcost,更新日期Mdate)。 (3)餐台类别表DK(餐台类别编号DKid,餐台类别名称DkName),餐台类别:包间和散台等。 (4)餐台信息表Dinfo (餐台编号Did,餐台名称Dname,餐台类别DKid,座位数Dseats,更新日期Ddate)。 (5)消费单主表C (消费单号Cid,餐台编号Did,消费开始时间StartTime,结账时间EndTime,消费金额合计Smoney,盈利金额合计SPsum),其中,消费金额合计=消费单明细表CList中该消费单号的所有消费记录的消费金额的合计,即SUM(消费金额)或SUM(菜肴单价×消费数量),盈利金额合计=消费单明细表CList中该消费单号的所有消费记录的盈利合计,即SUM((菜肴单价- 菜肴成本单价)×消费数量)。 (6)消费单明细表CList (消费单号Cid,序号Sid,菜肴编号Mid,菜肴名称Mname,消费数量Cqty,菜肴单价Mprice,菜肴成本单价Mcost,消费金额Cmoney) ,消费金额=消费数量×菜肴单价;消费数量为正数是正常点菜,消费数量为负数是退菜,消费数量为0是赠菜。

ORACLE 数据库管理系统介绍

ORACLE 数据库管理系统介绍 1.ORACLE的特点: 可移植性ORACLE采用C语言开发而成,故产品与硬件和操作系统具有很强的独立性。从大型机到微机上都可运行ORACLE的产品。可在UNIX、DOS、Windows等操作系统上运行。可兼容性由于采用了国际标准的数据查询语言SQL,与IBM的SQL/DS、DB2等均兼容。并提供读取其它数据库文件的间接方法。 可联结性对于不同通信协议,不同机型及不同操作系统组成的网络也可以运行ORAˉCLE数据库产品。 2.ORACLE的总体结构 (1)ORACLE的文件结构一个ORACLE数据库系统包括以下5类文件:ORACLE RDBMS的代码文件。 数据文件一个数据库可有一个或多个数据文件,每个数据文件可以存有一个或多个表、视图、索引等信息。 日志文件须有两个或两个以上,用来记录所有数据库的变化,用于数据库的恢复。控制文件可以有备份,采用多个备份控制文件是为了防止控制文件的损坏。参数文件含有数据库例程起时所需的配置参数。 (2)ORACLE的内存结构一个ORACLE例程拥有一个系统全程区(SGA)和一组程序全程区(PGA)。 SGA(System Global Area)包括数据库缓冲区、日志缓冲区及共

享区域。 PGA(Program Global Area)是每一个Server进程有一个。一个Server进程起动时,就为其分配一个PGA区,以存放数据及控制信息。 (3)ORACLE的进程结构ORACLE包括三类进程: ①用户进程用来执行用户应用程序的。 ②服务进程处理与之相连的一组用户进程的请求。 ③后台进程ORACLE为每一个数据库例程创建一组后台进程,它为所有的用户进程服务,其中包括: DBWR(Database Writer)进程,负责把已修改的数据块从数据库缓冲区写到数据库中。LGWR(Log Writer)进程,负责把日志从SGA中的缓冲区中写到日志文件中。 SMON(System Moniter)进程,该进程有规律地扫描SAG进程信息,注销失败的数据库例程,回收不再使用的内存空间。PMON (Process Moniter)进程,当一用户进程异常结束时,该进程负责恢复未完成的事务,注销失败的用户进程,释放用户进程占用的资源。 ARCH(ARCHIVER)进程。每当联机日志文件写满时,该进程将其拷贝到归档存储设备上。另外还包括分布式DB中事务恢复进程RECO和对服务进程与用户进程进行匹配的Dnnn进程等。 3.ORACLE的逻辑结构 构成ORACLE的数据库的逻辑结构包括: (1)表空间

Oracle数据库课程设计报告

课程设计报告书

目录 第1章引言 (3) 第2章概要设计 (5) 2.1系统需求分析 (5) 2.2系统结构设计 (5) 2.3系统功能模块 (6) 第3章数据库分析 (7) 3.1 数据库总体设计 (7) 3.2 数据表设计 (7) 3.3 数据库的创建 (8) 3.4存储过程和触发器 (10) 第4章详细设计及测试 (12) 4.1 系统界面 (12) 4.2 主要代码设计 (15) 4.3 功能整体链接测试 (18) 第5章课程设计心得 (19)

第1章引言 1.设计目的 使用VC,C++,C#等作为前台开发工具,使用Oracle作为后台数据库,所设计的管理系统应包含输入输出、查询、插入、修改、删除等基本功能。根据题目的基本需求,设计系统界面、数据库、编写程序(Oracle),并写出课程设计报告 1、阅读资料:每个人必须提前阅读教材有关Oracle、VC、C++、C#应用方面的内容以及其它相关书籍。 2、需求分析:题目要求达到的功能,所提供的原始数据,需要输出的数据及样式等。 3、数据库的设计:根据要求设计数据库的结构,包括:表、数据完整性、关系、视图。 4、数据库的安全性设计:登录用户、数据库用户、数据库角色、命令许可等方面 涉及到数据的所有操作要求采用存储过程的方式进行。 2.设计要求 1.选好题目:先分组,每组两个人(或单独完成),必须确保每题有两组人员选做,班长将本班同学的选题情况汇总后于16周之前交。 2.独立思考,独立完成:课程设计中各任务的设计和调试要求独立完成,遇到问题可以讨论,但不可以拷贝,否则不管是抄袭还是被抄袭,雷同的全部直接评定为不及格。 3.做好上机准备:每次上机前,要事先编制好准备调试的程序,认真想好调试步骤和有关环境的设置方法,准备好有关的文件。 4.根据编程实现的结果,按课程设计报告的撰写规范完成数据库系统课程设计报告(课程设计报告中必须有相关原理分析、程序设计、程序实现和程序调试等内容);课程设计报告的具体要求如下: 1)课设报告按照规定用A4纸张进行排版打印,否则要求返工; 2)课设报告的内容顺序如下:封面—任务书—中文摘要—目录—正文—附录; 3)正文不少于4000字,正文部分至少包含以下内容,并可大致作如下安排 1.引言(包括设计目的、要求、设计环境、同组人员及分工等内容)

数据库sqlserver实验报告

实验一熟悉常用的 DBMS:SQL SERVER2008、Oracle 试验内容及要求: (1)了解不同数据库管理系统及不同版本的相应功能特点 目前,商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟。面向对象的数据库管理系统虽然技术先进,数据库易于开发、维护,但尚未有成熟的产品。国际国内的主导关系型数据库管理系统有Oracle、Sybase、INFORMIX和INGRES。这些产品都支持多平台,如UNIX、VMS、Windows,但支持的程度不一样。IBM的DB2也是成熟的关系型数据库。但是,DB2是内嵌于IBM的AS/400系列机中,只支持OS/400操作系统。 1.MySQL MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQL AB开发、发布和支持。MySQL AB是一家基于MySQL开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。MySQL是MySQL AB的注册商标。 MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。与其他数据库管理系统相比,MySQL具有以下优势: (1)MySQL是一个关系数据库管理系统。 (2)MySQL是开源的。 (3)MySQL服务器是一个快速的、可靠的和易于使用的数据库服务器。 (4)MySQL服务器工作在客户/服务器或嵌入系统中。 (5)有大量的MySQL软件可以使用。 2.SQL Server SQL Server是由微软开发的数据库管理系统,是Web上最流行的用于存储数据的数据库,它已广泛用于电子商务、银行、保险、电力等与数据库有关的行业。 目前最新版本是SQL Server2005,它只能在Windows上运行,操作系统的系统稳定性对数据库十分重要。并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。 SQL Server 提供了众多的Web和电子商务功能,如对XML和Internet标准的丰富支持,

2019-2020学年第一学期《Oracle数据库》期末考试

2019-2020学年第一学期《Oracle数据库》期末考试适用班级:1801,1802,1803,1804 1、手动创建数据库的第一步是() A.启动实例 B.启动SQL*Plus 以SYSDBA身份连接Oracle C.查看系统的实例名 D.创建参数文件 2、创建一个数据库至少需要几个控制文件?() A.一个B.二个C.三个D.无 3、执行CREATE DATABASE命令之前,应该发出的命令是() A.STARTUP INSTANCE B.STARTUP NOMOUNT C.STARTUP MOUNT D.以上都不是 4、DBA使用哪个命令显示当前归档状态?() A.ARCHIVE LOG LIST B.FROM ARCHIVE LOGS C.SELECT * FROM V$THREAD D.SELECT * FROM ARCHIVE_LOG_LIST 5、把多路镜像控制文件存于不同磁盘最大的好处是() A.数据库性能提高 B.防止失败 C.提高归档速度 D.能并发访问提高控制文件的写入速度6、段的集合称为() A.区B.段C.表空间D.数据库 7、数据字典表和视图存储在() A.USERS表空间B.SYSTEM表空间 C.TEMPORARY表空间D.以上三个中任意 8、数据块的哪三个部分合称为块头部?() A.表目录、行目录和行数据 B.标题、表目录、空闲区 C.表目录、行目录、标题 D.块头部、行数据、行头部 9、临时表空间中用于排序的段是何时创建的() A.排序操作开始的时候 B.临时表空间创建的时候 C.当排序操作需要内存操过1KB的时候。 D.上述所有选项。 10、如果未定义临时表空间,哪一个会作为默认的临时表空间?() A.ROLLBACK B.USERS C.INDEX D.SYSTEM 11、Oracle实例是() A.Oracle 内存结构B.Oracle I/O 结构 C.Oracle 后台进程D.以上都是 12、最近使用过的SQL语句存储在() A.共享池B.数据高速缓冲区C.私有全局区D.用户全局区13、Oracle事务提交即() A.数据由DBWR进程写入磁盘文件 B.LGWR进程成功写入日志 C.PMON 进程提交 D.SMON 进程写数据 14、实例启动时数据库所处的状态是() A.MOUNT B.OPEN C.NOMOUNT D.None 15、用于删除约束的命令是哪一个?() 一、单选题(20*2分=40分)

浅谈对的理解对象—关系型数据库

浅谈对对象—关系型数据库的理解 姓名:杨小敏 学号:2010206190026

针对对象—关系型数据库的理解我想结合自己的专业(地图学与地理信息系统)从下面三个方面来理解:(1)关系型数据的发展以及在空间数据管理方面的优缺点(2)面向对象数据库的发展及在空间数据管理方面的优缺点(3)关系型数据库和面向对象技术的融合在数据库发展中所起到的独特作用在我们GIS专业领域内,随着信息技术的发展,各种应用系统建设的不断深入,像现在面向21世纪的应急应用系统的建设、城市基础地理空间信息数据库系统与共享平台的建设、地理信息公共服务平台的建设,小到“数字城市”的建设,大到“数字地球”乃至“智慧地球”的建设,我们已经开始不满足数值和文字的信息处理,为了达到系统建设平台尤其是公共服务平台的建设起到良好的客户友好体验,大量的图形信息,音频信息已经深入到数据库的设计中,其中尤其是空间数据库管理备受瞩目。所以,面对信息爆炸的21世纪,海量数据的存储和管路已经不是传统的数据库能解决的,空间数据管理需要更强的数据库——对象关系型数据库。 为什么空间数据需要对象关系型数据库的管理才更有效?我想简单的说一下GIS空间数据的基本特征:(1)空间特征:每个空间对象都具有空间坐标,所以在存储空间数据的同时我们要考虑数据的空间分布特征;(2)非结构化特征:通用数据库或者是传统数据库数据记录一般是结构化的,在面对空间图形信息的时候难以直接采用关系数据管理系统;(3)空间关系特征:空间数据的空间关系最重要的就是空间拓扑关系,这种拓扑结构方便了空间数据的查询和空间分析,但是给空间数据的一致性和完整性的维护增加了复杂性;(4)海量数据的特征:数据库在面对海量数据的存储和组织时,一般在二维空间上划分块或图幅,在垂直的方向上划分层在组织海量空间数据。 在空间数据的管理技术的发展中,从手工管理管理阶段到文件管理阶段再到数据库管理阶段,在三个数据管理阶段,对数据管理方式也不尽相同,在这里,我想说的是空间数据库的发展历史对空间数据管理的影响,第一是层次关系型数据库:只是数据库发展的初级阶段,这是空间数据的管理大多用文件方式管理,很显然不适合管理海量的空间数据,所以淘汰;第二是网络关系型数据库:在一定程度上解决了空间数据复杂管理的难题,但还是被日益崛起的关系型数据库所淘汰;第三是关系型数据库的发展:为了解决难于保证数据的完整性,开始将空

大数据库oracle银行管理系统

目录 摘要 (1) 一、设计银行管理系统结构图 1.1系统结构图 (2) 二、银行管理系统E-R图和表结构 2.1E-R图 (3) 2.2表结构 (5) 三、创建系统数据表 3.1创建表空间和用户 (6) 3.2创建用户信息表并添加约束 (6) 3.3创建银行卡信息表 (8) 3.4创建交易信息表 (9) 四、模拟常规业务操作 4.1建立更新账号触发器 (11) 4.2存取款交易操作 (11) 4.3用户开户 (12) 4.4更改密码 (15) 4.5账号挂失 (16) 4.6余额查询 (16) 4.7转账业务设置 (17) 4.8银行盈利结算 (18) 4.9撤户操作 (18) 五、总结 (20) 参考文献 (21) 附录 (22)

摘要 随着计算机的飞速发展及应用领域的扩大,特别是计算机网络和电子商务的发展,极大的改变了商业银行传统的经营模式。能够为客户提供方便、快捷、安全的服务,也能够有效的降低银行的营运成本,这是银行存储系统追求的目标。目前,对于现代化银行运营的要求是客户可以实现方便安全的业务交易,银行职员可以进行高效合理的工作管理,实现银行业务电子化。方便用户快速的进行存款、取款、修改密码以及完成一些转账的交易,大大提高办公效率,能够及时、准确、有效的帮用户办理各种繁琐的手续,也减缓了银行工作人员的压力。

一、设计银行管理系统结构图 1.1系统结构图 图1.1系统结构图 银行系统 账户管理 财务管理 信息查询 开户 修改密码 账户挂失 销户 存款 取款 转账 余额查询

二、银行管理系统E-R图和表结构 2.1E-R图 图2.1

Oracle数据库设计策略及规范

Oracle数据库设计策略及规范 设计策略及规范 1. 目的 定义Oracle数据库设计规范,作为数据库规划、设计、开发以及维护人员的技术参考资料。用以规范和指导相关人员的设计行为。 2. 概述 本文档根据Oracle数据库性能特点,描述对表、视图、存储过程、对象命名等方面的设计规范。 3. 基本策略 3.1 设计策略 ◆?分类拆分数据量大的表。 对于经常使用的表(如某些参数表或代码对照表),由于其使用频率很高,要尽量减少表中的记录数量。例如,银行的户主账表原来设计成一张表,虽然可以方便程序的设计与维护,但经过分析发现,由于数据量太大,会影响数据的迅速定位。如果将户主账表分别设计为活期户主账、定期户主账及对公户主账等,则可以大大提高查询效率。 ◆?分区策略 在拥有数500行以上的表时,采用分区策略。 ◆?索引设计。 对于大的数据库表,合理的索引能够提高整个数据库的操作效率。在索引设计中,索引字段应挑选重复值较少的字段;在对建有复合索引的字段进行检索时,应注意按照复合索引字段建立的顺序进行。例如,如果对一个5万多条记录的流水表以日期和流水号为序建立复合索引,由于在该表中日期的重复值接近整个表的记录数,用流水号进行查询所用的时间接近3秒;而如果以流水号为索引字段建立索引进行相同的查询,所用时间不到1秒。因此在大型数据库设计中,只有进行合理的索引字段选择,才能有效提高整个数据库的操作效率。 ◆?有时候为了提高性能。减少表的关联,恰当的数据冗余是允许的。 ◆?索引对新增,删除,更新的性能影响比较大,对相关的表的索引使用要权衡 ◆?为表和索引建立不同的表空间,禁止在系统表空间中放入非核心oracle系统成分的对象,确保数据表空间和索引表空间位于不同的磁盘磁盘驱动器上。 ◆?对于经常发生同时查询或频繁查询的表,最好把他放到不同的磁盘空间上 4. 逻辑设计规范 4.1 范式 ◆?如果没有性能上的原因,应该使用关系数据库理论,达到较高的范式,避免数据冗余。 ◆?如果在数据量上与性能上无特别要求,考虑到实现的方便性可以有适当的数据冗余,但基本上要达到3NF。 4.2 表设计 ◆?对于数据量比较大的表,根据表数据的属性进行分区,以得到较好的性能。如果表按某些字段进行增长,则采用按字段值范围进行范围分区;如果表按某个字段 的几个关键值进行分布,则采用列表分区;对于静态表,则采用Hash分区或列表分区;在范围分区中,如果数据按某关键字段均衡分布,则采用子分区的复合分区方法。 ◆?每个表均创建类型为Sequence的主键字段。 4.3 索引设计 ◆?常规OLTP应用,创建B-TREE索引,不创建位图索引。 ◆?不需要为小型数据表(<5000)创建索引。 ◆?给单个表创建的索引不超过5个,特别是海量交易类表。 ◆?索引条件查询结果记录,不超总记录的20%。 ◆?不要给固定选项的字段创建独立索引。 如只有‘男,女’的性别字段;‘是,否’的状态字段等,不要创建独立索引,位可以建立复合索引。 ◆?对于复合索引,索引字段顺序比较关键,把查询频率比较高的字段排在索引组合的最前面。 ◆?索引放到独立的表空间,该表空间不需要REDO LOG。 ◆?含有外键约束的表的字段,必须有单独索引。如订单明细的表头外键。 5. 对象命名规范 5.1 一般规范 5.1.1 语言 ◆?命名使用英文单词,不使用复数。 ◆?英文单词使用同对象本身意义相对或相近的单词。选择最简单或最通用的单词。不能使用毫不相干的单词来命名。 ◆?当一个单词不能表达对象含义时,用词组组合,如果组合太长时,采用简写或缩写,缩写要基本能表达原单词的意义。 ◆?当出现对象名重名时,是不同类型对象时,加类型前缀或后缀以示区别。 ◆?禁止使用中文或拼音缩写进行命名

相关文档
最新文档