(4)表的互斥和共享打开的表要么互斥(Exclusive)使⽤,要么共享(Shared)使⽤。如果互斥使⽤,那么在关闭该表之前任何其他⼈都不得再重新打开该表。缺省状态下。FoxPro打开的表是互斥使⽤的。要命名打开的表能共享使⽤,必须加载DOS SHARE程序。⼯作在不需SHARE的络上则不⽤加载。同时要在Command窗⼝中敲⼊SET EXCLUSIVE OFF,那么后续打开的所有表都能共享使⽤,已经打开的表依然互斥使⽤。在USE命令后加⼊SHARED,使⽤户能够替换对指定⽂件的EXCLUSIVE设置。也可从View窗⼝中打开表⽤于共享使⽤,这可以取消File/open对话框中Exclusive复选框的标记⽽实现。某些FoxPro命令需要互斥使⽤表,如DELETE TAG,INDEX ON…TAG,INSERT [BLANK],MODIFY STRUCTURE,PACK,REINDEX,ZAP等。在表被打开⽤于共享之后,必须处理记录争⽤的问题。但⽬前读者还只需要知道在交互地增加和修改的据时,FoxPro为⽤户处理⼤多数这种问题。注意:如果⽤户保证EXCLUSIVE已关闭(SET OFF),但状态栏仍旧显⽰表是EXCLU¯SIVE的话,那么或许SHARE程序没有加载,或许表是在EXCLUSIVE打开(SET ON)状态时打开的,也可能所使⽤的表刚刚创建。⽤户创建表打开时是互斥使⽤的,直到关闭该表;但下⼀次打开该表时,可使表⽤于共享。2022年法考延期最新消息
(5)Browse窗⼝Browse窗⼝是FoxPro功能、最富⽣机的特征之⼀。在Browse窗⼝中不仅可以浏览表的内容,还可以向表中增加记录、删除记录、修改字段等。进⼊Browse窗⼝有多种⽅法,既可从主菜单中Database/Browse进⼊,也可从View窗⼝中的Browse按钮进⼊,还可以在查询时进⼊。View窗⼝在F
oxPro中是最有⽤的窗⼝之⼀。⽤户应在进⼊FoxPro后,就打开View窗⼝,这样会给⽤户带来许多⽅便。事实上,FoxPro的所有表,都是以单独的⽂件存放在磁盘中的,数据库实质上只是⼀个⽬录名⽽已。FoxPro对⽂件的保护⽐较弱,有时拷贝表时,会丢失某些信息,以⾄于到另外⼀台机器上不能打开,这时就应重新拷贝,把所有相关的⽂件,如FPT、IDX等⽂件⼀并拷⾛。这样数据库才能在另外⼀台机器上安全地运⾏。
3.使⽤FoxPro数据库
(1)建⽴数据库建⽴数据库要决定需存储在数据库中的信息的结构,即数据库的结构。
(2)RQBE窗⼝尽管使⽤Browse可以浏览表,但毕竟只能做⼀些简单的检索,为此FoxPro提供了RQBE(Relational Query By Example)。RQBE是⼀种交互式⼯具,避免了写复杂检索程序的⿇烦,可以很⽅便地检索数据。RQBE的功能很
强,RQBE是⽤户和SQL SELECT命令间的接⼝,Fox¯Pro⽀持SQL。另外,RQBE可以把语句保存在.QPR⽂件中。
(3)报表的设计与制作使⽤RQBE可制作出报表,还可以利⽤FoxPro功能强⼤的Report Writer来制作⼀张符合需要的报表。
4.创建应⽤程序
(1)建⽴数据库编写数据库应⽤程序的第⼀步是确定该系统必须使⽤的数据库⽂件和索引。
(2)菜单⽣成器FoxPro为⽤户提供了很简洁的丰富的菜单编程命令,但这些繁杂的命令很容易令⼈厌烦。如果使⽤菜单⽣成器,将会使构造菜单系统变得容易许多。菜单⽣成器的启动有两种⽅式:
(1)通过在Command窗⼝键⼊Create menu[〈⽂件名〉],键⼊回车即可。
(2)通过系统菜单启动。
公检法公务员报考条件专业要求(3)屏幕⽣成器⼤多的应⽤程序都是围绕着⽤户界⾯屏幕来建⽴的。有些屏幕⽤来录⼊或编辑数据,有些屏幕⽤以显⽰信息,有些屏幕⽤于表的维护等等。FoxPro的屏幕⽣成器就是⽤来创建⼤多数上述屏幕的⼯具。在各类界⾯设计中,输⼊屏幕算是⽐较繁⽽且⼜很常⽤的界⾯屏幕了(4)项⽬管理器项⽬管理器主要有以下两个作⽤:
①维护项⽬使⽤的所有⽂件。
计算机四级考试内容
②建⽴应⽤程序项⽬管理器具有优秀编程⼯具的特点,它为⽤户做了许多⼯作,并且易于使⽤。可以通过选择File New Project、New或在命令窗⼝键⼊Creat project命令来创建⼀个新的项⽬。然后使⽤A
dd按钮开始创建该项⽬中的新⽂件或将已有的⽂件添加到该项⽬中。⾸先,将主⽂件添加到项⽬中。由此,项⽬管理器就可以沿着程序的执⾏步骤(即嵌⼊在⽂件中的函数和过程调⽤)来⼀步步跟踪,直到到当前项⽬所需的所有⽂件为⽌。⽣成项⽬⽂件⾮常容易,在项⽬管理器窗⼝中按下Build按钮,选择Re-build project,Build Application或Build Executable选项。另外,项⽬管理器能⽅便的发现和修改编译错误。应该指出,⼀个项⽬并不⼀定要⽣成应⽤程序;⽽⼀个完整的“应⽤程序”可以包含若⼲个项⽬和若⼲个⽣成类。因此,逻辑上的解决办法是将应⽤程序拆成许多的项⽬,这就是应⽤程序的分级设计⽅法。来源:amda
⼗⼀、ORACLE 数据库管理系统介绍
1.ORACLE的特点:
可移植性 ORACLE采⽤C语⾔开发⽽成,故产品与硬件和操作系统具有很强的独⽴性。从⼤型机到微机上都可运⾏ORACLE 的产品。可在UNIX、DOS、Windows等操作系统上运⾏。可兼容性由于采⽤了国际标准的数据查询语⾔SQL,与IBM的SQL/DS、DB2等均兼容。并提供读取其它数据库⽂件的间接⽅法。可联结性对于不同通信协议,不同机型及不同操作系统组成的络也可以运⾏ORACLE数据库产品。
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)表空间
(2)5种类型的段(segment)
①数据段;
②索引段;
③滚回(rollbock)段;
④临时段;
⑤⾃举(bootstrap)段。段的分配单位叫范围(Extent)表空间(Tablespace)⼀个数据库划分成的若⼲逻辑部分称为表空间。⼀个数据库可以有⼀个或多个表空间,初始的表空间命名为SYSTEM,每⼀个逻辑表空间对应于⼀个或多个物理⽂件。DBA使⽤表空间做以下⼯作:控制数据库对象,如表、索引和临时段的空间分配。为数据库⽤户设置空间配额。利⽤个别表空间的在线或离线,控制数据的可⽤性。后备或恢复数据。通过分配空间,以改进性能。在每个数据库中都存在SYSTEM表空间,它在建⽴数据库时⾃动建⽴。在该表空间中,包含数据库的数据字典,其中存储全部数据库对象的名字和位置。SYSTEM表空间总是在线的,像其它表空间⼀样,可以通过增加新的数据库⽂件来扩⼤。⼀个表空间可包含许多表和索引。但⼀个表和索引不能跨越表空间,可跨越组成表空间的⽂件。在DB的打开的情况下,DBA利⽤ALTER TABLESP ACE语句,可以实施表空间的在线或离线。SYSTEM表空间必须在线。表空间离线有下列原因:⼀般为了使部分数据库不能使⽤,⽽允许正常存取数据库其余部分。执⾏表空间离线备份。⼀个离线的表空间,不能被应⽤⽤户读或编辑。可以增加数据⽂件扩⼤已有的表空间,也可增加新的表空间使数据库容量增⼤,或分配空间给某个应⽤。使⽤ALFER TABLESPACE ADD FILE语句将另⼀个数据⽂件加⼊到已存在表空间中。使⽤CREATE TABLESPACE语句可建⽴⼀个新的表空间。段(segment)表空间中的全部数据存储在以段划分的数据库空间中。⼀个段是分配给数据库⽤于数据存储的范围的集合。数据可以是表、索引或RDBMS所需
要的临时数据。段是表空间的下⼀个逻辑存储的级别。⼀个段不能跨越⼀个表空间,但可跨越表空间内的⽂件。⼀个数据库最多需要五种段类型:数据段⼀个包含⼀个表(或聚集)的全部数据,⼀个表(或聚集)总有⼀个单个数据段。索引段⼀个索引段包含对⼀个表(或聚集)建⽴的⼀个索引的全部索引数据。⼀个表可以有⼀个、多个或者没有索引段,取决于它所拥有的索引个数。⼀个聚集必须⾄少有⼀个索引段,即在聚集码上建⽴聚集索引。回滚段每个DB有⼀个或多个回滚段。⼀个回滚段是DB的⼀部分,它记录在某⼀情况下被撤消的动作。回滚段⽤于事务控制和恢复。临时段在处理查询时,ORACLE需要临时⼯作空间,⽤于存储语句处理的中间结果,这个区称为临时段。⾃举段⾃举段在SYSTEM表空间中,在数据库建⽴时建⽴。它包括数据字典定义,在数据库打开时装⼊。
4.⽤户数据库对象
由⽤户建⽴的对象驻留在表空间中,含有真正的数据。数据库对象有表、视图、聚集、索引、伪列和序号⽣成器。
(1)聚集(Cluster)聚集是存储数据的⼀种可选择的⽅法。聚集包括存储在⼀起的⼀组表,它们共享公共列并经常⼀起使⽤。由于内容相关并且物理地存储在⼀起,存取时间得到改进,存储空间可以减少。聚集是⼀种优化措施。聚集对性能的改进,依赖于数据的分布和SQL操作的内容。特别是使⽤聚集对连接⾮常有利。可以明显地提⾼连接的速度。建⽴聚集命令的基本格式:SQL>CREATE CLUST
ER〈聚集名〉(列定义[,…]);利⽤聚集建⽴表命令基本格式:SQL>CREATE TABLE〈新
表名〉(列定义[,…]CLUSTER〈聚集名〉(聚集列);在聚集码上必须建⽴⼀个聚集索引,对于每⼀数据块上每个聚集码值有⼀索引项。这个索引必须在DML语句对聚集表操作前建⽴。建⽴索引的语句是:CREATE INDEX索引名ON CLUSTER 聚集名。
(2)序号⽣成器序号(SEQUENCE)⽣成器为表中的单列或多列⽣成顺序号。利⽤序号可⾃动地⽣成主码。使⽤SQL语句定义序号,给出⼀些信息(如序号名、是升序或降序、每个序号间的间隔和其它信息)。所有序号存储在数据字典表中。所有序号定义存储在数据字典的SEQUENCE表中。⽤户可以通过字典视图USER-SE-QUENCES、ALL-SEQUENCES和DBA-SEQUENCES查询和存取。建⽴序号⽣成器的语句是:CREATE SEQUENCE序号⽣成器名其它选项。⼀旦序号⽣成器S被定义。可⽤S.Currval来引⽤S序号⽣成器的当前值。⽤S.nextval产⽣下⼀个新的序号并加以引⽤。
(3)伪列伪列的⾏为像表的⼀列,但不真正存在于表中,在查询时可引⽤伪列,但伪列不能插⼊、删除或修改。
5.数据字典
数据字典ORACLE RDBMS最重要的部分之⼀。数据字典含有⼀组系统定义的表,只能读,是关于数
据库的引⽤指南。它可提供以下信息:ORACLE⽤户的⽤户名;每个⽤户被授予的权限和⾓⾊;实体的名字和定义;完整性约束为数据库实体分配的空间;通⽤的数据库结构;审计信息;触发⼦等的存储。数据字典是以表和视图构成的,像其它数据库数据⼀样,可⽤SQL语⾔查询数据字典。数据字典在DB建⽴时建⽴。每当DB进⼊操作,数据字典就由ORACLE RDBMS负责修改。数据库建⽴时有两个默认DBA⽤户:SYS、SYSTEM。SYS持有基本表中的数据。
下⾯列出的是⼀些常⽤的表或视图的名称。
(1)DTAB 描述了组或数据字典的所有表。
(2)TAB ⽤户建的所有基本表、视图和同义词。
(3)COL ⽤户创建基本表的所有列的信息。
(4)SYNONYMS ⽤户可存取的同义名词、专⽤名和公⽤名。
(5)CATALOG ⽤户可存取的表、视图、同义词、序列。银行从业资格考试准考证打印时间
(6)CONSTRAINTS ⽤户可存取的约束。
(7)INDEXES ⽤户可存取的表和聚集的序列。
(8)OBJECTS ⽤户可存取的对象。
(9)TANLERS ⽤户可存取的表。
(10)USERS 查看当前全部⽤户。
(11)VIEWS 查看⽤户可存取的视图。
(12)SYSTABAUTH ⽤户对数据对象的使⽤权限。可以⽤SQL>SELECT*FROM〈字典表名或视图名〉WHERE〈条件〉来读取有关信息。可以⽤SQL>DESCRIBE〈表名〉来查看表的结构定义。但是数据库字典的结构不可改。⽤DESCRIBE命令还可以查看视图及过程的定义。 6.ORACLE的SQL、PL/SQL与SQL*PLUS
医师资格证书查询入口
作为ORACLE数据库核⼼的SQL语⾔是ANSI和ISO的标准SQL的扩充。⽤来存储、检索和维护数据库中的信息,并控制对数据库的存取事务。由于RDBMS执⾏SQL语句时,是⼀次只执⾏⼀条语句,它是⾮过程化的。这就使得单条的SQL语句使⽤⽅便,功能强⼤。⽤户只需说明操作⽬的,不必关⼼具体操作的实现⽅法。但在实际数据库应⽤开发中,往往要依据前⼀步对数据库操作的结果或上⼀个事务提交的情况来确定下⼀步的操作。故ORACLE推出了⼀种PL/SQL⼯具,它扩充了SQL语句,使之具有可进⾏过程化编程的能⼒,如循环、分⽀功能。PL/SQL可⽀持变量和常量的使⽤。
⼗⼆、分布式数据库
1.分布式数据库的分类
分布式数据库,是根据它的管理系统(Distributed DBMS-DDBMS)进⾏分类的。对DDBMS可以从四个不同⾓度来分类:
(1)从构成的⽅式,可分为同构型和异构型两类所谓同构型,是指所有节点的局部DBMS都⽀持同⼀数据模式和数据语⾔。为使每个节点都掌握彼此的数据情况,需要增加络数据库管理系统(NDBMS),各节点之间通过通信络形成统⼀的整体。同构型的DDBMS对于并发控制、冗余数据的⼀致性等问题容易处理,但建库的代价⽐较⼤。所谓异构型系统,是指在分布环境中各节点上的数据模型和数据语⾔都可能不同。异构⽐同构型系统实现起来要困难⼀些,为了在两个节点上的局部DBMS之间进⾏信息交换,就要对数据模式和数据语⾔进⾏转换和映射⼯作。
(2)按控制⽅式,可以分为集中式与分布式所谓集中控制的DDBM指所有事务都由⼀台叫做中⼼计算机的节点进⾏管理。分
布控制的DDBMS,是指每个节点都保持DDBMS的⼀个副本来监督和管理各节点及系统事务,它将络⽬录作为⽤户数据库存放于局部DB之中。
(3)从数据分布的⾓度,DDBMS⼜可分为分割式、部分重复式和完全重复式所谓分割式,是指每个节点只存储DDB数据实体的部分⼦集,各节点的副本互不重叠。部分重复式,是指每个节点都存储DDB数据实体的任意⼦集。完全重复式,是指每个节点都存储整个DDB数据实体的副本。也有⽂献把完全重复式称为复制式。(4)从⽤户的⾓度,DDBM可分为总体型和多重型。
2.分布式数据库与单⼀数据库的⽐较
(1)集中控制在⼀个企业或单位范围内的信息资源上,对信息提供集中式控制的可能性,被认为是采⽤数据库技术的动⼒之⼀,因为集中式数据库是根据信息系统的演变和集中处理信息的需求开发出来的。
(2)数据独⽴性数据独⽴性也曾经被认为是采⽤数据库⽅法的主要动⼒之⼀。实际上,数据独⽴性意味着数据的实际结构对应⽤程序来讲是透明的,应⽤程序员只需要利⽤数据逻辑结构,即所谓概念模式来编写程序。数据独⽴性的主要优点是应⽤不受数据存储的物理结构变化的影响。在分布式数据库中,数据的独⽴性具有与传统的集中式数据同等的重要性,然⽽,⼀种崭新概念加进了数据独⽴性的⼀般概念之中,这就是分布式透明性。所谓分布式透明性,指的是在编写程序时就好象数据没有被分布⼀样。这样,⽆论把数据存储到甲地或⼄地,或者把数据从⼀个节点移到另⼀个节点,都不会影响程序执⾏的正确性和有效性,但是,必须指出,执⾏速度或者效率却受到了影响。众所周知,通过具
有不同形式的数据描述和它们之间的映射的多层体系结构,曾为传统的数据库提供了独⽴性,为此⽬的,开发出了概念模式、存储模式和外部模式等概念。利⽤类似的⽅法,我们可以通过采⽤新层次和新模式,在分布式数据库中可获得分布式透明性。分布式透明性是分布式数据库系统的主要⽬标之⼀。
(3)降低冗余在传统数据库系统中,尽可能地降低冗余度是它的主要⽬标之⼀。这有两个原因:⾸先,通过只⽤⼀个正本,可以⾃动地避免同⼀逻辑数据中⼏个副本之间的不⼀致性。其次,⽤降低冗余度来节约存储空间。通过共享数据的⽅式,即通过允许⼏个应⽤访问同⼀⽂件和记录可以达到降低冗余度的⽬的。但是,在分布式数据库中,把数据的冗余看成是所需要的特性。这有⼏个原因:⾸先,如果在需要冗余的所有节点都复制数据,则可以增加应⽤的局部性。其次,可以增加分布式数据库系统的有效性和可靠性。因为,如果复制数据,则⼀个节点上的故障不会停⽌其它节点上应⽤的执⾏。在⼀般情况下,为传统集中式环境所规定的克服冗余的原因,在分布式环境中仍是有效的。因此,在分布式数据库中,对冗余度的评价要选择⼀种折衷⽅案,不能⼀概⽽论。⼀般地说,复制数据项的⽅便程度是随着应⽤所执⾏的检索访问与更新访问的⽐率提⾼⽽增加。数据复制便利程度的提⾼,是因为具有⼀个项⽬多个副本,检索可以在任⼀副本上进⾏,⽽更新却必须在所有副本上⼀致地进⾏。
(4)有效访问复杂的访问结构,如辅助索引,⽂件间的链接等,都是传统数据库所采⽤的重要技术,对这些结构的⽀持是数据库管理系统DBMS极为重要的组成部分。提供复杂访问结构的原因,是为了
提⾼存取数据的效率。
(5)完整性、恢复和并发控制在数据库理论中,尽管完整性、恢复和并发控制等所涉及的问题是不同的,但它们之间相互联系还是很多的,⼀般来说,完整性、恢复和并发控制等问题的解决,在很⼤程度上取决于所提供的事务的结构形式。
(6)保密性和安全性在传统数据库中,具有集中式控制的数据库管理员能保证只执⾏那些授权的数据访问。但应当指出,集中式数据库本⾝⽐过去处理单独⽂件的旧⽅法更难于实现数据的保密性和安全性。在分布式数据库中,局部数据库管理员⾯临的⼀些主要问题,与传统数据库管理员⾯临的问题⼀样。但是,分布式数据库的两个独特⽅⾯值得⼀提:⾸先,在具有极⾼度节点⾃主权的分布式数据库中,局部数据的拥有者认为⽐较安全,因为他们能⾃主地实施⾃⼰的安全措施,以履⾏集中式数据库管理员的职责。其次,安全性问题,⼀般是分布式系统的固有问题,因分布式系统是通过通信络来实现分布式控制的,⽽通信络本⾝就在保护数据的安全性和保密性⽅⾯存在着弱点。通过络偷看、乱改别⼈的数据难以完全避免。
3.分布式数据库管理系统(DDBMS)
在⽬前分析DDBMS的性能时,应该把商品化系统和先进的研究样机区分开来,但是可以预料,某些先进的研究样机中试验的特性,可能会应⽤到将来的商品化系统中去的。本节简要叙述分布式数据库管
理系统的基本性能,并就⽤什么样的⽅法使得分布式数据库这个新技术商品化的问题谈⼀点看法。从⽬前看,世界上⼏各已经商品化的分布式系统是由集中式数据库管理系统的销售⼚商开发出来的。这些分布式数据库管理系统,包括扩充集中式DBMS时所附加的部件。分布式功能的扩充是通过装配在计算机络中不同节点上的DBMS之间所提供的通信和合作来实现的。在这种情况下建⽴分布式数据库通常所必须的软件部分是:
(1)数据库管理部分(DB);
(2)数据通信部分(DC);
(3)数据字典(DD),它能⽤来表⽰有关络中数据分布的信息;
(4)分布式数据库部分(DDB)。
⼗三、分布式ORACLE系统简介
1.分布式体系结构的ORACLE
1986年,ORACLE公司推出了它的分布式体系结构的ORACLE数据库系统。该系统是由分布式数据库管理系统(ORACLE RDBMS)、⽀持多种操作系统和通信协议的分布式处理环境软件SQL*NET、以及与⾮ORACLE RDBMS联接的软件
SQL*CONNECT这三部分组成的⼀个软件。分布式ORACLE采⽤了典型的开放式体系结构,对环境的适应范围⾮常⼴泛,可适应多种通信协议、多种操作系统、多种硬件环境及多种DBMS和数据源。
2.络ORACLE的连接过程
络ORACLE的连接过程⼤致包括以下⼏步:
(1)确认络结点是否安装了SQL*NET,如未安装,则需执⾏:*$SYS@ORACLE:NCONFIG.COM≠进⾏安装,并且使⽤SGAPAD.COM重新链接