模式/内模式映象外模式/模式映象外模式n外模式2内模式概念模式外模式1应用E应用D应用C应用B应用A数据库DBMS三级模式结构视图(DDL〕视图是虚表数据库只存储视图的定义,不存储对应的数据。视图用一组查询来定义,是被存储的查询安全性方便用途:createviewstudent1Asselect*fromstudentwheredno=‘d01’orderbybirth;视图定义1.建立‘D01’系的学生视图视图的用法1CreateSynonymstudentforstudent1;授权和建立同义词Select*fromstudent;查询视图的用法2查某门课不及格的男生或女生名单Createviewfail_nameasselectsnamefromstudentwheresex=&sexandsnoin(selectsnofromscwheregrade60andcnoin(selectcnofromcoursewherecname=&cname));Select*fromfail_name;表与视图视图视图象一个窗口,通过这个窗口查看表中的信息。安全方便基本表本身是实际且独立存在的。是数据库存储数据的基本单元dropviewfail_name;删除视图索引在数据库应用中,建立索引对象,改变物理存储,加速数据定位索引维护与应用对用户透明Oracle自动维护和使用索引。B树索引(系统自动为主码和唯一完整性约束建立)位图索引hash函数索引反向键值索引Oracle数据库支持的索引类型索引(table,分区表,聚集)•建立索引是为了快速找到需要的记录,加快查找的速度•Createindex索引名onemp(ename);例1:在emp表的ename列上建立索引Createindexidx1onemp(ename);B树索引SMITHALLENWARDJONESMARTINBLAKECLARKSCOTTKINGTURNERADAMSJAMESFORDMILLERIndexBlockTableBlockADAMSALLENBLAKECLARKFORDJAMESJONESKINGMARTINMILLERSCOTTSMITHTURNERWARDMILLERTURNERBLAKEJAMESKINGROWIDROWIDIndexBlockTableBlock块号行号文件IDrowidxxxxx.xxx.xxxSelect*FromempWhereename=‘BLAKE’Createindex索引名onemp(ename);位图索引•位图索引中的列对应于索引的每个不同值.•索引的每一行对应于表中的被索引的每一行•当一行含有特定的索引值时,该行的位图值为1,其他值为零北京天津上海010100001001100100d01合资d02合资d03合资d04外企d05国企d06合资dnotype天津北京上海上海北京北京locDEPselectdnofromdepwheretype=‘合资’andlocin(‘北京’,‘上海’)。和资北京上海10001101d021011d030AND0OR1=001001101d06位图索引的例子位图索引01000000dd5.0003.00010000100000dd5.0002.00010000010000dd5.0001.0001001000WARDJONESKINGFORDBLAKEALLENROWID0000dd5.0000.0001Select*FromempWhereename=‘BLAKE’位图索引建立位图索引;createbitmapindexdep_indexondep(loc);位图索引适用于列的值取值不多的情况、索引列含有越多的值,位图项就越多,需要存储索引的空间也越大。位图索引不适合于经常插入或更新数据的应用。位图索引典型地用于决策系统与数据仓库应用中查询数据。删除索引dropindexdep_index;建立索引Createindexidx1onemp(ename);建立索引原则:(1)记录有一定规模,检索10%内容。(2)某列在where子句中频繁使用。(3)先装数据,后建索引。聚集和聚集索引在公共列上具有同一值的行在数据库中物理地存储在一起。聚集可加快连接操作Createclusterclu1(depnochar(3));createtabledep(…)clusterclu1(dno);createtableemp(…)clusterclu1(dno);createindexclu1_idxonclusterclu110,radio,w…8889,…1010,radio,w8889,…7788,..20,簇(聚集)索引簇索引表的存储e01张一男d01同方87500e02李二女d01同方87500e10王三男d02紫光92034d03四通86800来自emp来自depclusterkeyDropindex模式名.索引名例如:Dropindexi_emp_ename;删除索引:Dropindexdep_index;ORACLE数据库概述子程序调用接口OCIDevelop2000Pro*C预编译接口SQL*Plusutilities操作系统RDBMSORACLE核心DB:ORACLE数据库概述Oracle工具RDBMSSQL*NET终端Oracle工具SQL*NETSQL*NETRDBMSDBDB网络虚终端ORACLE数据库概述Oracle数据库TrigerViewSQL*PlusProcedureTableViewTableFunctionTrigerIndexIndexClusterCluster