(中职)第2章 数据库和表的管理ppt课件.ppt

上传人:春哥&#****71; 文档编号:15608913 上传时间:2022-05-13 格式:PPT 页数:47 大小:2.91MB
返回 下载 相关 举报
(中职)第2章 数据库和表的管理ppt课件.ppt_第1页
第1页 / 共47页
(中职)第2章 数据库和表的管理ppt课件.ppt_第2页
第2页 / 共47页
点击查看更多>>
资源描述

《(中职)第2章 数据库和表的管理ppt课件.ppt》由会员分享,可在线阅读,更多相关《(中职)第2章 数据库和表的管理ppt课件.ppt(47页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、在此输入您的封面副标题(中职)第2章 数据库和表的管理2.1第 2 章数据库和表的管理在 Visual FoxPro 6.0 中,数据库文件是表、视图、连接、关系和存储过程等文件的集合。数据库类似一个容器,记录了其他各种类型文件的信息,例如文件名、保存位置等。可以把逻辑相关的表文件、本地视图文件、远程视图文件和存储过程等多种元素包含进来进行组织管理。【案例 3】创建“员工”数据库案例描述数据库文件实质就是 Visual FoxPro 6.0 的一种表文件,记录了其他各种类型文件的信息。表文件可以在数据库中创建,也可以单独创建之后再添加到数据库中。数据库文件的扩展名是.dbc,与此数据库关联的同

2、名备注文件的扩展名是.dct,同名索引文件的扩展名是.dcx。本案例以创建“员工”数据库为基础,维护员工数据库。相关知识1数据库设计器的使用在数据库设计器中可控制字段怎样显示或键入字段中的值,还可以添加视图并连接到一个数据库中,用来更新记录或者扩充访问远程数据的能力,如图 2-1-7 所示。图 2-1-7“数据库设计器”窗口在“数据库设计器”工具栏中,各个按钮作用如表 2-1-1 所示。2使用“项目管理器”管理数据库(1)添加和删除数据库可以使用“项目管理器”添加已有的文件或者用它来创建新的文件。例如,想把一些已有的扩展名为“.dbf”的表添加到项目中,只需要在“数据”选项卡中选择“自由表”选

3、项,然后单击“添加”按钮把它们添加到项目中。如果要从项目中移去文件,可先选定要移去的内容,然后单击“移去”按钮,打开删除提示框,并在提示框中单击“移去”按钮,如图 2-1-8 所示。移去只是将数据从项目中移动到项目外,文件依然存在,如果要彻底删除该文件,应在提示框中单击“删除”按钮。(2)修改数据库图 2-1-8删除数据库“项目管理器”简化了创建和修改文件的过程。用户只需选定要创建或修改的文件类型,然后单击“新建”或“修改”按钮,Visual FoxPro 6.0 将显示与所选文件类型相应的设计工具。如果要创建添加到“项目管理器”中的文件,可以先选定要创建的文件类型,然后单击“新建文件”按钮。

4、对于某些项,可以利用向导来创建文件。如果要修改文件,可以先选定一个已有的文件,然后单击“修改”按钮。例如,要修改一个表,先选定表的名称,然后单击“修改”按钮,该表便显示在“表设计器”中。(3)为文件添加说明创建或添加新的文件时,可以为文件加上说明。文件被选定时,其说明将显示在“项目管理器”的底部。如果要为文件添加说明,可以先在“项目管理器”中选定文件,然后单击“项目”菜单,在项目列表中单击“编辑说明”命令,在打开的“说明”对话框中键入该文件的说明,如图 2-1-9 所示,最后单击“确定”按钮。图 2-1-9添加说明3创建和管理数据库的相关命令(1)创建数据库CREATE DATABASE |?

5、其中,用于指定创建数据库的位置、文件名。如果不指定数据库名或者在命令后加“?”,则会打开“创建”对话框。(2)打开数据库OPEN DATABASE |?EXCLUSIVE|SHAREDNOUPDATE打开一个数据库,如果不指定文件名或者在命令后加“?”,则会打开“打开”对话框。EXCLUSIVE表示以独占的方式打开数据库;SHARED 表示以共享的方式打开数据库;NOUPDATE 表示不能对数据库进行任何修改。(3)修改数据库MODIFY DATABASE |?NOWAITNOEDIT打开数据库设计器,交互地修改当前数据库,如果不指定数据库名或者在命令后加“?”,则会打开“创建”对话框。NOW

6、AIT 表示在打开数据库设计器后继续程序的执行,不必等待数据库设计器关闭;NOEDIT 表示禁止修改数据库。(4)关闭数据库CLOSE DATABASES关闭当前的数据库和表,如果没有当前数据库,则关闭所有打开的自由表。(5)删除数据库DELETE DATABASE |?DELETETABLESRECYCLE从磁盘上删除数据库,如果不指定数据库名或者在命令后加“?”,则会打开“打开”对话框。DELETETABLES 表示从磁盘上删除包含在数据库中的表;RECYCLE 表示将删除的数据库放入回收站。(6)查看和设置数据库的属性DBGETPROP(cName,cType,cPcoperty)DBS

7、ETPROP(cName,Ctype,cProperty,eProperty Value)其中,cName 指定想要查看或设置属性的数据库、表、视图、字段或命名连接的名字;cType指定 cName 所代表的类型(是数据库、表、视图、字段还是命名连接);cProperty 指定想要查看或设置的属性;eProperty Value 指定想要设置的属性值。例如,下面的代码显示“工资”的版本号。?DBGETPROP(工资,database,version)2.2返回值表示 Visual FoxPro 6.0 中数据库(.dbc)的版本号,它是只读的。如果数据有注释,可用同样的函数查看:?DBGETP

8、ROP(工资,database,comment)与 version 属性不同,comment 属性即可读又可写。用 DBGETPROP()函数可以输入描述或其他要存储在数据库中的文本:?DBGETPROP(工资,database,comment,本数据库用于工资管理系统)【案例 4】创建“在职职工”表案例描述表是处理数据和建立关系型数据库及应用程序的基本单元。表的操作包括处理当前存储于表中的信息、定制已有的表或者创建自定义的表来存储数据。在 Visual FoxPro 6.0 中有两种表:数据库表和自由表。数据库表是数据库的一部分,而自由表是独立存在于任何数据库之外的。接下来以创建“在职职工”

9、表为基础新建表。相关知识如果把若干个表放入数据库,可减少冗余数据的存储,保护数据的完整性。表文件可以在数据库中创建,也可以单独创建之后再添加到数据库中。当然,也可以不把表文件添加到数据库中或将数据库中的表文件移出。根据表文件是否被添加到数据库中,将表分为两类:数据库表和自由表。1查看数据库中的表“项目管理器”使用类似于 Windows 的“资源管理器”的方法来组织和管理文件,以目录树的方式分层列出各类文件,在每类文件名的左边都有一个图标标识文件类型。如果某项前有加号标志,说明它还包含下一级内容,可以将其展开或折叠,以便查看不同层次中的详细内容。如果项目中具有一个以上某一类型的项,其类型符号旁边

10、会出现一个“ ”。单击该“ ”可以显示项目中该类型项的名称,单击项目旁边的“ ”可以看到该项的组件。例如,单击“员工”符号旁边的“ ”,可以看到项目中员工数据库中的表、本地视图、远程视图、连接和存储过程,如图 2-2-5 所示。(a)展开前2管理表的相关命令(1)创建表CREATE |?图 2-2-5查看数据库(b)展开后ADD生成一个新表。如果不指定文件名或者在命令后加“?”,则会打开“创建”对话框,提示为正在创建的表命名。(2)向数据库中添加表TABLE |?NAME 长表名向当前数据库中添加表。(3)从表中移去相应的数据库信息FREE TABALE 表名如果偶然从磁盘上删除了一个数据库,

11、该数据库中的表仍然保留着对该数据库的引用。使用该命令可以从一个表中删除对数据库的引用,然后就可以打开该表或者将该表添加到其他数据库中。注意,如果数据库还存在,不能使用该命令,那样会导致数据库不能使用。(4)将数据库中的表删除REMOVE TABLE 2.3将当前数据库中的表删除,一旦表被移出数据库长表名和长字段就不能被用于索引或者程序。【案例 5】定制“在职职工”表案例描述要创建表首先要创建该表的结构,然后才可以向表中输入数据信息。定制表需要注意三点,首先,字段的数据类型应与将要存储在其中的信息类型相匹配;其次,使字段的宽度足够容纳将要显示的信息内容;最后,为“数值型”或者“浮点型”字段设置正

12、确的小数点。接下来按照职工表的需要,为表设置字段类型并输入相应数据记录。相关知识1表的结构表文件由表结构和记录两部分组成,每行称为一条记录,每列称为一个字段,如图 2-3-12所示。表结构是表文件必不可少的部分;记录可多可少,没有记录只有表结构的表文件称为空表。表文件的扩展名为.dbf。图 2-3-12表的组成2表设计器的使用在字段中可以设计表文件的结构,包括字段名、字段类型、字段宽度和小数位数等属性。另外,还包括是否对该字段建立索引、该字段是否可以包含空值的选项。在“表设计器”对话框中包括字段、索引和表 3 张选项卡,默认打开的是“字段”选项卡。通过单击“类型”下拉列表可选择所需类型,如图

13、2-3-13 所示。图 2-3-13“字段”选项卡字段名是一种字段变量,它以字母或汉字开头,后面可以用字母、数字、汉字和下画线等符号。字段名总长度不超过 10 个字符,不能用空格。字段类型指定了数据的类型,字段宽度指定了被存储数据的最大长度。有些字段的宽度可由用户按需要设定,有些则由系统默认指定。各种字段类型及其相应宽度如表 2-3-2 所示。只有将字段类型设置为数值型、浮点型、双精度型才需要设置小数点位数。小数位数一列才为可用状态。索引是一种逻辑排序方式,如果希望输出记录时按照某个字段的升序或降序,可以单击“索引”的下拉箭头,选择排序方式。控制在数据库中有特殊的作用,他既不是“0”和“空格”

14、,也不是空字符串,他等同于没有任何值,控制可以作为某些函数的判断依据,但主关键字段不允许有空值。3管理数据的相关命令(1)打开表USE EXCLUSIVE|SHARED打开一个表,EXCLUSIVE 表示以独占的方式打开表;SHARED 表示以共享的方式打开表。如果不加表名执行 USE 命令,并且现在工作区中已打开了一个文件,表示关闭表。(2)浏览表BROWSE FIELDS字段列表打开浏览窗口,显示当前或选定表的记录,选择了 FIELDS 可以选择表中的字段。(3)追加记录APPENDBLANK在表的末尾添加一个或者多个新记录,如果选择了 BLANK,表示在当前表的末尾添加一个空记录。(4)

15、删除记录DELETE SCOPEFOR 1Expressionl2.4给要删除的记录做标记,默认的范围是当前记录。其中 FOR 语句表示指定满足逻辑条件的记录,在“命令”窗口中继续输入如下命令:PACK从当前表中永久删除标有删除标记的记录。【案例 6】修改“工资”表的结构案例描述输入了工资记录后,可以在 Visual FoxPro 6.0 中查看和编辑表中的数据,当打开表后,会在系统菜单中增加“表”菜单,利用该菜单,可以方便地进行表中的数据编辑和处理。用户还可以按照不同的需求定制“浏览”窗口,可以进行重新安排列的位置、改变显示格式、设置验证信息等相关操作。接下来按照工资表的浏览需要,修改表的结

16、构及显示的方式。相关知识1设置显示方式(1)调整字段的显示大小在浏览表时,可以重新安排“浏览”窗口中的列,使它们按照需要的顺序进行排列,这种排列并不影响表的实际结构。也可以在“浏览”窗口中改变列的宽度,这种尺寸调整只改变显示格式,不会影响到字段的长度或表的结构。还可以拆分“浏览”窗口,很方便地查看同一表中的两个不同区域,或者同时在“浏览”和“编辑”方式下查看同一记录。将鼠标指针指向两个字段之间的结合点,拖动鼠标可调整行、列的宽度和高度。调整列的宽度如图 2-4-17 所示。图 2-4-17调整表中列的显示格式(2)取消网格线的显示单击“显示”“网格线”菜单命令,使该命令项前面没有“ ”显示,这

17、样就取消了网格线的显示,如图 2-4-18 所示。图 2-4-18取消网格线显示的表(3)拆分编辑窗口显示将鼠标指针指向拆分条,向左或向右拖动拆分条,可改变窗格的相对大小,如图 2-4-19 所示。如果窗口比较小,可以调整窗口的大小。图 2-4-19使用拆分条拆分窗口2设置显示格式对字段设置显示格式只能对数据库表进行,此时在“表设计器”中,可以看到一个“显示”区域,其中包含三个内容,即“格式”、“输入掩码”和“标题”。(1)设置格式用户可以对显示格式进行设置,设置格式实质上是对字段的显示定义了一个输入掩码,它决定了字段在表单、“浏览”窗口或报表中的显示风格。如果要提供格式,可以在“表设计器”“

18、显示”区的“格式”框中键入掩码。表 2-4-1 中列出了一些常用的掩码。(2)设置输入掩码指定输入掩码就是定义字段中的值必须遵守的标点、空格和其他格式要求。这样字段中的值就有了统一的风格,从而可以减少数据输入错误,提高输入效率。改变输入掩码的设置会影响新数据的输入但不影响现存数据。如要提供输入掩码,可在“表设计器”“显示”区中输入掩码,或者用 DBSETPROP()函数设置InputMask 属性。表 2-4-2 定义了一些常用的输入掩码。(3)设置标题可以为数据库表中的每个字段创建一个标题。Visual FoxPro 6.0 将显示字段的标题文字,并以此作为该字段在“浏览”窗口中的列标题(缺

19、省时列标题显示为字段名)以及表格中的默认标题名称。3设置验证规则表设计器的“表”选项卡中还有一个区是“字段有效性”区,在这个区内可以对字段的验证规则、验证信息和默认值进行设置。(1)有效性规则介绍为控制输入到数据库表字段和记录中的数据,可以创建字段级和记录级规则,为数据的输入实施规则,这些规则称为有效性规则。字段级和记录级规则将把所输入的值与所定义的规则表达式进行比较,如果输入的值不满足规则要求,则拒绝该值。有效性规则只在数据库表中存在。字段级和记录级规则能够控制输入到表中的信息类型,而不管数据是通过“浏览”窗口、表单,还是使用语言以编程方式来访问。如果从数据库中移去或删除一个表,则所有属于该

20、表的字段级和记录级规则都会从数据库中删除。这是因为规则存储在扩展名为.dbc 的文件中,而从数据库移去表会破坏扩展名为.dbf 文件与.dbc 文件之间的链接。但是,由被移去或删除的规则引用的存储过程不会被删除。它们不会自动移去,因为保留在数据库中的其他表规则还在使用它们。(2)设置字段级验证规则可以使用字段级有效性规则来控制用户输入到字段中的信息类型,或检查一个独立于此记录其他字段值的字段数据。(3)表达式生成器对话框使用表达式生成器来生成验证表达式。表达式生成器允许创建并编辑表达式。一个表达式可以简单得像一个字段名,也可以像一个包括 IF()函数、级连和数据类型转换的计算一样复杂。表达式生

21、成器的主要目标是通过提供方法中每一步骤的合适选项的列表使创建表达式更容易,它为用户提供了许多有用的工具,用户可以从函数去选择各种字符串、数学、逻辑和日期函数,可以从字段列表中选择所有打开表中的字段,也可以从变量区中选择内存变量。用户可以直接在上方的“有效性规则”文本框中输入一个表达式,也可以借助生成器提供的各种工具进行选择。(4)设置字段验证信息设置了字段的验证规则之后浏览该表,如果改动了某条记录中学号的长度,使它不为 6,或者在新添的记录中输入一个学号长度不为 6 的记录,则会在试图离开该字段时出错,打开警告对话框提示出错,并要求继续对该字段进行编辑,直到正确为止。从警告框里我们可以知道违反

22、了字段的有效性规则,但具体错在什么地方却不是很清楚。为了得到明确的信息提示,可以通过给字段添加有效性文本,来定制当违反规则时要显示的提示信息。用户所输入的文本将代替默认的错误信息并显示出来。2.5【案例 7】管理表的相关操作案例描述有时候表中的记录比较多而且排列没有什么规律,使得查找所需要的内容要花费很多时间,如果能按照特定的顺序定位、查看或者操作表中的记录,可以让管理更方便。用户可以在表中设置一个过滤器来定制表,有选择地显示某些记录。还可以通过设置字段过滤器,对表中的某些字段的访问进行限制,这样也可以有选择地显示需要的记录信息。用户还可以创建索引,利用其快速显示、查询或者打印记录;可以选择记

23、录,控制重复字段的输入并支持表间的关系操作。接下来按照常用的管理方式,完成删除、筛选、排序等操作。相关知识1筛选在查看表中数据时,如果只想查看某一类型的记录,可以通过设置过滤器对“浏览”窗口中显示的记录进行显示限制。在某些情况下,例如只想查看工资高于某一数值的人员,或者生日在某段时间内的职员,筛选就显得非常有用。首先要在表中建立过滤器,浏览要创建筛选的表,再单击“表”“属性”菜单命令,打开“工作区属性”对话框,可以直接在“数据过滤器”文本框内输入筛选表达式。或者单击“数据过滤器”文本框右侧的 按钮,在“表达式生成器”中创建一个表达式来选择要查看的记录,最后单击“确定”按钮。再次浏览该表时,则只

24、显示经筛选表达式筛选过的记录。2限制访问在表单中浏览或使用表时,若只显示某些字段,可以设置字段筛选来限制对某些字段的访问。选出要显示的字段后,剩下的字段就不可访问了。首先要建立字段筛选,浏览要限制访问的表,再单击“表”“属性”菜单命令,打开“工作区属性”对话框,在“允许访问”区内,选中“字段筛选指定的字段”单选按钮,然后单击“字段筛选”按钮,打开“字段选择器”对话框,将所需字段移入“选定字段”栏,最后单击“确定”按钮。再次浏览表时,只有在“字段筛选”中选定的字段被显示出来。3索引利用索引,不仅可以将数据排序,而且可以提高查询的速度。在 Visual FoxPro 6.0 中可以为一个表建立多个

25、索引,每一索引代表一种处理记录的顺序。索引保存在一个结构复合索引文件中,在使用表时,该文件被打开并更新。复合结构索引文件名与相关的表同名,扩展名为.cdx。索引文件是由指针构成的文件,这些指针逻辑上按照索引关键字的值进行排序。索引文件和表的.dbf 文件分别存储,并且不改变表中记录的物理顺序。实际上,创建索引是创建一个由指向.dbf 文件记录的指针构成的文件。索引关键字(IndexKey)用来作为建立索引的标准。记录出现的顺序是由索引关键字的“大小”决定的。索引关键字通常是一个字段或字段表达式,表达式中可以出现函数、内存变量等。使用表达式时,将根据计算结果排序。索引标识(Tag)是索引关键字的

26、名称。索引标识可以与字段同名,也可自己指定,但必须以字母、汉字或下画线开头,并且长度不能超过 10 字节。独立索引文件扩展名为.idx,其中只包含一个索引关键字,并且各文件相互独立。独立索引不需要索引标识,而直接使用索引文件名。4索引文件的类型按照索引的方式不同,在 Visual FoxPro 6.0 中有四种类型的索引方式。(1)主索引此类型索引仅用于数据库中的表,而且每个表文件只能有一个主索引。主索引的字段的值应该具有唯一性,即组成索引的字段或者表达式在表中不允许有两条以上的记录具有相同的值。主索引可确保字段中输入值的唯一性并决定了处理记录的顺序,如果某个表已经有了一个主索引,可以继续添加

27、候选索引。(2)候选索引此类型索引可用于数据库中的表和自由表,每个表可以建立多个候选索引。它像主索引一样要求字段值的唯一性并决定了处理记录的顺序。(3)普通索引此类型索引可用于数据库中的表和自由表,在一个表中可以加入多个普通索引。它可以决定记录的处理顺序,但是允许字段中出现重复值。(4)唯一索引为了保持同早期版本的兼容性,还可以建立一个唯一索引,以指定字段的首次出现值为基础,选定一组记录,并对记录进行排序。除了这四种用于字段的索引类型外,还有一种叫做“结构复合索引”,此类型索引可用于数据库中的表和自由表,每次表打开时自动打开,而且在表修改时自动更新。一个结构复合索引文件通常与表具有同样的文件名

28、,但扩展名为.cdx。nExpr、5管理操作的相关命令(1)移动记录指针SKIP nRceords使记录指针在表中相对当前位置向前移动或者向后移动。其中 nRecords 代表记录指针需要移动的记录数。如果是正数,表示向文件尾移动;如果是负数,表示向文件头移动。GOTO TOP|BOTTOM|RECORDnRecordNumber将记录指针移动到指定位置。其中 TOP 代表将记录指针定位到表的第一个记录上,BOTTOM代表将记录指针定位到表的最后一个记录上,RECORD nRecordNumber 代表指定一个物理记录号,对该记录进行操作。(2)命令的作用范围在命令的说明中,经常用 Scope

29、 代表命令的作用范围,该范围可以有 ALL、NEXTRECORDnNumber、REST 四个子句: NEXT ALL:全部,对表或视图中的全部记录起作用。nExpr:后续的记录数,对某一范围的记录起作用,作用范围从当前记录开始,持续指定数目的记录。键入 1 将只对当前记录起作用。 RECORDnNumber:记录号,对指定记录号的记录起作用。 REST:其余,对某一范围的记录起作用,作用范围从当前记录开始,到表的最后一条记录为止。(3)删除记录DELETE ScopeFOR|Expression1给删除的记录做标记,并未删除,默认的范围是当前记录。其中 FOR 子句指定满足逻辑条件的记录。P

30、ACK从当前表中永久删除标有删除标记的记录TO(4)筛选记录SET或者FIELDS ON|OFFSETFIELDSFieldName1, FieldName2 |ALLLIKE Skeleton| EXCEPTSkeleton筛选字段在数据库的标准操作中叫做投影。指定可以访问表中的哪些字段。ON 表示指定只能访问出现在字段列表中的字段;OFF 表示指定可以访问表中的所有字段。TO FieldName1 ,FieldName2 .表示指定当前表中可访问的字段的名称;ALL 表示允许访问表中的所有字段;ALL LIKE Skeleton | EXCEPT Skeleton表示可以单独或组合使用 L

31、IKE 和 EXCEPT 子句,有选择地访问字段。如果使用 LIKE Skeleton,可以访问与 Skeleton 相匹配的字段,如果使用 EXCEPTSkeleton,可以访问不与 Skeleton 相匹配的字段。在 Skeleton 中可以支持*和?通配符。(5)选择记录SET FILTER TO lExpression选择记录在数据库的标准操作中也叫做选择。指定访问当前表中记录时必须满足的条件。其中的 lExpression 是指定的记录必须满足的条件。如果使用了该命令,表中只有满足指定条件的记录才能被访问。如果使用不带 lExpression 的 SET FILTER TO,表示关闭

32、当前表的选择器。(6)建立索引INDEX ON eExpressionTO IDXFileName|TAG TagName OF CDXFileNameCOMPACTASCENDING|DESCENDINGUNIQUE|CANDIDATEADDITIVE创建一个索引文件,利用该文件可以按某种逻辑顺序显示和访问表记录。其中的参数代表的功能如下: eExpression:代表指定一个索引表达式,该表达式中可以包含当前表中的字段名。在索引文件中,按索引表达式给每个表记录都创建一个索引关键字,Visual FoxPro 6.0 使用这些关键字来显示和访问表中的记录。 TO IDXFileName:创建

33、 IDX 索引文件。 TAG TagName OF CDXFileName:创建一个复合索引文件。复合索引文件是一种可包含任意数量的独立标识的单个索引文件,每个标识都由其唯一标识名确定。 COMPACT:表示创建一个压缩的 IDX 文件。 ASCENDING:表示指定 CDX 文件为升序 DESCENDING:表示指定 CDX 文件为降序。 UNIQUE:对于一个索引关键字值,只有第一个满足该值得记录包含在 IDX 文件或 CDX 的标识中。利用这个子句可以避免显示或访问记录的重复值。 CANDIDATE:创建候选结构索引标识。 ADDITIVE:所有先前已打开的索引文件保持打开状态。(7)设

34、置排序在建立了索引的表上,可以依据索引进行排序。当需要使用索引对表进行排序时,需要指定表的主索引文件。SET ORDER TO TAG TagName OF CDXFileName ASCENDING|DESCENDING一个表可以同时打开多个索引文件,但是只有一个单索引文件或一个来自复合索引文件的索引标识决定表中记录的显示和访问顺序。使用该命令来指定主索引文件或标识。其中的TAGTagNameOF CDXFileName 是 指 定 CDX 索 引 中 的 一 个 标 识 作 为 主 控 索 引 标 识 。 ASCENDING|DESCENDING 表示以升序或降序显示或访问表记录。如果使用

35、 SET ORDER TO 命令不带任何参数,表示不使用任何索引。另外,Visual FoxPro 6.0 还提供了一条物理排序命令,该命令可以生成按照要求排好序的新表。该命令的格式如下:SORT TO TableNameON FieldName1/A|/D/C, FieldName2/A | /D/C ASCENDING|DESCENDINGScope FOR lExpression1对当前选定的表进行排序,并将排过序的记录输出到新表中。其中的参数代表的功能如下: TableName:存放经过排序的记录的新表名,Visual FoxPro 6.0 中文件扩展名为.dbf。 ON FieldN

36、ame1:在当前选定的、要排序的表中指定字段,字段的内容和数据类型决定了记录在新表中的顺序。默认情况时按升序排序,不能对备注或通用字段排序。 /A | /D /C:对于排序中包含的每个字段,可以指定排序顺序。/A 为字段指定了升序。/D 指定了降序。/C 表示忽略大小写,默认情况下区分大小写。2.6【案例 8】管理表之间的关系案例描述由于一个表中不可能包含所要使用的所有数据,因此在很多时候,我们必须打开多个表。而对于每个表,都是在它自己的工作区里打开的,要访问多个表,就必须使用多个工作区。多个表中的数据整合在一起描述数据库的内容,因此表之间的关联关系是非常重要的,需要具有数据联动性。接下来按照

37、表的内容,完成表关系的创建和管理等操作。相关知识1表的相关概念(1)工作区工作区是一个编号区域,它标识一个已打开的表,Visual FoxPro 6.0 中一共可以在 32 767个工作区中打开和操作表。在应用程序中,工作区通过使用该工作区的表的别名来识别。表别名是一个名称,它可以引用在工作区中打开的表。(2)数据工作期单击“窗口”“数据工作区”菜单命令,打开“数据工作区”对话框,可查看在一个 VisualFoxPro 6.0 工作期中打开的表的列表,并显示在当前数据工作期中打开表的工作区别名,如图2-6-17 所示。一个数据工作期是指表单、表单集或报表使用的当前状态工作环境。每个数据工作期包

38、含了它自己的一组工作区,这些工作区包括在工作区中打开的表、表索引以及表之间的关系。VisualFoxPro 6.0 可以通过数据工作期自动为表单或表单集的每个实例提供一个独立的环境。图 2-6-17“数据工作期”对话框(3)关键字表之间创建关系之前,想要关联的表需要有一些公共的字段和索引。这样的字段称为主关键字字段和外部关键字字段。主关键字字段标识了表中的特定记录。外部关键字字段标识了存于数据库里其他表中的相关记录。还需要对主关键字字段做一个主索引,对外部关键字字段做普通索引。为准备两个关系表中的主表,需要在主表中添加主关键字字段。如果要在两个表之间提供公共字段,需要在带有关联记录的表中添加外

39、部关键字字段。外部关键字字段必须以相同的数据类型与主关键字字段相匹配,而且一般用相同的名称。以主关键字字段和外部关键字字段创建的索引必须带有相同的表达式。 主关键字:表中的一列或多列,其中的值唯一地标识了表中的一行。 外部关键字:一列或多列的组合,列中的值需要与另一个表中的主关键字相匹配。用于连接相关表。(4)完整性约束对于数据库中的表,只在表的内部建立完整性约束不能完全保证数据的正确。数据库中的表需要根据表之间的关系,建立表之间的完整性约束。在 Visual FoxPro 6.0 中,该约束表现在参照完整性上。参照完整性是控制数据一致性,尤其是不同表的主关键字和外部关键字之间关系的规则。Vi

40、sual FoxPro 6.0 使用用户自定义的字段级和记录级规则完成参照完整性规则。“参照完整性生成器”可以建立规则,控制记录如何在相关表中被插入、更新或删除。2表间的关联关系通过链接不同表的索引,“数据库设计器”可以很方便地建立表之间的关系。因为这种在数据库中建立的关系被作为数据库的一部分保存了起来,所以称为永久关系。设置关系应当做如下操作:(1)创建索引字段首先决定哪个表中包含有主记录,哪个表中包含有关联记录;然后对有主记录的表,添加一个字段,再对该字段添加一个主索引;最后对包含有关联记录的表,添加一个与主记录表中关键字匹配的字段,再对该新字段添加一个普通索引。定义完关键字段和索引后,即

41、可创建关系。(2)建立关联关系在表间建立关系,可以将一个表的索引拖到另一个表的匹配的索引上。设置完关系之后,在数据库设计器中可看到一条连接了两表的线。只有在“数据库属性”对话框中的“关系”选项打开时,才能看到这些表示关系的连线。(3)修改关联关系在数据库中存在的表关系,称为永久关系,这种关系不仅在运行时存在,而且一直保留。双击表间的关系线,或右击关系线在快捷菜单中选择“编辑关系”命令,都可以打开“编辑关系”对话框,然后进行适当设置。3参照完整性生成器建立关系后,也可设置管理数据库关联记录的规则。这些规则控制参照完整性。“参照完整性生成器”可以建立规则,控制记录如何在相关表中被插入、更新或删除。

42、(1)设置触发器规则“参照完整性生成器”帮助设置触发器,用来控制如何在相关表中插入、更新或者删除记录,确保参照完整性,在“生成器”选项卡中包括三种规则。 更新规则:指定修改父表中关键字(key)值时所用的规则。 删除规则:指定删除父表中的记录时所用的规则。 插入规则:指定在子表中插入新的记录或更新已存在的记录时所用的规则。(2)生成参照完整性代码使用“参照完整性生成器”,可以在“数据库设计器”中建立、管理两表之间的关系,设置子表和父表之间的更新、删除或插入记录时所遵循的若干规则,并生成相应的“参照完整性”代码。4触发器设置参照完整性时会设置触发器,触发器是一个在输入、删除或更新表中的记录时被激

43、活的表达式。通常,触发器一般需要输入一个程序或存储过程,在修改表时,它们被激活。(1)触发器工作方式触发器是绑定在表上的表达式,当表中的任何记录被指定的操作命令修改时,触发器被激活。当数据修改时,触发器可执行数据库应用程序要求的任何副操作。例如,可以使用触发器记录对数据库的修改,实施参照完整性。触发器作为特定表的属性来创建和存储。如果从数据库中移去一个表,则同时删除和该表相关联的触发器。触发器在进行了其他所有检查之后,例如有效性规则、主关键字的实施以及 null值的实施后被激活。与字段级规则和记录级规则不同,触发器不对缓冲数据起作用。(2)触发器事件创建触发器可以使用“表设计器”或 CREAT

44、E TRIGGER 命令来创建触发器。对于每个表,可为下面三个事件各创建一个触发器:插入、更新及删除。在任何情况下,一个表最多只能有三个触发器。触发器必须返回“真”(.T.) 或“假”(.F.)。可以在“表设计器”中的“表”选项卡、里,在“插入触发器”“更新触发器”或“删除触发器”框中,输入触发器表达式或包含触发器表达式的存储过程名。删除触发器可以在界面中删除触发器或使用 DELETE TRIGGER 命令从数据库表中删除触发器。可以按以下方法删除触发器:在“表设计器”的“表”选项卡的“触发器”区中,从“插入触发器”、“更新触发器”或“删除触发器”框里选定触发器表达式,并删除它。5存储过程在 Visual FoxPro 6.0 中,存储过程是保存在数据库中的一个过程。该过程能包含一个用户自定义函数中的任何命令和函数。在一个远程数据源上,存储过程是保存在任何 SQL 数据库中一个名称下的 SQL 语句集合。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com