第五章 数据库操作1.ppt_第1页
第五章 数据库操作1.ppt_第2页
第五章 数据库操作1.ppt_第3页
第五章 数据库操作1.ppt_第4页
第五章 数据库操作1.ppt_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VisualFoxPro程序设计我的计算机,我做主,2,第5章数据库操作,一.我们学习VFP的目的是什么?,我们学习VFP的目的就是用VFP做软件。软件公司开发一个软件就是做一个项目,这相当于建筑公司盖一座楼就是做一个工程。,5.1为什么引入项目,二.一个项目就是一个应用程序包含的所有文件的关系的集合,在VFP中,一个应用程序通常包含多个文件。例如,包括表、数据库、程序、查询、视图、表单、菜单、报表、标签等。但是,这些文件彼此独立、可以存放在不同的文件夹里,既难于管理,又不便于维护。为了解决这个问题,VFP引入项目的概念,项目就是将一个应用程序包含的所有文件关联成一个有机的整体,形成一个项目文件。,3,一.项目的保存,当我们保存一个项目时,通常就会产生如下两个文件:(1)项目文件:扩展名为.PJX(2)项目备注文件:扩展名为.PJT,5.2项目的保存和编辑,二.项目的编辑项目管理器,(1)在VFP中,编辑项目的平台是项目管理器。(2)要打开项目,首先自动打开项目管理器,然后项目在项目管理器中打开。(3)项目管理器是组织数据和对象的可视化操作工具。(4)项目管理器将项目文件中关联的所有文件根据其文件类型放置在不同的选项卡中,并采用图示和树形结构的方式组织和显示这些文件,针对不同类型的文件提供不同的操作。(5)通过项目管理器可以为项目文件“添加”或“移去”关联对象。,4,5.3项目的建立,1、建立项目的菜单法,在VFP的菜单栏,2、建立项目的命令法,3、建立项目的向导法,建立一个项目通常有以下两种途径:(1)仅仅建立一个项目文件,用来分类管理其他项目文件项目管理器。(菜单法、命令法)(2)使用应用程序向导生成一个项目和一个VFP应用程序框架应用程序生成器。(向导法),单击“文件”菜单,单击“新建”命令项(Ctrl+N),选择“项目”文件类型,单击“新建文件”按钮,出现“创建”对话框,首先输入“项目文件名”然后单击“保存”命令按钮,在VFP的命令窗口,首先输入建立项目的命令:Createproject项目文件名,然后敲回车键“Enter”,在VFP的菜单栏,单击“文件”菜单,单击“新建”命令项(Ctrl+N),选择“项目”文件类型,单击“向导”按钮,出现“应用程序向导”对话框,首先输入“项目文件名”然后单击“确定”命令按钮,说明:(1)项目文件名可以缺省。如果建立项目的命令中缺省项目文件名,则打开“创建”对话框。(2)项目文件名可以用?代替。如果项目文件名用问号?代替,则打开“创建”对话框。,出现“项目管理器”,出现“项目管理器”,出现“应用程序生成器”,5,5.4项目的打开与关闭,1、打开和关闭的概念,(1)打开项目打开项目就是将外存中的项目文件调到内存,并将该项目文件显示在项目管理器中。,2、打开项目的操作步骤,3、关闭项目的操作步骤,在VFP的文件菜单或工具栏中,单击“打开”命令,出现一个“打开”对话框,在项目管理器的标题栏的最右侧,单击“关闭”按钮则项目管理器自动消失。,首先选择要打开的“项目文件”然后单击“确定”,(2)关闭项目关闭项目就是将内存中的项目文件清除掉。对于非空项目文件,关闭时会自动保存。对于空项目文件,关闭时VFP会弹出一个信息提示对话框,若单击“删除”按钮,则系统将从外存中删除该空项目文件。若单击“保持”按钮,则系统将保存该空项目文件。,弹出“项目管理器”,方法1菜单法打开项目,方法2命令法打开项目,在VFP的命令窗口,首先输入建立项目的命令:modifyproject项目文件名,然后敲回车键“Enter”,出现“项目管理器”,6,5.5项目管理器的界面,1、项目管理器的界面通常由以下五部分组成:(1)标题栏:在项目管理器的最顶端。(2)六个选项卡:全部、数据、文档、类、代码、其他。(3)工作区:以树状文件夹形式分类显示各种文件。(4)六个命令按钮:新建、添加、修改、浏览、移去、连编。(5)状态栏:显示对象的说明、路径等。2、项目管理器中有些选项的前面带有“+”号或“-”号的方框(1)带“+”号方框的选项:表示该选项中还有一个或多个子项(2)带“-”号方框的选项:表示该选项中没有子项。(3)单击“+”号方框是展开该选项,单击“-”号是折叠该选项。,3、项目管理器中共有以下六个选项卡(1)“数据”选项卡,“数据”选项卡用于显示和管理:数据库、自由表、查询三类文件,(2)“文档”选项卡,“文档”选项卡用于显示和管理:表单、报表、标签三类文件。,(3)“类”选项卡,“类”选项卡用于显示和管理:所有的类库文件。,(4)“代码”选项卡,“代码”选项卡用于显示和管理:程序、API库、应用程序三种类型文件。,(5)“其他”选项卡,“其他”选项卡用于显示和管理:菜单、文本文件、位图文件、图标文件等多种文件。,(6)“全部”选项卡,“全部”选项卡用于显示和管理以上所有类型的文件。,4、项目管理器中共有以下六个命令按钮(1)“新建”命令按钮:创建一个新文件或对象,建立的文件会自动包含在项目中。(2)“添加”命令按钮:把一个已存在的文件添加到项目。(3)“修改”命令按钮:在设计器中打开待修改的文件。(4)“浏览”命令按钮:在浏览窗口中打开指定的表。(5)“移去”命令按钮:从项目中移去选定的文件或对象。(6)“连编”命令按钮:连编一个项目或一个应用程序。,7,5.6项目管理器的使用,一、创建文件,1、创建文件的步骤(1)在项目的工作区中选定要创建的文件类型。(2)单击项目管理器中的“创建”命令按钮或项目菜单中的“新建文件”命令项。2、创建文件的说明(1)单击“新建”按钮或选择“新建文件”命令以后,系统将根据选择的文件类型打开相应的设计器。(2)在项目中创建的文件将自动地包含在该项目中。但使用“文件”菜单中的“新建”命令创建的文件不属于任何项目文件。,二、添加文件,三、修改文件,1、添加文件的步骤(1)在项目的工作区中选定要添加的文件类型。(2)单击项目管理器中“添加”命令按钮或项目菜单中的“添加文件”命令项。(3)在“打开”对话框中选定要添加的文件。(4)单击“确定”按钮,则系统将选定的文件添加到该项目中。2、添加文件的说明说某个项目包含某个文件,其实质是该文件与项目建立了一种关联。这样可以使一个文件可以包含在多个项目中。,1、修改文件的步骤(1)在项目的工作区中选定要修改的文件。(2)单击项目管理器中“修改”命令按钮或项目菜单中的“修改文件”命令项。则系统打开相应的设计器。(3)在设计器中修改选定的文件。2、修改文件的说明如果被修改的文件包含在多个项目文件中,那么对一个项目文件中的文件的修改结果对于其他的项目文件也是有效的。,8,5.6项目管理器的使用,四、移去文件,1、移去文件的步骤(1)在项目的工作区中选定要移去的文件。(2)单击项目管理器中的“移去”命令按钮或项目菜单中的“移去文件”命令项。系统将显示移去文件信息。(3)做出移去或移去并删除选择。2、移去文件的说明移去文件有两种选择。(1)单击“移去”按钮,系统仅仅从项目中移去所选择的文件,但被移去的文件仍存在于原目录中。(2)单击“删除”按钮,系统不仅从项目中移去文件,还将从磁盘中删除该文件,文件将不复存在。,五、设置主文件,六、运行程序,1、设置主文件的步骤(1)在项目的工作区中选定要设置为主文件的文件。(2)单击鼠标右键,在弹出的快捷菜单中选择“设置主文件”命令项。或者从项目菜单中选择“设置主文件”命令项。(3)主文件在项目中以黑体显示。2、设置主文件的说明(1)一个项目必须指定一个主文件。主文件是应用程序的执行起始点。菜单、表单、查询、源程序等都可以设置为应用程序的主文件。(2)VFP会默认的指定一个主文件,如果默认指定的主文件不符合要求,则可以手工设置主文件。,1、运行文件的步骤(1)在项目的工作区中选定要运行的文件。(2)单击项目管理器中“运行”命令按钮或项目菜单中的“运行文件”命令项。则系统会运行选择的文件。2、运行文件的说明可以独立运行的文件有:(1)命令文件(程序文件)(2)查询(3)表单(4)菜单(5),9,5.7项目管理器的定制,1、项目管理器的移动将鼠标指针放置在窗口的标题栏上并拖动鼠标指针即可移去项目管理器。2、项目管理器的缩放将鼠标指针指向项目管理器窗口的顶端、底端、两边或四个角上,鼠标变成箭头状,拖动鼠标便可以扩大或缩小项目管理器的大小尺寸。,1、项目管理器的折叠项目管理器的右上角有一个带向上箭头的【】折叠按钮。单击折叠按钮可隐去全部选项卡,只剩下项目管理器和选项卡的标题,与此同时,折叠按钮上的向上箭头也改为向下,变为展开按钮【】。2、项目管理器的展开项目管理器的右上角有一个带向下箭头的【】展开按钮。单击展开按钮【】可以展开项目管理器的全部的选项卡,与此同时,展开按钮上的向下箭头也改为向上,变为折叠按钮【】。,1、拆分项目管理器的概念折叠项目管理器窗口后,可以进一步拆分项目管理器,使其中的选项卡成为独立、浮动的窗口,可以根据需要重新安排它们的位置。2、拆分项目管理器的步骤(1)折叠项目管理器。(2)选定要拆分的选项卡并按住鼠标左键拖曳(3)拖曳选定的选项卡到达目的地后释放鼠标左键即可。3、还原项目管理器的方法(1)可以单击选项卡上的“关闭”按钮。(2)也可以用鼠标将拆分的选项卡拖曳回项目管理器窗口中。,1、移动与缩放,2、折叠与展开,3、拆分与还原,4、顶层显示与停放,1、选项卡顶层显示的设置对于从项目管理器窗口中拆分出的选项卡,单击选项卡上的图钉图标,可以钉住该选项卡,将其设置为始终显示在屏幕的最顶层,不会被其他窗口遮挡。2、选项卡顶层显示的取消再次单击图钉图标便取消其“顶层显示”设置。3、停放项目管理器将项目管理器拖到VFP主窗口的顶部就可以使它像工具栏一样显示在主窗口的顶部。停放后的项目管理器变成了窗口工具栏区域的一部分,不能将其整个展开,但是可以单击每个选项卡来进行相应的操作。对于停放的项目管理器,同样可以从中拖开选项卡。,10,第5章数据库,一.用VFP做软件的目的是什么?,我们用VFP做软件的目的就是处理数据。如果处理的数据量比较小(例如,计算圆面积、计算等差数列的前n项和等),那么在这种情况下,我们不需要任何辅助工具,直接用程序就可以比较好的处理这些数据。但是,如果数据量比较大(例如,要处理陕西省几十万考生的考试成绩和个人信息),那么在这种情况下,我们必须预先做好数据库,在数据库的辅助下,用程序也能比较好地处理这些数据。,5.1为什么引入数据库,二.如何理解数据库,一个程序可以看做一个销售中心,待销售的货物可以看作为待处理的数据。(1)当货物比较少时,例如只有几十件或上百种,就可以以地摊的形式销售,不需要商店,不需要仓库。这就像用程序计算圆面积这样数据量比较少的问题,不需要自由表,不需要数据库。(2)当货物比较多时,例如有几百种或几千种,就必须以商店的形式销售,但可以没有仓库。这就像用程序处理一个县区考生这样数据量比较多的问题,需要自由表,但可以不需要数据库。(3)当货物非常多时,例如有几万种或几十万种,就必须以超市的形式销售,这时必须有仓库。这就像用程序处理一个省考生这样数据量非常多的问题,这时必须用数据库辅助。,11,第5章数据库,一.数据库设计的概念,数据库的设计分为概念设计与逻辑设计。概念设计又称为模式设计,其视图设计可以有自顶向下,由底向上、由内而外。,5.2数据库的设计,二.数据库设计的方法步骤,1、数据库的需求分析了解要处理的信息内容或结果要求IO结构。(1)需要处理的原始数据是哪些?(2)需要获得的结果数据是哪些?(3)描述需求分析的工具有结构图和UML,2、数据库的概念设计反映待处理事物间的联系,得到概念模型(1)需要哪些表?(2)每个表都有哪些属性?(3)所有表之间的对应关系分别是什么?(4)描述概念设计的工具是E-R图和UML,3、数据库的逻辑设计了解数据的字段属性,得表结构数据模型(1)表的各字段的数据类型、数据宽度、可否空(2)表的实体有效性、字段有效性、记录有效性(3)表的操作触发器、表的参照完整性。(4)描述表结构的工具是表格,4、数据库的物理设计了解基本的原始数据,得表记录数据源(1)确定输入数据的掩码格式(2)确定输出数据的规范格式(3)确定向表中输入的基本原始数据有哪些?(4)描述表记录的工具是表格,5、数据库的建立实现6、数据库的运行和维护,12,第5章数据库,一.数据库的概念,在VFP中,数据库是一个管理数据库对象的系统文件,它将关联的数据库表、视图、连接、存储过程等数据库对象从逻辑上进行统一的组织和管理。,5.3数据库的保存和编辑,三.数据库的编辑数据库设计器,(1)在VFP中,编辑数据库的平台是数据库设计器。(2)要编辑数据库,必须在数据库设计器中打开数据库。(3)数据库设计器是组织数据库中表、视图、连接、存储过程等的可视化操作工具。(4)通过数据库设计器可以为数据库文件“添加”或“移去”关联的表。,二.数据库的保存,当我们保存一个数据库时,通常就会产生如下三个文件:(1)数据库文件:扩展名为.DBC(2)数据库备注文件:扩展名为.DCT(3)数据库索引文件:扩展名为.DCX,13,第5章数据库,1.建立,在内存建立一个空的对象,并在编辑器里打开该对象。,5.4操作VFP对象的一些概念,2.保存,将内存中的对象存储在(写到)外存储器上称作为保存。,3.添加,在一个对象里登记另一个对象的关联信息,在这两个对象之间建立关联关系。,4.移去,把登记的该对象的关联信息清除掉,即取消两个对象之间的关联关系。,5.打开,把该对象从外存调到内存称作为打开。,6.修改或编辑,在编辑器里打开内存中的对象,或者在编辑器里打开外存中的对象都称作修改或编辑。,7.显示或输出,以只读方式显示该对象的内容或结果。,8.关闭,把该对象从内存中清除掉。,9.删除,把该对象从外存中清除到回收站(或电脑外)。,10.特定区域,剪贴板是内存的特定区域,回收站是硬盘的特定区域。,14,第5章数据库,5.5数据库的建立,1、项目管理器法,方法1项目管理器法建立数据库,就是在内存建立一个空的数据库,并且在数据库设计器中打开该数据库。,2、菜单法,3、命令法,在VFP的文件菜单或工具栏中,单击“新建”命令,则出现一个“创建”对话框。,在“创建”对话框中,先单击“数据库”单选按钮,再单击“新建文件”命令按钮,则出现“创建”对话框。,在项目管理器中,在“创建”对话框中,输入数据库名称,并单击“保存”按钮,则出现新建的空的数据库在数据库设计器中打开。,方法2菜单法,在项目管理器的工作区选定数据库文件类型。,在项目管理器的命令按钮组处单击“新建”命令按钮。则出现“新建数据库”对话框,单击“新建数据库”命令按钮。则出现“创建”对话框。,在“创建”对话框中输入数据库名称,并单击“保存”按钮。则出现新建的空的数据库在数据库设计器中打开。,方法3命令法,在VFP的命令窗口,首先输入建立数据库的命令:createdatabase数据库文件名,然后敲回车键“Enter”则在内存中建立一个空的数据库,且将该数据库设置成当前数据库,但并不打开数据库设计器。,以上的三种方法都可以建立一个数据库。但如果指定数据库已经存在,那么很可能会覆盖掉已经存在的数据库(如果SETSAFETY设置为OFF,则会直接覆盖;如果SETSAFETY设置为ON,则会出现警告对话框请用户确认),所以要格外小心。,15,第5章数据库,5.6数据库的打开,1、项目管理器法,方法1项目管理器法要在数据库中建立表,或者要使用数据库中的表,都必须首先打开数据库。打开数据库就是将数据库从外存调到内存中。,2、菜单法,3、命令法,在VFP的文件菜单或工具栏中,单击“打开”命令,则出现一个“打开”对话框。,在“打开”对话框中,先在“文件类型”列表框中选择“数据库(*.dbc)”类型,再选定具体的“数据库文件”,最后单击“确定”命令按钮,则出现“数据库文件”在数据库设计器中打开。,在项目管理器中,说明:用“菜单法”打开数据库将会使数据库在数据库设计器中打开,并将该数据库设为当前数据库。,方法2菜单法,在项目管理器的工作区选定要打开的数据库文件。,方法3命令法,在VFP的命令窗口,首先输入打开数据库的命令:opendatabase数据库文件名,然后敲回车键“Enter”则将外存中数据库调到内存中,且将该数据库设置成当前数据库,但并不打开数据库设计器。,说明:以上的三种打开数据库方法都可以将一个具体的数据库从外存调到内存中,但打开效果略有不同。(1)项目管理器法打开并设置为当前(2)命令法是打开数据库并设置为当前数据库。(3)菜单法是打开数据库并设置为当前数据库,且打开设计器。,说明:用“项目管理器法”打开数据库,将设置成当前数据库,但不会打开数据库设计器。,在项目管理器的命令组处单击“打开”,则该数据库被打开并设置为当前数据库。,16,第5章数据库,5.7数据库设计器的打开,1、项目管理器法,方法1项目管理器法要编辑或修改数据库就必须先在数据库的设计器中打开数据库,然后再在数据库的设计器中修改或编辑数据库内容。,2、菜单法,3、命令法,在VFP的文件菜单或工具栏中,单击“打开”命令,则出现一个“打开”对话框。,在“打开”对话框中,先在“文件类型”列表框中选择“数据库(*.dbc)”类型,再选定具体的“数据库文件”,最后单击“确定”命令按钮,则出现“数据库文件”在数据库设计器中打开。,在项目管理器中,方法2菜单法,在项目管理器的工作区选定具体的数据库文件。,方法3命令法,在VFP的命令窗口,首先输入修改数据库的命令:modifydatabase数据库文件名,然后敲回车键“Enter”则将外存中数据库调到内存中,且在数据库设计器中打开该指定的数据库。,在项目管理器的命令按钮组处单击“修改”命令按钮。则出现“数据库设计器”对话框,17,第5章数据库,5.8当前数据库的设置与取消,1、工具栏的数据库列表,方法1数据库列表法VFP可以打开多个数据库,但同一时刻只有一个当前数据库。使用工具栏中的数据库列表按钮可以指定某一数据库为当前数据库。,2、命令法,不指定当前数据库,在VFP的命令窗口中,先输入设置当前数据库的命令Setdatabaseto数据库名,然后敲回车键“Enter”。则将指定的数据库设置成当前数据库。,在工具栏中,方法2命令法,单击“数据库下拉按钮”。出现数据库下拉列表,命令法,在VFP的命令窗口,先输入取消当前数据库的命令:setdatabaseto数据库名,然后敲回车键“Enter”则所有打开的数据库都不是当前数据库。,在数据库下拉列表中单击一个数据库,则该数据库为当前数据库。,18,第5章数据库,5.9数据库清理和数据库有效性检查,1、数据库清理,“数据库清理”的功能清除数据库中因表、视图等的变动而引起的具有删除标记的记录,2、数据库有效性检查,“数据库有效性检查”的命令VALIDATEDATABASE,方法1“数据库”菜单法第1步:打开“数据库设计器”。第2步:在“数据库”菜单中单击执行“清理数据库”命令项。,“数据库有效性检查”的功能“数据库有效性检查”的功能是检查数据库中的表及索引的正确性,方法2命令法在命令窗口中输入并执行以下命令:PACKDATABASE,19,第5章数据库,5.10数据库的关闭,1、项目管理器法,方法1项目管理器法关闭数据库就是将内存中的数据库清除掉。,2、命令法,3、关闭所有数据库,在VFP的命令窗口中,先输入关闭当前数据库的命令Closedatabase,然后敲回车键“Enter”。则将当前数据库关闭掉。,在项目管理器中,方法2命令法,在项目管理器的工作区中单击选定要关闭“数据库”。,命令法,在VFP的命令窗口,先输入关闭所有数据库的命令:closedatabaseall,然后敲回车键“Enter”则所有打开的数据库都被关闭掉。,在项目管理器的命令组中单击“关闭”命令按钮。则选定的数据被关闭。,20,第5章数据库,数据库的删除,1、项目管理器法,方法1项目管理器法删除数据库就是将外存中的数据库清除掉。,2、命令法,数据库函数DBC(),在VFP的命令窗口中,先输入删除数据库的命令deletedatabase数据库名|?deletetablesrecycle,然后敲回车键“Enter”。则会删除指定的数据库。,在项目管理器中,方法2命令法,在项目管理器的工作区中单击选定要关闭“数据库”。,(1)函数的格式DBC(),(2)函数的作用返回当前数据库的名称和路径。,在项目管理器的命令组中单击“移去”命令按钮。则出现一个移去对话框。,如果单击移去对话框中的“移去”命令,则从项目中移除该数据库;如果单击移去对话框中的“删除”命令,则在移除数据库的同时,并从外存盘上清除掉。,(3)函数的返回值的数据类型字符型,(4)函数的说明如果没有当前数据库,则函数DBC()返回的是空字符串。,(5)函数应用举例OPENDATABASEE:AA?DBC()&显示E:AA.DBC,说明:(1)功能:从磁盘删除指定的数据库。(2)数据库名:指定要删除的数据库。若是问号?,则会打开删除对话框。(3)Deletetables:若含有该选项,则会以删除数据库以及其所含的表。(4)recycle:此选项使其放到回收站,21,一.什么是数据库表,数据库表,表分为自由表和数据库表两种。如果一个表不在任何数据库中,则称这个表为自由表。如果一个表在某一个数据库中,则称这个表为数据库表。,二.获得数据库表的操作方法,方法1在项目管理器中“新建”数据库表,方法2在项目管理器中“添加”表,22,数据库表,二.获得数据库表的操作方法,方法3在数据库设计器中“新建”数据库表,方法4在数据库设计器中“添加”表,23,数据库表,二.获得数据库表的操作方法,方法5在命令窗口中“新建”数据库表,方法6在命令窗口中“添加”表,在命令窗口中:第1步建立数据库或打开数据库Createdatabase数据库名或者Opendatabase数据库名第2步建立数据库表create表名或者Createtable表名(字段名1类型(宽度),在命令窗口中:第1步建立数据库或打开数据库Createdatabase数据库名或者Opendatabase数据库名第2步添加表Addtable原表名name长表名,24,三.数据库表的特有属性,数据库表,(一)数据库表设计器的“字段”选项卡中的特有属性,数据库表的特有属性是数据库的一部分,当表从数据库中移去时,才失去这些特有属性。,25,三.数据库表的特有属性,数据库表,(二)数据库表设计器的“索引”选项卡中的特有属性,26,三.数据库表的特有属性,数据库表,(三)数据库表设计器的“表”选项卡中的特有属性,27,四.设置数据库表的特有属性,数据库表,(一)设置“字段”选项卡中的特有属性,1、设置字段“显示”的“格式”format,(1)“格式”文本框的内容“格式”文本框中应该键入“格式表达式”。(2)“格式表达式”的作用“格式表达式”用于规定字段在浏览窗口或输入时采用的格式。(3)“格式表达式”的组成:“格式表达式”由以下的格式码组成。,(4)“格式表达式”的举例例1对“姓名”字段设置格式属性为:AT例2对“性别”字段设置格式属性为:M男,女,28,四.设置数据库表的特有属性,数据库表,(一)设置“字段”选项卡中的特有属性,2、设置字段“显示”的“输入掩码”mask,(1)“输入掩码”文本框的内容“输入掩码”文本框中应该键入“输入掩码表达式”。(2)“输入掩码表达式”的作用输入掩码用于“按位”指定字段的输入格式,限制输入数据的范围,控制输入的正确性。不符合规则的数据不能输入,但对已有记录不验证该规则。(3)“输入掩码表达式”的组成:“输入掩码表达式”由以下的掩码字符组成。,(4)“输入掩码表达式”的举例例1对“学号”字段设置输入掩码为:9999999999例2对“党团员”字段设置输入掩码为:Y,29,四.设置数据库表的特有属性,数据库表,(一)设置“字段”选项卡中的特有属性,3、设置字段“显示”的“标题”caption,(1)“标题”文本框的内容“标题”文本框中应该键入“标题表达式”。(2)“标题表达式”的作用显示区的标题文本框用于为浏览窗口、表单或报表中的字段标签键入表达式。(3)“标题表达式”的组成:“标题表达式”由任意字符组成。,(4)“标题表达式”的举例例1对“学号”字段设置标题为:学生学号例2对“姓名”字段设置标题为:学生姓名,30,四.设置数据库表的特有属性,数据库表,(一)设置“字段”选项卡中的特有属性,4、设置“字段有效性”,(1)“字段有效性”的“规则”设置“规则”文本框用于输入对指定字段数据有效性进行检查的规则,它实际上是一个条件。用条件验证该字段数据的合法性。“规则”通常是一个逻辑表达式、函数或过程,也可以用规则框右边的表达式生成器生成规则表达式。(2)“字段有效性”的“信息”设置“信息”文本框用于指定出错提示信息,当该字段输入的数据违反条件时,出错信息将照此显示。信息内容要用字符定界符。即当规则返回逻辑假(.F.)时,将显示的信息内容。(3)“字段有效性”的“默认值”设置“默认值”文本框用于指定字段的默认值。默认值类型与字段的数据类型一致。若大多数记录取相同值(如性别),则可以指定该字段默认值为该相同值。说明:光标离开字段时引起字段有效性的检验,如不符合规则,必须加以改正。该规则对已有记录也要验证。,(4)设置“字段有效性”的举例例1对“学号”字段设置“规则”为LEN(ALLTRIM(学号)=10“信息”为“学号是10位”“默认值”为”0802014300”例2对“性别”字段设置“规则”为:性别=“男”.OR.性别=“女”“信息”为:“性别是男或女”“默认值”为:“女”,31,四.设置数据库表的特有属性,数据库表,(一)设置“字段”选项卡中的特有属性,5、设置“字段注释”,(1)“字段注释”的作用为了提高数据表的使用效率及其共享性,可在表设计器中的字段注释框内输入信息,对字段加以注释,可清楚地掌握字段的属性、意义及特殊用途等。(2)“字段注释”的设置字段注释信息需用双引号定界。(3)“字段注释”的出现当在项目管理器中选择字段时,字段注释信息显示在项目管理器的底部。,(4)设置“字段注释”的举例例如对“身份证号”字段设置“字段注释”为:身份证号的第1、2位是省代码,第3、4位是地市代码,第5、6位是县区代码,第7-14位是出生日期,第15-17位是出生日期相同者的排序号且奇数代表男,偶数代表女,第18位是校验码,32,四.设置数据库表的特有属性,数据库表,(二)设置“索引”选项卡中的特有属性,(1)“主索引”的作用主索引是一个不允许索引表达式值重复的索引。如果将一个字段指定为建立主索引的关键字段,那么当这个字段中出现重复值时,系统将会提示错误。一个数据库表只能有一个主索引,而自由表没有主索引。(2)“主索引”的设置字段注释信息需用双引号定界。在表设计器的“索引”选项卡中,可以根据需要改变索引的“索引类型”。即通过“索引类型”设置数据库表的“主索引”。,(3)设置“主索引”的举例例如将“学号”字段设置“主索引”,33,四.设置数据库表的特有属性,数据库表,(三)设置“表”选项卡中的特有属性,1、设置“表名”,(1)“表名”文本框的内容“表名”文本框中应该键入没有定界符的“字符串”。(2)“表名”的长度“表名”最多可以由128个字符构成。(3)“表名”的作用:“表名”出现在浏览窗口中。(4)说明:使用长表名打开表时,表所属数据库必须打开并且是当前数据库。而使用表文件名打开表时如果所属数据库未打开则系统自动打开数据库。,(5)“表名”的举例例如将“学籍表”设置为:咸阳师范学院外语系08级学生学籍表,34,四.设置数据库表的特有属性,数据库表,(三)设置“表”选项卡中的特有属性,2、设置“表注释”,(1)“表注释”文本框的内容“表注释”文本框中键入没有定界符的“字符串”。(2)“表注释”的作用“表注释”出现在项目管理器的底部。,(3)“表注释”的举例例如将“学籍表”的“表注释”设置为:这是一个学生情况表,反映所有学生的自然情况,例如学号、姓名、性别、出生日期等,35,四.设置数据库表的特有属性,数据库表,(三)设置“表”选项卡中的特有属性,3、设置“记录有效性”,(1)“记录有效性”的“规则”设置“记录有效性”的“规则”是用来检查同一记录中不同字段之间的逻辑关系。“记录有效性”的“规则”是一个逻辑表达式,应含有两个或两个以上字段,也可以通过右侧按钮进入“表达式生成器”生成“记录有效性”的“规则”。(2)“记录有效性”的“信息”设置“记录有效性”的“信息”用于指定出错提示信息。出错提示信息内容必须用西文引号括起。即当规则返回逻辑假(.F.)时,将显示的信息内容。(3)说明“记录有效性”的“规则”的内容:是同一记录中不同字段之间的逻辑关系表达式。“记录有效性”的“规则”的激活时机:记录指针离开当前记录时,“记录有效性”的“规则”被激活的。“记录有效性”的“规则”的验证范围:“记录有效性”的“规则”设置后,对已经存在的记录也要验证。,(4)设置“记录有效性”的举例例如对每条记录设置“记录有效性”的“规则”为LEN(ALLTRIM(学号)=10.and.(性别=“男”.or.性别=“女”)“记录有效性”的“信息”为“学号等于10位且性别是男或女,36,四.设置数据库表的特有属性,数据库表,(三)设置“表”选项卡中的特有属性,4、设置“触发器”,(1)“触发器”的作用“触发器”是一个在插入、删除或更新表中记录时被激活的表达式。“触发器”用于在插入、更新、删除记录时,运行一个逻辑表达式或存储过程来检测操作的合法性,其返回结果是一个逻辑值。在字段规则、记录规则、SQL的主键约束和触发器中,触发器是最后执行的。(2)“触发器”的种类触发器有插入触发器、更新触发器、删除触发器三种:插入触发器:用于检测插入是否合法,返回.T.时允许插入,否则返回.F.时拒绝插入。更新触发器:用于检测更新是否合法,返回.T.时允许更新,否则返回.F.时拒绝更新。删除触发器:用于检测删除(打上删除标记)是否合法,返回.T.时允许删除,否则返回.F.时拒绝删除。(3)说明:触发器设置对已经存在的记录不做检查。,(4)设置“触发器”的举例例如设置的“触发器”如下:插入触发器设置为:recno()1更新触发器设置为:recno()2删除触发器设置为:recno()30,37,五.数据完整性总结,数据库表,38,一.工作区,多个表的同时使用,2、工作区的逻辑功能,(一)什么是工作区,1、工作区的物理特征,一个工作区是内存的一块区域,VFP可以提供32767(216-1)个工作区。,(1)一个工作区的功能一个工作区只能打开一个表文件,如果在同一个工作区中打开了另一个表文件,则系统先自动关闭前一个已打开的表文件,然后再打开指定的表文件。(2)多个工作区的功能如果要同时使用多个表文件,就必须在不同的工作区中分别打开。同时打开的表文件数与使用的工作区数是相等的。,39,一.工作区,多个表的同时使用,方法2、用字母标识工作区工作区别名,(二)工作区的标识,方法1、用数字标识工作区工作区号,一个用1-32767分别表示不同的工作区。但用0标识未被使用的最小工作区。,(1)前10个工作区的标识:前10个工作区用A-J这十个字母来标识。(2)11-32767工作区的标识:11-32767工作区用W11W32767来标识。,方法3、用表名或表的别名来标识工作区表的名称,用工作区中打开的表的表名或表的别名来标识工作区。,40,一.工作区,多个表的同时使用,2、系统默认的当前工作区,(三)当前工作区,1、当前工作区的概念,虽然VFP可以使用32767工作区。但在任何时刻,VFP只能使用一个工作区,正在使用的工作区称为当前工作区。,如果没有指定当前工作区,则系统默认第1个工作区是当前工作区,即系统默认在第1个工作区中打开和关闭表。,3、指定当前工作区的命令,(1)命令格式:select工作区标识(2)命令功能:将指定的工作区设为当前工作区。(3)命令说明:工作区标识可以是工作区号,或工作区别名,或表的名称。,(1)命令格式:use表名alias表别名(2)命令功能:在打开表的同时为表取别名。(3)命令举例:usestudentaliasstu,4、表别名命名的命令,5、指定当前工作区命令的举例,Select3SelectCSelectstuSelect0Selectw15,6、特别强调的是,(1)定义表别名:use表名alias表别名(2)一旦为表取了别名,就必须使用表别名。(3)0号工作区表示未用工作区中区号最小的工作区。,41,二.工作区互访,多个表的同时使用,2、工作区互访的命令,在实际工作中,为了完成某个任务,除了使用当前工作区的表中数据以外,还要使用其它工作区的表中数据。VFP支持在当前工作区中调用其它工作区的表中数据,这种在当前工作区中访问其它工作区的表中数据的操作称为工作区互访。,1、工作区互访的概念,(1)命令格式1:工作区别名|表的名称.字段名(2)命令格式2:工作区别名|表的名称-字段名,3、工作区互访命令的举例,42,三.两个表的记录之间存在的对应关系,多个表的同时使用,(2)一对多(1:m)(onetomanyrelationship),父表中的一条记录对应子表中的一条记录。班级与班主任的联系。,(1)一对一(1:1)(onetoonerelationship),父表中的一条记录对应子表中的多条记录。班级与学生的联系。,(3)多对多(n:m)(manytomanyrelationship),1、实体联系:两个实体集中的实体存在的对应关系称为实体联系,实体联系反映现实世界事物之间的相互关联关系。2、实体联系的种类:按照一个实体集中的实体对应于另一个实体集中实体个数的多少分类,将实体联系分为以下三种:,在父表与子表的两个表之间,一个表中的一条记录对应另一个表的多条记录。在VFP中基本不用多对多关系。学生与某学期课程的联系。,43,四.表间关联关系,多个表的同时使用,2、一个数据库中的多个表的记录指针的移动是相互独立的,在实际工作中,一个数据库中通常包含着多个表。一个数据库中的多个表从不同的方面描述了同一个实体集,这些表之间存在着密切的关系。例如,英语0803数据库中包含了英语0803学籍表、英语0803通信表、英语0803成绩表共三个表。对于一名学生而言,他的属性数据分别存储在这三个表中,这三个表之间有着密切的关系。,1、一个数据库中的多个表之间存在的关系,(1)英语0803学籍表记录指针的移动不影响英语0803通信表记录指针(2)英语0803通信表记录指针的移动不影响英语0803成绩表记录指针我们希望这三张表的记录指针能一起移动,例如当学籍表的记录指针指向张三时,其它两个表的记录指针也指向张三,这方便对数据操作。,3、一个数据库中的多个表之间的关联,(一)表间关联关系的概念,如果在两个表之间建立了关联关系,则两张表的记录指针可以有规律的一起移动。,44,四.表间关联关系,多个表的同时使用,1、临时表间关联关系,如果两个表之间建立了关联关系,那么这两个表中的记录将相互关联起来,即当在一个表中移动记录指针时,相关表中的记录指针也将随着移动,并定位到与之相关的记录上。表间关联关系分为临时表间关联关系和永久表间关联关系两种。,临时表间关系是指在使用时建立的、使表间记录指针联动的关系。临时表间关系可以根据需要随时进行设置或更改,当表关闭或系统退出时,临时表间关联关系也随之消失,下次使用时还需要重新建立。,2、永久表间关联关系,(二)表间关联关系的种类,永久表间关联关系是为了维护数据库表之间的数据完整性而引入的。永久表间关联关系保存在数据库中,只要打开数据库,永久表间关联关系将立即生效。,45,四.表间关联关系,多个表的同时使用,1、建立临时表间关联关系的两个表应满足的条件,(1)两个表中一个是父表,一个是子表。建立临时表间关联关系以后,当父表的记录指针移动时,子表的记录指针也随着做相应的移动,适应于一对一和一对多两种关系。(2)父表和子表必须在不同的工作区打开。(3)父表与子表的关联字段名可以相同,也可以不同。但父表与子表的关联字段的数据类型必须相同,并且必须为子表的关联字段建立索引(4)使用父表的关联字段建立多对一的临时表间关联关系。(5)要建立一对多的临时表间关联关系,还必须用命令说明已建关联的性质是一对多。,(三)临时表间关联关系的操作,46,四.表间关联关系,多个表的同时使用,2、建立临时表间关联关系的两种方法,方法1“数据工作期”法建立临时关联(1)“数据工作期”窗口的打开和关闭,(三)临时表间关联关系的操作,(2)用“数据工作期”窗口建立多对一的操作步骤第1步先打开子表“专业表”,并依据“专业编号”建立“普通索引”,且设置成“主控索引”。,第2步打开父表“学籍表”,并单击“关系”按钮。,47,四.表间关联关系,多个表的同时使用,2、建立临时表间关联关系的两种方法,方法1“数据工作期”法建立临时关联(2)用“数据工作期”窗口建立多对一的操作步骤第3步单击子表“专业表”,则出现“表达式生成器”,在“表达式生成器”中选中关联字段“专业编号”,然后单击“确定”即建成了“多对一关联”。,(三)临时表间关联关系的操作,(3)用“数据工作期”窗口建立一对多的操作步骤第1步先打开子表“成绩表”,并依据“学号”建立“普通索引”,且设置成“主控索引”。,48,四.表间关联关系,多个表的同时使用,2、建立临时表间关联关系的两种方法,方法1“数据工作期

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论