版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-第二章ORACLE11g的体系构造4第三章ORACLE11g的数据库管理7第四章ORACLE11g的表空间管理9第五章ORACLE11g的表管理12第六章ORACLE11g的数据查询16第七章ORACLE数据的根本操作21第十章PL/SQL根底33第十一章存储过程与函数38第十四章平安管理48第十五章数据库备份与恢复50①有一个结点无双亲②其它结点无双亲③有且仅有一个结点无双亲④其它结点有且仅有一个双亲⑤允许其它结点有多个双亲A.①和②B.③和④C.③和⑤D.②和⑤2.以下有关数据库的描述,正确的选项是(C)A.数据库是一个DBF文件B.数据库是一个关系C.数据库是一个构造化的数据集合D.数据库是一组文件3.根据关系数据基于的数据模型——关系模型的特征判断以下正确的一项:(B)A.只存在一对多的实体关系,以图形方式来表示。B.以二维表格构造来保存数据,在关系表中不允许有重复行存在。C.能表达一对多、多对多的关系,但不能表达一对一的关系。2D.关系模型数据库是数据库开展的最初阶段。5.用二维表构造表达实体集的模型是〔D〕A.概念模型B.层次模型C.网状模型D.关系模型6.以下四项中说法不正确的选项是〔C〕A.数据库减少了数据冗余B.数据库中的数据可以共享C.数据库防止了一切数据的重复D.数据库具有较高的数据独立性7.以下四项中,不属于关系数据库特点的是〔D〕C.数据共享性好D.多用户访问下面系统中不属于关系数据库管理系统的是〔C〕9.MSSQLServer是〔D〕二、填空题1.在数据库系统中管理数据的软件称为___数据库管理系统________。3.用树型构造表示实体类型及实体间联系的数据模型称为__层次模型__。4.数据库系统各类用户对数据库的各种操作请求(数据定义、查询、更新及各种控制)都是由一个复杂的软件来完成的,这个软件叫做__数据库管理系统___。三、简答题型的分布式网络进展无缝地、大规模地扩展,允许不同厂商的计算机共同工作来提供无尽的共享计算机资源。比方,有两台PC机,分别来自不同厂商,存均为516M,现系统运行要求1G的存,假设PC机单独执行肯定不能满足要求,可以通过网格计算和集群技术将两台PC机组合在一起,以满足系统运行需求。录树的根,用Oracle_Home表示根目录下的主目录。-其他Oracle产品,则使用默认的主目录\db_1;如果在同一台主机的同一个根目录下安装多个Oracle_Home目录中包括的主要子目录有:·\BIN——主要包含用于数据库管理的各种命令等。·\demo——存放数据库实例模式的脚本等。·\udump——用户SQL追踪文件。文件对应重做日志文件组及其成员。子目录。该目录可用于存储与恢复有关的文件,如控制文件、联机重做日志副本、归档日志、闪回日志以及Oracle数据库恢复管理器(RMAN)备份等。3.解释$ORACLE_HOME和$ORACLE_BASE的区别"$ORACLE_BASE下是admin和product;$ORACLE_HOME下则是ORACLE的命令、连$ORACLE_HOME比$ORACLE_BASEORACLE_HOME=$ORACLE_BASE/product/version。$ORACLE_BASE是oracle的根目录,$ORACLE_HOME是oracle产品的目录。如果装了2个版本的oracle,则$ORACLE_BASE可以是一个,但$ORACLE_HOME是2个。4ORACLE11g的体系构造一、单项选择题2.〔B〕进程主要职责是监控效劳器进程和注册数据库效劳。A.SMONB.PMONC.CHKTD.LGWR4.用于在启动实例时配置数据库,确定Oracle11g的运A.参数文件B.数据文件C.可执行文件D.控制文件A.系统全局区SGAB.PMON后台进程C.控制文件D.Dnnn调度进程6.在全局存储区SGA中,哪局部存区域是循环使用的"(B)7.解析后的SQL语句在SGA的哪个区域中进展缓存.〔C〕则将启动如下哪个进程.〔A〕A.DBWRB.LGWRC.SMOND.PMON〔D〕A.DBWRB.LGWRC.SMOND.PMON10.以下哪个进程用于将修改正的数据从存保存到磁盘数据文件中.〔A〕A.DBWRB.LGWRC.RECOD.ARCH11.当数据库运行在归档模式下时,如果发生日志切换,为了保证不覆盖旧的日志信息,系统将启动哪个进程.〔D〕A.DBWRB.LGWRC.SMOND.ARCHA.表空间由段组成,段由盘区组成,盘区由数据块组成。B.段由表空间组成,表空间由盘区组成,盘区由数据块组成。D.数据块由段组成,段由盘区组成,盘区由表空间组成。-二、填空题日志文件、参数文件、口令文件、跟踪文件、警告日志文件等。2.一般地,Oracle的后台进程包括数据写入进场DBWR、日志写入进场LGWR、检查点进程CKPT、系统监控进场SMON、进程监控进场PMON、归档进程ARCH、恢复进程RECO、封锁进程LCKn、调度进程Dnnn、效劳器进程Snnn、作业进程SNP等。3.一个表空间物理上对应一个或多个数据文件。4.用户对数据库的操作如果产生日志信息,则该日志信息首先存储在日志缓冲区中,随后由LGWR进程保存到日志文件。5.在Oralce的逻辑存储构造中,根据存储数据的类型,可将段分为数据段、索引段回退段、LOB段和临时段。7.存构造是指一个进程在其中进展自身对话或与其他进程对话的存区域,Oracle使用两种类型的存构造,一种是SGA;另一种是PGA。8.数据字典试图分成3类:DBA_、ALL_和USER_视图,DBA_视图包含了数据库所有对象的信息,ALL_视图包含了用户查询表时可以访问的所有对象的信息,USER_视图包含了用户查询表时表所拥有的全部对象的信息。三、问答题1.简要介绍数据文件、表空间、段、盘区和数据块之间的关系。每一个数据文件都必须隶属于*个表空间但一个表空间可以由多个数据文件组合而成。Oracle的逻辑存储单元从小到大依次为数据块、区、段和表空间。表空间又由许多段组成段由多个区组成区又由多个数据块组成。用操作系统指令进展管理作业,物理存储构造组成文件如下所列:时可利用在线重做日志文件进展必要的恢复动作;6〔2〕LGWR(LogWriter)主要的工作是将RedoLogBuffer里的记录写到在线重做日志文件数据回写到数据文件里面。<2>收集空间:将表空间相邻的空间进展合并的动作;〔4〕PMON(ProcessMonitor):监视数据库的用PMON更新控制文件和数据库文件的文件头;ARCHIVELOGMode时,AR会在Log数据字典是Oracle数据库的核心组件,它是由一系列只读的根底表和视图组成的,它保系统负责,任何数据库用户都无法对数据字典中容进展修改,但是可以查看数据字典的容。为了方便用户查看数据字典中的信息,数据字典中的信息通过表和视图的形式组织起来。数据字典中的容都被保存在System表空间中,大多数情况下,用户可以通过数据字典视图来获取与数据库相关的信息,而不需要访问数据字典表。用户所使用的数据字典视图大致分为三类,并且各种类型的视图以不同名称的前缀表示。〔1〕USER视图是以USER_字符为名称前缀的数据字典视图。每个数据库用户都有一组属于自己的视图,在USER视图中包含了该用户模式下所有对象的信息。〔2〕ALL视图ALL视图是以ALL_字符为名称前缀的数据字典视图。ALL数据字典视图是USER视图的扩展,在ALL视图中记录了属于该用户模式的所有对象的信息以及该用户可以访问的属于其他模式的对象的信息。〔3〕DBA视图DBA视图是以DBA_字符为名称前缀的数据字典视图。在DBA数据字典视图中记录了全部数据库对象的信息。5.在确定数据块大小〔DB_BLOCK_SIZE〕的时候,要注意考虑哪些因素.如果行很小,而且访问是随机的,则应选用较小的块;如果行很小,而且访问是顺序的,则应选用较大的块;如果行很小,而且访问既是随机又是顺序的,则就应该选用较大的块;如果行很大,应该选用较大的块。PctUsed:为一个百分比数值,当BLOCK中已经使用的空间降低到该数值以下时,该BLOCK才是可用的,到达或是超过这个数值的BLOCK是不可用的。-PctFree:用于指定BLOCK中必需保存的最小空间的比例。时进入或离开表、索引或簇的可用清单。使用PctUsed参数设置最小块的阈值来控制一个数据块应在何时放回到相应段的可用清单中。例如,所有段的缺省PctUsed设置为40%,因此,当事务处理删除数据块中的行时,如果它只有39%是装满的,ORACLE将该数据块放回到相应段的可用清单中。如果你预计很少出可用清单。但是,如果你预计将PctUsed设置为较低的值〔如40〕,使ORACLE不常产生块在表的可用空间中移进或移出的开销。使用PctFree参数设置最大的阈值,以控制对将来的行的更新操作保存多少数据块当*个数据块使PctFree装满时,ORACLE从相应段的可用清单中删除该块。如果你预计只有ORACLE填满每个块的更多的空间。但是,如果你预计更新操作将会经常增加行的大小,则将PctFreeORACLE为已有行的更新操作保存更多的块空间;否则,7.SGA主要有那些局部,主要作用是什么.〔2〕共享池:相当于程序高速缓冲区,所有的用户程序都存放在共享SQL池中;〔3〕重做日志缓冲区:用于缓冲区在对数据进展修改的操作过程中生成的重做记录。ORACLE11g的数据库管理一、单项选择题A.系统全局区域B.效劳器进程C.数据库作者D.系统监控器2.你用DBCA建立了一个数据库而没有保存模版定义。现在你打算用DBCA拷贝整个数据库和数据,以下哪个是首先要做的.〔D〕A.使用脚本建立新的数据库,使用DBCA导入数据B.用DBCA模版管理从现有数据库建立一个新的数据库,数据也如此导入C.从模版列表中选择先前建立的数据库模版并建立数据库D.从现有数据库中拷贝数据文件建立新的数据库,然后利用DBCA拷贝数据83.你正在你的组织紧急事件处置演习中。几乎没有时间通报用户,你就需要尽快地停顿数据库进程。以下命令哪个是你需要要执行的.〔D〕〔A〕二、填空题DBCA。2.启动数据库时,如果装载数据库但打不开数据库可执行STARTUPMOUNT命令。SHUTDOWNABORTDB-NAME的长度最大可为8个字符。7.字符集中的NLS-LANG参数包含3个组成局部:语言、地域、字符集。8.可通过在SQL*Plus中查询动态视图VINSTANCE来查看实例的制止操作状态。三、问答题4个默认的数据库用户分别为:SYS、SYSTEM、SYSMAN和DBSNMP。〔1〕SYS,默认密码为CHANGE_ON_INSTALL,当创立一个数据库时,SYS用户将被默认创立并授予DBA角色,所有数据库数据字典中的根本表和视图都存储在名为SYS的方案中,这些根本表和视图对于Oracle数据库的操作时非常重要的。为了维护数据字典的真实性,SYS方案中的表只能由系统来维护,他们不能被任何用户或数据库管理员修改,而且任何用户不-〔2〕SYSTEM,默认密码为MANAGER,与SYS一样,在创立Oracle数据库时,SYSTEM用户被默认创立并被授予DBA角色,用于创立显示管理信息的表或视图,以及被各种Oracle数据库应用和工具使用的容表或视图;〔3〕SYSMAN是Oracle数据库中用于EM管理的用户,如果你不用该用户,也可以删除。管理数据库相关性能的用户,如果停顿该用户,则无法提取相关的数据信息。3.给出数据库正常启动所经历的几种状态"〔1〕STARTUPNOMOUNT—数据库实例启动;〔2〕STARTUPMOUNT-数据库装载;〔3〕STARTUPOPEN—数据库翻开。ORACLE11g的表空间管理一、单项选择题A.100MB.200MC.300MD.400ME.500MA.V$INSTANCEB.V$DATABASEC.V$TABLESPACED.V$DATAFILES4.下面哪个参数不能在STORAGE子句中进展设置〔B〕A.INITIALB.PCTUSEDC.MINE*TENTSD.NE*T数用于设置撤消数据的保存时间。C.UNDO_RETENTIOND.ROLLBACK_SEGMENTS7.把一个表空间切换到OFFLINE状态时,可以使用4个参数,不包括以下哪个选项.(D)A.IMMEDIATEB.NORMALC.TEMPORARYD.FORCE8.在设置撤消表空间的自动管理功能时,DBA通过使用相关的初始化参数对自动撤消表空间进展配置。下面的4个参数中,哪一个不是与自动撤消管理功能相关的参数.(D)C.UNDO_RETENTIOND.TRANSACTIONS二、填空题2.表空间是Oracle数据库中数据的逻辑组织,它存储段的集合,在操作系统级映到一个或多3.创立表空间时Oracle允许指定后来创立的,并分配给表空间的对象的默认存储参数。其中INITIAL参数设置创立时分配给每一个新对象的初始区间的大小。4.创立表空间时,创立表空间的对象的默认存储参数中,INITIAL参数和NE*T参数通常大5.DBA-TS-QUOTAS动态视图中列举了所有用户的表空间配额。6.DBA_FREE_SPACE7.表空间的管理类型分为本地管理表空间〔LMT〕和数据字典管理表空间〔DMT〕。8.一个表空间具有离线〔OFFLINE〕、在线〔ONLINE〕、只读〔READONLY〕和读写〔READWRITE〕。9.创立UNDO表空间时,所使用的表空间管理方式为本地管理表空间,并且盘区的管理方式只允许使用临时表空间方式。三、问答题1.TEMPORARY表空间和PERMANENT表空间的区别是什么"用户需要保存的任何段和一个会话或事务的应用数据都保存在永久性表空间,如SYSTEM和SYSAU*表空间。从Oracle11g开场,SYSTEM表空间默认为本地化管理,表空间第一个数据文件中的位图段管理所有的空间使用。个临时表空间,因为仅只有一个默认的临时表空间可被赋给用户。为解决潜在的性能瓶2.本地管理表空间和字典管理表空间的含义与特点是什么.〔1〕字典管理表空间〔DMT〕Oracle使用SYS.FET$表来记录空闲空间,使用SYS.UET$表来记录已经使用过的空间。当SYS.FET$和SYS.UET$表。在特定的时间,只有一个进程能获得STenqueue,这通常会引起竞〔2〕本地管理表空间〔LMT〕使用LMT,每个表空间使用表空间数据文件中的一个bitmap构造来管理空闲和已使用的-〔3〕不用定期连接空闲空间,LMT会自动跟踪相邻的空闲空间。3.什么是自动撤消管理,它有什么好处.自动撤销管理允许DBA指定撤销信息在提交之后需要保存的时间,以防止在长时间的查UNDO_RETENTION参数来实现这撤销日志。无需定义和管理回滚段,就可以简单地指定一个撤销表空间而减轻Oracle的负担。自动撤销管理需要一个当地管理撤销表空间,这一表空间用于存放撤销段。所需要的建立一个撤销表空间,设置UNDO_MANAGEMENT=AUTO,然后与数据库进展连接。当启动4.如何创立非标准数据块表空间.如下例:由于我们创立的块大小与系统默认的块大小不一致会报ora-29339块的大小为8K,所以我以16为例创立一个非标准的表空间.ORACLE11g的表管理一、单项选择题A.唯一键标识的列可以为空B.主键标识的列可以为空C.唯一键标识的列只可以为单列D.主键标识的列只可以为单列A.1ST_IDB.CUST*C.ADDRESS1D.E*CEPTION键字.〔D〕4.SQL语言中,删除一个表的命令是〔B〕A.DELETEB.DROPC.CLEARD.REMOREA.实体完整性约束B.参照完整性约束C.用户自定义完整性约束D.关键字完整性约束6.如果要修改表的构造,应该使用SQL语言的命令〔C〕A.UPDATETABLEB.MODIFYTABLEC.ALTERTABLED.CHANGETABLE7.如果各类元组在表的主键上取值为空值,则它违反了关系的______A______完整性约束8.下面关于主键约束的描述正确的选项是〔A〕A.主键约束用于唯一确实定表中的每一行数据。B.在一个表中,最多只能有两个主键约束。D.主键约束不能由一个单列组成。-CREATETABLESales11.雇员的情况和其所工作的部门存储在表Employee和表Depart一样但雇员代码不同。除此之外,在一个部门里,可以有多个雇员。CREATETABLEEmployeeCREATETABLEDepartment关于这二表,下述那条述为真.〔D〕D.通过在表Employee的属性DeA.主键字段输入的数据不允许重复B.主键字段的数据,允许输入空值C.假设主键由多个键组合而成,则*个主键字段可能存在重复值D.主键字段可以是字符数据类型A.PCTFREEB.PCTUSEDC.MA*E*TENTSD.PCTINCREASEA.CREATETABLEtab1OFmyOBJ;B.CREATETABLEmyOBJOFtab1;C.CREATETABLEtab1ASmyOBJ;D.CREATETABLEtab1TYPEOFmyOBJ;DECLARE局部声明了一ALTERTABLEtab1MODIFY〔col1〔NUMBER〔5,2〕〕;二、填空题2.Oracle中DESCRIBE命令可以快速掌握表及其中所有表列的概要。3.表的系统信息包括表的构造和表的属性等信息,可以使用4.ROWID实际上保存的是记录的物理地址,因此通过ROWID来访问记录可以获得最快的访5.为Student表手动分配存储空间,并且大小由NE*T参数设置,则应使用的语句为ALTERTABLEStudentALLOCATEE*TENT;如果为Student表手动分配一个大小为128KB的新盘区,则应使用的语句为ALTERTABLEStudentALLOCATEE*TENT(SIZE128K)。6.填写以下语句,使其可以为class表的ID列添加一个名为PK_CLASS_ID的主键约束。ALTERTABLEclassAddCONSTRAINTPK_CLASS_IDPRIMARYKEY(ID)。7.在STORAGE子句中可以设置6个存储参数。其中,INITIAL指定为表中的数据分配的第一个盘区大小;NE*T指定为存储表中的数据分配的第二个盘区大小;PCTINCREASE指定从第二个盘区之后,每个盘区相对于上一个盘区的增长百分比;MINE*TENTS指定允许为表中的数据所分配的最小盘区数目;MA*E*TENTS指定允许为表中的数据所分配的最大盘区数目。-empno为主关键字,deptid为外键,引用表DEPT的主键。该表创立语句CONSTRAINTFK_DEPTNOFOREIGNKEY(DEPTNO)REFERENCESDEPT(DEPTID)。三、问答题用户是用来连接数据库对象。而模式用是用创立管理对象的。模式跟用户在oracle是一〔1〕DESCRIBE命令;〔2〕DBMS_METADATA.GET_DDL包。3.介绍创立表时常用的数据类型money:货币型4.简要介绍数据库表的约束和主要类型、作用〔1〕实体完整性约束〔每一行反响不同的实体〕通过索引,唯一约束。主键约束或标识属性来表达;〔2〕域完整性约束〔指给定列的输入有效性〕通过限制数据类型,检查约束,输入格式,外键约束,默认值,非空等表达;〔3〕引用完整性约束〔表之间的联系〕〔4〕自定义完整性约束〔根据用户的需求〕ORACLE11g的数据查询一、单项选择题-1.ORDERBY的作用是〔C〕A.查询输出分组B.设置查询条件C.对记录排序D.限制查询返回的数据行2.设有一个关系:DEPT〔DNO,DNAME〕,如果要找出倒数第三个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成WHEREDNAMELIKE〔B〕A.‘__W_%’B.‘_%W__’C.‘_W__’D.‘_W_%’3.成绩关系如以下图所示。执行SQL语句:SELECTCOUNT〔DISTINCT**〕FROM成绩WHERE分数>60查询结果中包含的元组数目是〔B〕4.基于"学生-选课-课程"数据库中的三个关系:S〔S*,SNAME,SE*,AGE〕,SC〔S*,C*,GRADE〕,C〔C*,AME,TEACHER〕,假设要求查找选修"数据库技术"这门课程的学生和成绩,将使用关系〔D〕5.基于"学生-选课-课程"数据库中的三个关系:S〔S*,SNAME,SE*,AGE〕,SC〔S*,C*,GRADE〕,C)〔C*,AME,TEACHER〕,假设要求查找中第一个字为'王'的学生号和。下面列出的SQL语句中,哪个〔些〕是正确的.〔B〕Ⅰ.SELECTS*,SNAMEFROMSWHERESNAME=ˊ王%ˊⅡ.SELECTS*,SNAMEFROMSWHERESNAMELIKEˊ王%ˊⅢ.SELECTS*,SNAMEFROMSWHERESNAMELIKEˊ王_ˊ6.有如下两个关系,其中雇员信息表关系EMP的主键是雇员号,部门信息表关系DEPT的EMP部门号部门号山DEPT请问执行结果中有〔C〕条记录。7.以下函数不属于集函数的是〔D〕A.使用主键约束B.使用缺省约束C.使用外键约束D.使用检查约束A.MA*B.MINC.COUNTD.TO_CHAR11.HAVING子句的作用是〔A〕A.查询结果的分组条件B.组的筛选条件C.限定返回的行的判断条件D.对结果集进展排序12.查询一个表的总记录数,可以采用〔C〕统计函数。A.AVG(*)B.SUM(*)C.COUNT(*)D.MA*(*)A.AGEISNULLB.AGEISNOTNULLC.AGE=NULLD.NOT(AGEISNULL)二、填空题1.集合运算符UNION实现了集合的并运算,操作INTERSECT实现了对集合的交运算,而MINUS则实现了减运算。2.如果只需要返回匹配的列,则应当使用INNERJOIN连接。3.如果使用逗号分隔连接查看两个表,其中一表有20行,而另一表有50行,如果未使用WHERE子句,则将返回1000行。4.外连接的三种类型是LEFTJOIN、RIGHTJOIN和FULLJOIN。5.DISTINCT关键字用来限定检索结果中只显示那些不冗余的数据,该关键字使用在SELECT6.在orderby子句中,ASC关键字表示升序排列,DESC关键字表示降序排列。-7.在连接操作中,如果左表和右表中不满足连接条件的数据都出现在结果中,则这种连接是FULLJOIN。8.GROUPBY的作用是实现分组查询。9.标准的SQL语言语句类型可分为:数据操纵语句〔DML〕、数据定义语句〔DDL、数据控制语句〔DCL〕和数据查询语句〔DQL〕.三、问答题1.简要介绍SQL语言的特点。中的地位就犹如英语在世界上的地位一样,它是数据库系统的通用语言用户可以利用它几条语句。SQL已经被ANSI〔美国国家标准化组织〕确定为数据库系统的工业标准。关系型数据库的主要功能都是通过SQL语言来实现的。一般来说,SQL语言按照功能可以分为4大类:数据查询语言(DQL)、数据定义语言〔DLL〕、数据操作语言〔DML〕和数据控制语言〔DCL〕。数据查询语言DQL主要用来查询数据,数据定义语言DDL主要用来建立、删除和修改数据对象,数据操纵语言DML主要完成数据操作的命令如插入删除修改数据等操作,数据控制语言DCL主要用来控制对数据库的访问,效劳器的关闭、启动等。SQL语言集DQL、DLL、DML、DCL于一体,可以实现数据库生命同期的全部活动。数据库中的数据可以用SQL语言来进展读取、更新、增加和删除记录。SQL构造比拟简单,其命令总数不超过30个,其中常用命令包括:CREATETABLE、ALTERTABLE、DROPTABLE、INSERT、UPDATE、SELECT、DELETE。SQL语句对大小写不敏感,但其关键词常用大写SQL语言简单易学、风格统一,利用简单的几个英语单词的组合就可以完成所有的功能,几乎可以不加修改地嵌入到如VB、PB这样的前端开发平台上,利用前端工具的计算能力和SQL的数据库操纵能力,可以快速建立数据库应用程序。在SQL语言中访问数据表是通过“用户名.数据表〞的形式来进展的。比方在Oracle数据连接类型可分为三种:连接、外连接和穿插连接。连接(INNERJOIN)使用比拟运算符进展表间*(些)列数据的比拟操作,并列出这些表中与连接条件相匹配的数据行。根据所使用的比拟方式不同,连接又分为等值连接、自然连接和不等连接三种。外连接分为左外连接(LEFTOUTERJOIN或LEFTJOIN)、右外连接(RIGHTOUTERJOIN或RIGHTJOIN)和全外连接(FULLOUTERJOIN或FULLJOIN)三种。与连接不同的是,外连接不只列出与连接条件相匹条件的数据行。穿插连接(CROSSJOIN)没有WHERE子句,它返回连接表中所有数据行的笛卡尔积,其结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。3.设有关系EMP〔ENO,ENAME,SALARY,DNO〕,其中各属性的含义依次为职工号、、工资和所在部门号,以及关系DEPT〔DNO,DNAME,MANAGER〕,其中各属性含义依次为部门号、部门名称、部门经理的职工号。试用SQL语句完成以下查询:〔3〕请用SQL语句将“销售部〞的那些工资数额低于600的职工的工资上调10%。〔1〕SELECTAVG(SALARY)FROMEMPWHERESALARY>=600〔2〕SELECTB.DNAMEFROMEMPA,DEPTBWHEREA.DNO=B.DNOANDA.ENO=’001’〔3〕UPDATEASETA.SALARY=A.SALARY*1.1FROMEMPA,DEPTBWHEREA.DNO=B.DNOANDB.DNAME=’销售部’ANDA.SALARY<6004.有学生关系S〔SNO,SNAME,AGE,DNO〕,各属性含义依次为**,、年龄和所在系号;学生选课关系SC〔SNO,O,SCORE〕,各属性含义依次为**、课程号和成绩。〔1〕分析以下SQL语句:SELECTSNOFROMSCWHERESCORE=〔SELECTMA*〔SCORE〕FROMSCWHEREO=’002’〕请问上述语句完成了什么查询操作.按系号列出各系学生的平均成绩。〔2〕SELECTDNO,AVG(SCORE)FROMSA,SCBWHEREA.SNO=B.SNOGROUPBYDNO〔3〕SELECTSNOFROMSWHERES.NOIN(SELECTA.SNOFROMSCA,SCBWHEREA.O=001ANDB.O=002ANDA.SNO=B.SNO)-〔1〕请查询出技术等级大于2的工程代号和工程名称,同时按工程等级降序排序。〔2〕请查询出工程技术人员为“三〞,工程代号为“A001〞的工程日报酬。〔3〕请查询出可以参加编号为“A001〞的工程的工程技术人员代号和。〔4〕请查询出为“三〞的工程技术人员可以参加的工程代号和工程名称。WHEREsgrade>2ORDERBYprjnameDESC〔2〕SELECTdaypayFROMempA,payBWHEREA.sno=B.snoANDsname=’三’ANDprjno=’A001’〔3〕SELECTsno,snameFROMempA,payBWHEREA.sno=B.snoANDprjno=’A001’WHEREA.sno=B.snoANDB.prjno=C.prjnoANDsname=’三’ORACLE一、单项选择题1.以下中哪个不是DML命令.〔B〕A.外部键约束能防止删除行如果删除行违反外部键中定义的关系的话B.外部键约束确保在删除行之前对数据表有正确的权限C.如果只有一行的被删除,该外部键约束将被忽略D.外部键对删除表述没有影响3.用来插入数据记录的工具是〔D〕。A.SQLPLUSB.DBCAC.SYSCONFIGD.DBMS4.有如下两个关系,其中雇员信息表关系EMP的主键是雇员号,部门信息表关系DEPT的主键是部门号。EMP部门号部门号山马林生敏DEPT假设执行下面列出的操作,哪个操作不能成功执行(C)。A.从DEPT中删除部门号=‘03’的行C.将DEPT中部门号=‘02’的部门号改为‘10’D.将DEPT中部门号=‘01’的地址改为‘5号楼’5.SQL语言集数据查询、数据操作、数据定义和数据控制功能于一体,语句INSERT、DELETE、UPDATE实现哪类功能(B)。6.假设用如下的SQL语句创立了一个表S:CREATETABLES〔S*CHAR〔6〕NOTNULL,SNAMECHAR〔8〕NOTNULL,SE*CHAR〔2〕,AGEINTEGER〕今向S表插入如下行’,NULL,NULL〕7.用于删除表中所有数据行的命令是〔B〕A.DELETETABLEB.TRUNCATETABLEC.DROPTABLED.ALTERTABLE8.假设ABC中的所有列均为字符数据类型,A列的默认值为“VA〞,同时还有B列和C列,则执行以下SQL语句:INSERTABC〔A,C〕VALUES〔‘V’,‘NULL’〕后,以下的说法哪A.插入B列的值为字符‘NULL’B.插入A列的值为字符VAC.插入B列的值空值D.插入C列的值空值9.如果要设置SQL*PLUS每页打印的数值,则可以使用如下哪个命令〔C〕A.SETPAGEB.PAGESIZEC.SETPAGESIZED.SIZEA.INSERT,UPDATEB.UPDATE,INSERTC.DELETE,UPDATED.CREATE,INSERTINTO11.在创立序列的过程中,以下〔A〕选项指定序列在到达最大值或最小值后,将继续从头二、填空题1.序列是一种可被多个用户使用的用于产生一系列唯一数字的数据库对象。尤其适合多用户环境中,可以生成唯一的序列号而没有磁盘I/O或事务处理锁定开销。3.使用序列可以生成一列整数值,这些整数值可以用作主键约束。-4.数据操作语言允许用户对数据库中的数据进展查询、插入、更新和删除等操作,相应的命令是SELECT、INSERT、UPDATE和DELETE等。5.一般情况下,merge语句包括了两个数据操纵命令,如果合并条件成立则执行UPDATE命令,如果合并条件不成立则执行INSERT命令。6.如果确定要删除一个大表的全部记录,可以执行TRUNCATE命令,它可以释放占有的数7.要设置SQL*PLUS显示数字时的格式可以使用NumFormat命令,而要设置*个数字列的显示格式要使用Column命令。8.使用SAVE命令可以将缓冲区中的SQL命令保存到一个文件中,并且可以使用START命令运行该文件。9.当设置多个列的显示属性后,如果去除设置的显示属性,可以使用命令CLEAR,当要去除*列具体的显示属性时,需要使用命令OFF。10.如果需要向表中插入一批已经存在的数据,可以在INSERT语句中使用SELECT语句。11.用SELECT进展模糊查询时,可以使用_通配符_或__百分号_匹配符,模糊查询只能针对12.下面语句创立一个序列对象,该序列对象的开场数为2,每次递增2,当大于1000后,序列值重新返回到2,在空白处填写适当的代码,完成上述要求。三、问答题1.简述DELETE语句与TRUNCATE语句的差异。然后根据表构造重新建立它,而delete删除的是记录,并没有尝试去修改表。这也是为什么清空的表插入数据时,数据库会记住前面产生的AUTOINCREMENT序列,并且继续利用它对AUTOINCREMENT2.有如下两个关系,其中雇员信息表关系EMP的主键是雇员号,部门信息表关系DEPT的EMP〔EMPNO〕(EMPNAME)山部门号(DEPTID)工资(SALARY)DEPT敏部门号(部门号(DEPTID)部门名地址(ADDRESS)(DEPTNAME)执行语句INSERTEMPVALUES(‘020’,’王五’,’05’)会出现什么错误.如何实现将部门号为“01〞的部门删除.〔1〕DEPT表中的部门号(DEPTID)没有“05〞的数据,外键部门号(DEPTID)的限制所致。〔2〕先删除表EMP中部门号为“01〞的数据。3.一个员工表TBEmp,包含以下字段namememo〔1〕创立员工表TBEmp〔3〕删除表的memo字段〔6〕查询有工资的员工信息〔7〕查询名字中没有ac的员工和出生日期-〔10〕查询拿最高工资的员工信息〔13〕更新表格,在所有员工的后面加上‘emp’〔16〕取出员工的前三个字符、第三个字符、长度〔18〕使用两种方式删除所有员工〔19〕删除TBEmp表格PRIMARYKEY,〔6〕SELECT*FROMTBEmpWHERESALARYISNOTNULL〔7〕SELECTname,birthdayFROMTBEmpWHEREnameNOTIN(SELECTnameFROMTBEmpWHERENAMELIKE‘%ac%’)〔8〕SELECT*FROMTBEmpWHERESALARYBETWEEN900AND2300〔9〕SELECTCOUNT(1)FROMTBEmpWHREse*=’female’〔10〕SELECT*FROMTBEmpWHREIDIN(SELECTIDFROMTBEmpWHERESALARY=(SELECTMA*(SALARY)FROMTBEmp))〔11〕SELECTid,name,birthdayFROMTBEmpORDERBY〔12〕UPDATETBEmpSETbirthday=’1977-2-1’,SALARY=SALARY+200WHEREname=’Jack’〔13〕UPDATETBEmpSETid=id+’emp’〔14〕DELETETBEmpWHEREidIN〔15〕SELECTid+nameASnewnameFROMTBEmp〔16〕SELECTSUBSTR(name,1,3),SUBSTR(name,3,1),LEN(name)FROMTBEmp〔17〕CREATETABLEtbemp2ASSELECT*FROMtbemp〔18〕DELETETBEmp;TRUNCATETABLETBEmp〔19〕DROPTABLETBEmp一、单项选择题1.下面有关索引的描述正确的选项是〔B〕A.不可以在多个列上创立复合索引。B.可以在多个列上创立复合索引。C.索引列中的数据不能重复出现。D.索引列中的数据必须是数值型。2.如果创立的表其主键可以自动编号,则应该为主键创立的索引是〔A〕索引。A.反向索引B.B树索引C.位图索引D.基于函数的索引3.查看下面语句为〔C〕索引.CREATEINDE*TABLESPACEusersSTORAGE(INITIALA.全局分区索引B.位图索引C.复合索引D.基于函数的索引4.假设emp表包含一个婚姻状况的字段,则应该在该字段上创立〔D〕索引。A.B树唯一索引B.B树不唯一索引C.基于函数的索引D.位图索引STUDENTwhereSTUDENT表的SNAME列创立〔C〕索引。A.B树唯一索引B.B树不唯一索引C.基于函数的索引D.位图索引6.下面关于约束与索引的说法不正确的选项是〔D〕A.在字段上定义PRIMARYKEY约束时会自动创立B树唯一索引B.在字段上定义UNIQUE约束时会自动创立一个B树唯一索引C.默认情况下,禁用约束会删除对应的索引,而激活约束会自动重建相应的索引D.定义FOREIGNKEY约束时会创立一个B树唯一索引。7.假设在一个表的3个字段NAME、SE*和BIRTH中分别保存、性别和出生年月数据,则应-当为这三个字段分别创立〔C〕索引。A.全部创立B树索引B.全部创立位图索引C.分别创立B树索引、位图索引和位图索引D.分别创立B树索引、位图索引和给予函数的索引8.使用ALTERINDE*…REBUILDER语句不可以执行下面的哪个任务.〔C〕A.将反向键索引重建为普通索引B.将一个索引移动到另一个表空间C.将位图索引更改为普通索引D.将一个索引分区移动到另一个表空间A.表是否具有索引不会影响到所使用的SQL的编写方式B.在为表创立索引后,所有的查询操作都会使用索引D.在为表创立索引后,Oracle优化器将根据具体情况决定是否采用索引。10.列上创组合索引〔也称为___B___〕是在表的多个建的索引。二、填空题1.索引对于查询的结果没有任何影响,但能加快对表执行SQL语句的速度,相应地也就提高2.在Oracle的索引类型中,最古老,同时也是最常用的就是标准B树索引,在效率上通常会3.如果表中*列的基数比拟低,则应该在该列上创立位图索引。4.如果要获得索引的使用情况,可以通过查询V$OBJECT_USAGE视图;而要获知索引的当前状态,可以查询INDE*_STATS视图。5.在B树索引过在索引中保存排过序的索引列值与相对应记录的ROWID来实现快速查找。6.在Oracle11g中,可以使用CREATEINDE*语句创立索引。三、问答题在关系型数据库中,索引是一种非常重要的模式对象,是一种与表有关的数据库构造,它可以用来快速地寻找那些具有特定值的记录,使对应于表的SQL语句执行得更快。索引的作用相当于图书的目录,例如想要在一本书中找到有关方面的知识时,可以采用两种方法:一种方法是从书的开头向后逐页翻阅,这样需要翻阅全书才能找到所需要的知识容;另一种方法是从书的目录中查找所需要的知识主题,然后根据目录中的页码找到所需要的知识容。非常明显,采用第二种方法要比第一种方法查找要快。同样,如果一个表汇总包含很多记录,当没有建立索引,对表进展查询时,第一种方法执行查询时必须从第一个记录开场扫描整个表的所有记录,直至找到符合要求的记录。表里面的记录数量越多,这个操作的代价就越高。第二种方法通过在表中建立类似于目录的索引,然后在索引中找到符合查询条件的索引值,最后就可以通过保存在索引中的ROWID〔相当于页码〕快速找到表中对应的记录,而无需扫描任何记录即可迅速得到目标记录所在的位置,这就是索引的作用。如果表有1000个记录,通过索引查找记录至少要比顺序扫描记录快100倍。在Oracle中可以创立多种数据类型的索引,以适应各种表的特点,常用的索引类型有B树索引、反向键索引、位图索引、基于函数的索引、簇索引、全局和局部索引等。2.使用索引查询一定能提高查询的性能吗.为什么.索引需要空间来存储,也需要定期维护,每当有记录在表中增减或索引列被修改时INSERT,DELETE,UPDATE将为此多付出4,5次的磁盘用索引查询不一定能提高查询性能,索引围查询(INDE*RANGESCAN)适用于两种情况:〔1〕基于一个围的检索,一般查询返回结果集小于表中记录数的30%宜采用;索引就是为了提高查询性能而存在的,如果在查询中索引没有提高性能,只能说是用错了索3.ORACLE都有什么索引.分别适用于什么情况.常用的索引类型有B树索引、反向键索引、位图索引、基于函数的索引、簇索引、全局〔1〕B树索引:适合与大量的增、删、改,不能用包含OR操作符的查询;适合高基数的列〔唯一值多〕,典型的树状构造;每个结点都是数据块;大多都是物理上一层、两层或三层不定,逻辑上三层;叶子块数据是排序的,从左向右递增;在分支块和根块中放的是索引过来,对于组合键,列的顺序被保存,但每个列的字节都作了反向。反向键索引有它局限性:如果在WHERE语句中,需要对索引列的值进展围性的搜索,如BETWEEN、<、>等,其反向键索引无法使用,此时,Oracle将执行全表扫描;只有对反向键索引列进展<>和=的比拟操作时,其反向键索引才会得到使用;〔3〕位图索引:适合与决策支持系统;做UPDATE代价非常高;非常适合OR操作符的查询;基数比拟少的时候才能建位图索引;〔4〕基于函数的索引:基于函数的索引只是常规的B树索引,但它是基于一个应用于表数据的函数,而不是直接放在表中数据本身上的,因此可以把基于函数的索引看成是一个虚拟列上的索引,当然这里的函数可以是系统函数,也可以是用户自定义的函数。为了在自己的模式中的表上创立基于函数的索引,必须有系统特权QUERYREWRITE;为了在其他模式中的表上创立基于函数的索引,必须有系统特权GLOBALQUERYREWRITE;〔5〕簇索引:用户创立簇必须具有CREATECLUSTER系统权限,如果想在其他模式中创立簇,还必须具有CREATEANYCLUSTER系统权限。创立簇之后,用户可以在簇中创立表,也就是簇表〔EMP和DEPT表〕,在将数据行插入簇表之前,还必须创立簇索引;-〔6〕全局和局部索引:通常在对表进展分区时,也会将对应的索引进展分区,分区索引其他分区索引的使用。分区的表可以具有未分区的索引,未分区的表可以具有分区的索引,索引与表是相互独立的模式对象,对索引进展分区和对表进展分区目的都是为了更加容易管理与维护。全局索引就是在全表上创立索引,它可以为索引创立自己的分区。局部索引就是在各个分区表上创立的索引。4.简要介绍数据库中的位图索引和B树索引.〔1〕B树索引是Oracle中默认的最常用的索引,缺省条件下建立的索引就是这种含了关键字和给表中每个匹配行的ROWID。人版都支持位图索引,但标准版不支持。位图索引是为数据仓库/在线分析查询环境设计的,在此所有查询要求的数据在系统实现时根本不知道。位图索引特别不适用于OLTP系统,如果系统中的数据会由多个并发会话频繁地更新,这种系统也不适用位图索引。5.简述反向键索引的工作原理如果索引列的数据以严格的有序的方式插入,则B树索引树将变成一棵不对称的"歪树",我们使用一个传统的B树索引,这些值就可能会放到同一个索引块上,这样就会加剧这一叶子结点块的热块竞争。如果在将数据放在索引中之前,将先把所存储数据的字节反转,这样原本可能在索引中相邻放置的值在字节反转之后就会相距很远,通过反转字节,对索引拟对称,从而提高表的查询性能,如图2所示:列的顺序被保存,但每个列的字节都作了反向。反向键索引有它局限性:如果在WHERE语句中,需要对索引列的值进展围性的搜索,如BETWEEN、<、>等,其反向键索引无法使用,此时,Oracle将执行全表扫描;只有对反向键索引列进展<>和=的比拟操作时,其反向键一、单项选择题1.视图定义是〔D〕A.一个基表中导出的基表B.一个基表中导出的虚表C.一个或几个基表或视图中导出的基表D.一个或几个基表或视图中导出的虚表2.在视图上不能完成的操作是(C)A.更新视图C.在视图上定义新的根本表D.在视图上定义新视图3.在根本SQL语言中,不可以实现(D)C.查询视图和基表D.并发控制4.以下关于关系数据库视图的说法中,哪些是正确的"(A)C.Ⅱ、Ⅲ、Ⅳ和ⅤD.都正确5.以下模式对象不会占用实际的存储空间是〔D〕6.查看视图中哪些字段可以更新应查询〔D〕视图A.DBA_VIEWSB.DBA_CLU_COLUMNSC.DBA_OBJJECTSD.DBA_UPDATABLE_COLUMNA.视图数据只能用来查询和浏览,不能进展修改、插入和删除B.可以修改和删除视图的数据,但是这些数据不更新到数据库表中C.可以在查询分析器中使用INSERT/UPDATE/DELETE等SQL语句对视图进展操作-D.由于视图是数据库基表数据的复制,因此删除视图中数据行,不会影响到基表的数据。As以下评述正确的选项是〔A〕B.语法错误:第一行的列名不能这样指定二、填空题1.视图是一个表示表的数据的数据库对象,它允许用户从一个表或一组表过一定的查询语句2.可以通过在SQL*PIUS中查询Oracle数据库字典的动态视图是V$NLS-PARAMETERS。3.DBA_DATA_FILES视图用来检查数据文件的大小,DBA_FREE_SPACE视图用来判断4.当对视图进展UPDATE、INSERT和DELETE操作时,为了保证被操作的行满足视图定义中子查询语句的谓词条件,应在视图定义语句中使用可选择项WITHCHECKOPTION。5.在不为视图指定列名的情况下,视图列的名称将使用表列的名称。三、问答题视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的对其中所引用的根底表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。分布式查询也可用于定义使用多个异类源数据的视图。如果有几台不同的效劳器分别存储组织中不同地区的数据,而您需要将这些效劳器上相似构造的数据组合起来,这种方式就很有用。视图中没有数据,仅仅是一条SQL语句,查询语句检索出来的数据以表的形式表示;视图的定义存储在数据字典中,视图的查询基于表;视图没有直接的相关物理数据,不能像表3.举例说明WITHCHECKOPTION的作用(WITHCHECKOPTIONwhere子句违规〞。进展插入、修改、删除操作时,DBMS会自动加上条件〔在本例中加的条件是:sid=2〕。4.创立一个视图时,使用SELECT语句如下:SELECTCOUNT(*)FROM商品信息,为什么不能更新这个视图.如何查看该试图是否可以更新.〔1〕表商品信息无COUNT(*)对应的字段。〔2〕视图的更新能唯一地有意义地转换成对相应根本表的就可以更新。其中S,C,SC分别代表学生,课程及学生-课程。S*,SN,SA,SG,C*PC*,G分别表示**,学生,年龄,系别,课程号,课程名,预修课号,成绩等,以上述模式为根底做一个视图VSC〔S*,SN,SA〕,该视图表示计算机系学生的视图。CREATEVIEWASVSC〔S*,SN,SA〕SELECTA.S*,SN,SAFROMSA,CB,SCCWHEREA.S*=C.S*ANDB.C*=C.C*ANDPC*=’计算机’-第十章PL/SQL根底一、单项选择题2.在PL/SQL中,以下(D)变量名合法。A.1VARB."var_abC.$ABCD.ROS$$_14.PL/SQL语言的根本逻辑构造不包括〔A〕。5.在以下的表的显示结果中,以下语句的执行结果是USERIDUSERNAMEUSERNAMEGRADE执行语句rownum<=1);6.以下哪个语句允许检查UPDATE语句所影响的行数.(B)A.SQL%FOUNDB.SQL%ROWCOUNTC.SQL%COUNTD.SQL%NOTFOUND8.声明%TYPE类型的变量时,效劳器将会做什么操作.〔A〕A.为该变量检索数据库列的数据类型B.复制一个变量C.检索数据库中的数据D.为该变量检索列的数据类型和值9.如何终止LOOP循环,而不会出现死循环.〔D〕A.在LOOP语句中的条件为FALSE时停顿。B.这种循环限定的次数,它会自动终止循环。C.E*ITWHEN语句中的条件为TRUED.E*ITWHEN语句中的条件为FALSE10.有一段PL/SQL程序如下所示:LOOPE*ITWHENvar1>12;DBMS_OUTPUT.PUT_LINE(‘A’);ENDLOOP;A.AB.AAC.AAD.AAA11.DBMS_LOB数据包提供的〔D〕,返回LOB值的长度。A.LENGTHB.SUBSTRC.INSTRD.GETLENGTH12.PL/SQL为存耗尽时,预定义了〔C〕异常。A.NO_DATA_FOUNDB.MEMORY_ERRORC.STORAGE_ERRORD.NO_MEMEORY_FOUND13.在PL/SQL中,在执行任何DML语句前,SQL%NOTFOUND的值为〔CA.NOTFOUNDB.TRUEC.NULLD.FALSE二、填空题1.PL/SQL程序块主要包含3个主要局部:声明局部、可执行局部和异常处理局部。-2.使用显式游标主要有4个步骤:声明游标、翻开游标、检索数据、关闭游标。3.你刚刚编译了一个PL/SQLPackage但是有错误报道,使用SHOWERRORS命令显示出错信4.查看下面程序块,DBMS_OUTPUT将显示什么结果.N。DECLAREBEGINDECLAREBEGINEND;DBMA_OUTPUT.put_line(vaEND;DECLAREBEGINIFvar1>500THENELSEIFvar1>1000THENELSEENDIF;END;6.自定义异常必须使用RAISE语句引发。三、问答题1.PL/SQL提供了哪些循环构造.举例说明1))LOOP语句格式:LOOP执行语句;E*ITWHENENDLOOP;v_Sum:=v_Sum+v_i;DBMS_OUTPUT.PUT_LINE(v_Sum);2))WHILE语句格式:-v_Sum:=v_Sum+v_I;WHENWHENWHENENDCASEWHENWHENWHENEND2.关键字%TYPE和%ROWTYPE的含义和作用是什么.如果声明的变量是直接映射到数据库的*一列上,则就可以使用%type关键字将变量锚定当数据类型发生变化时,此方法显得非常灵活。如果更改了列的长度,则锚定到该列上的所有变量都会自动更改其长度;我们得手动将v_enam更改为emp.ename一样的数据当我们使用锚定类型后,变量就会自动进展调整。%rowtype与%type相似;不过它将变量锚定到表的所有列,而不是锚定到*一列;3.如何处理用户自定义的异常.使用RAISE_APPLICATION_ERROR函数,该函数是将应用程序专有的错误从效劳器端转到达客户端应用程序(其他机器上的SQLPLUS或者前台开发语言)。一、单项选择题2.以下哪个语句可以在SQL*PLUS中直接调用一个过程.〔D〕A.RETURNB.CALLC.SETD.E*EC-A.INB.INOUTC.OUTIND.OUT4.如果存在一个名为TEST的过程,它包括3个参数:第一个参数为P_NUM1,第二个参数为P_NUM2,第三个参数为P_NUM3。3个参数的模式都是IN,P_NUM1参数的数据类型是NUMBER,P_NUM2参数的数据类型是VARCHAR2,P_NUM3参数的数据类型是VARCHAR2,以下哪一个是该过程的有效调用.〔D〕A.TEST(1010,P_NUM3>=’abc’,P_num2>=’bcd’)B.TEST(P_NUM1>=1010,P_num2=>’abc’,’bcd’)C.TEST(P_NUM1=>1010,’abc’,’bcd’)D.上述都对5.函数头部中的RETURN语句的作用是〔A〕A.声明返回的数据类型B.声明返回值的大小和数据类型D.函数头部不能使用RETURN语句6.如果在程序包的主体中包括了一个过程,但没有在程序包规中声明这个过程,则它将会被认为是〔D〕7.对于下面的函数,哪个语句能成功地调用.〔D〕CREATEORREPLACEFUNCTIONAsSumnumber;BEGINSum:=Addend_*+Addend_y;END;B.E*ECUTECalc_Sum(45)C.E*ECUTECalc_Sum(23,12)8.当满足以下〔B〕条件时允许两个过程具有一样的名称.A.参数的名称或数量不一样时B.参数的数量或数据类型不一样时C.参数的数据类型和名称不一样时D.参数的数量和数据类型不一样时9.在FUNCTION主体中,不可能有〔A〕个RETURN语句。FUNCTIONCHAR〕RETURNDATEIS以下〔D〕程序段正确地调用该数据包的函数。A.DECLAREBEGINB.DECLAREBEGINC.DECLAREvalue1DATE;BEGIND.DECLAREvalue1DATE;BEGIN二、填空题3.程序包包括两个组成局部,即和包体。前者包含了该程序包的信息、过程和函数列表,后4.如果希望查看过程的有关信息,则可以使用USER_SOURCE数据字典视图。5.创立和替换存储过程的语句是CREATEORREPLACEPROCEDURE,删除存储过程的语句是DROPPROCEDURE,创立和替换函数的语句是CREATEORREPLACEFUNCTION,删除函数的语句是DROPFUNCTION。6.在下面程序的空白处填写一定的代码,使该函数输出0-100的值-7.在下面程序的空白处填写一定的代码,使该函数可以获取指定编号的商品价格。CREATEOREPLACEFUNCTIONRETURNNUMBERISV_priceNUMBERBEGINSELECT单价INTOV_priceFROM商品信息WHERE商品编号=pid;RETURNv_priceE*CEPTIONWHENNO_DATA_FOUNDTHENDBMS_OUTPUT.PUT_LINE(‘查找的商品不存在!’);WHENTOO_MANY_ROWSTHENDBMS_OUTPUT.PUT_LINE(‘程序运行错误!请使用游标’);WHENOTHERSTHENDBMS_OUTPUT.PUT_LINE(‘发生其他错误!’);三、问答题句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数〔如果该存储过程带有参数〕来执行它。〔1〕存储过程只在创造时进展编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。这些操作,如果用程序来完成,就变成了一条条的SQL语句,可能要屡次连接数据库。而换成存储,只需要连接一次数据库就可以了。2.创立存储过程,要求输入员工号,输出该员工的工资CREATEORREPLACEPROCEDUREPRO_NAME〔in_idINVARCHAR2,out_wageOUTVARCHAR2)ASBEGINSELECT工资intoout_wageFROM资料WHEREENDPRO_NAME;3.创立一个存储过程P1,要求执行改存储过程能够返回考生数据表(tblkaosheng)中bmdwdm该结果集要按照bmdwdm〔报位代码〕和号升序排列CREATEPROCEDUREp1ASCREATEPROCEDUREp2ASCREATEORREPLACEPACKAGE"MYPACKAGE"as-CREATEORREPLACEFUNCTION一、单项选择题1.触发器的类型不包括的是〔B〕。A.DML触发器B.DDL触发器C.替代触发器D.系统触发器2.在SQL语言中,如果要建立一个工资表,包含职工号、、职称、工资等字段。假设要保证"工资"字段的取值不低于800元,最适宜的实现方法是〔C〕D.为工资表数据输入编写一个程序进展控制3.如果希望执行*个操作时,该操作本身不执行,而是去执行另外的*些操作,则可以使用什么方式完整这种操作.〔A〕4.系统事件触发器共支持5种系统事件,以下〔B〕事件不A.更新数据B.查询数据C.删除数5.在使用CREATETRIGGER语句创立行级触发器时,哪一个语句用来引用旧数据.〔D〕A.FOREACHB.ONC.REFERENCINGD.OLD6.在创立触发器时,哪一个语句决定了触发器是针对每一行执行一次,还是针对每一个语句执行一次.〔D〕A.FOREACHB.ONC.REFERENCINGD.NEWA.ALTERTABLEB.MODIFYTRIGGERC.ALTERTRIGGERD.DROPTRIGGER9.可以使用哪个语句来更改相关性标识符的名称.〔A〕A.REFERENCINGB.WHENC.INSTEADOFD.RENAMEA.CREATETRIGGERBEFOREINSERTONmyViewBEGINB.CREATETRIGGERAFTERINSERTONmyViewBEGINC.CREATETRIGGERINSTEADOFINSERTONmyViewBEGIND.以上都不对二、填空题1.创立和替换触发器的语句是CREATEORREPLACETRIGGER,删除触发器的语句是DROPTRIGGER。2.在触发器定义中,可以使用OLD引用修改前的数据,使用NEW引用新插入的数据。3.假设有一个表TEST,它仅包含一个字段DATA.现在创立一个触发器,实现将添加的数据变为大写,请在空白处填写适当的语句。onTEST4.BEFORE和AFTER指定了触发器的触发时间。当为一个表配置了约束时,它们将会特别有用,BEFORE可以规定Oracle在应用约束前调用触发器,而AFTER规定在应用约束后调用触三、问答题1.描述一个触发器包括哪几局部及其作用.-触发器主要由触发器名称、触发语句、触发时间、触发事件、触发级别等组成。〔1〕触发器名:触发器对象的名称。由于触发器是数据库自动执行的,因此该名称只是一个名称,没有实质的用途。〔2〕触发时间:指明触发器何时执行,该值可取:BEFORE表示在数据库动作之前触发器执行;AFTER表示在数据库动作之后出发器执行。INSERT:数据库插入会触发此触发器;UPDATE:数据库修改会触发此触发器;DELETE:数据库删除会触发此触发器。〔1〕DML触发器由DML语句触发,语句的类型确定DML触发器的类型,可以定义为INSERT,UPDATE,DELETE操作,可以在操作之前或之后被触发。触发器是在视图上而不是在表上定义的触发器,它是用来替换所使用实际语句的触发器。〔3〕系统触发器在DDL事件或者数据库事件〔比方用户登陆注销,效劳器错误等等〕系统触发器分模式触发器和数据库触发器,模式触发器只有当前的触发事件以指定模式truncate等DDL语句,如果
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 八年级科学天气与气候提升训练教案
- 防踩踏安全模板课件
- 肺搓裂伤课件
- 妇产科下载课件
- 防春困防疲劳驾驶课件
- 6-phospho-D-gluconate-dehydrogenase-E-coli-生命科学试剂-MCE
- 房产服务培训课件
- 方程初步的课件
- 2026-2027学年初中心理健康七年级下册北师大版(2021)第十八课 一起追逐星星课时同步卷
- 江苏省百校大联考2027届高三上学期9月学情检测英语试卷含答案
- 查漏补缺 2026年秋季八年级道德与法治部编版上学期期中测试卷(含答案)
- 三上群文阅读议题5:带着好奇心来观察
- 血脂异常基层诊疗指南解读 课件
- 无人机行业应用技术 课件 项目三农林应用
- 工程造价全过程跟踪审计报告
- 职业教育教学模式
- JJF(京)136-2024 液相色谱仪自动进样器校准规范
- 水利工程生产安全重大事故隐患判定标准与实践应用
- 2025年河北城乡建设学校公开招聘工作人员6名(公共基础知识)综合能力测试题附答案解析
- TCERS0005-2020电力线路跨越电气化铁路施工防护技术规范
- GB/T 3464-2025机用和手用丝锥
评论
0/150
提交评论