VisualFoxPro数据库及其操作下PPT课件

上传人:pu****.1 文档编号:569330030 上传时间:2024-07-28 格式:PPT 页数:46 大小:191KB
返回 下载 相关 举报
VisualFoxPro数据库及其操作下PPT课件_第1页
第1页 / 共46页
VisualFoxPro数据库及其操作下PPT课件_第2页
第2页 / 共46页
VisualFoxPro数据库及其操作下PPT课件_第3页
第3页 / 共46页
VisualFoxPro数据库及其操作下PPT课件_第4页
第4页 / 共46页
VisualFoxPro数据库及其操作下PPT课件_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《VisualFoxPro数据库及其操作下PPT课件》由会员分享,可在线阅读,更多相关《VisualFoxPro数据库及其操作下PPT课件(46页珍藏版)》请在金锄头文库上搜索。

1、排序排序:关键字:就是把表中的记录按照某个字段值的大小顺序重新排列,作为排序依据的字段。升序(Ascending):按照关键字从小到大的顺序进行。降序(Descending):按照关键字从大到小的顺序进行。1排序排序命令SORT:格式:SORT TO TableName ON FieldName1 /A | /D /C , /A | /D /C .ASCENDING | DESCENDING FOR FIELDS 功能:对当前表按指定字段进行排序并将排序结果存入新表。TableName:排序后生成新表的表名。FieldName:为排序的字段。可在多个字段上进行排序。当为多个字段排序时,先按字段

2、1的值(升或降序)排列,其值相同时,再按字段2的值(升或降序)排列。/A | /D /C:/A说明按升序排序;/D说明按降序排序;/C说明排序时不区分大小写字母。默认情况下为升序。FOR :参加排序所满足的条件。FIELDS :排序后表所包含的字段。2例如:对自由表学生表(STUD.DBF)按出生日期降序排序。(排序后的表名为“学生表”,保留所有字段)USE STUDSORT TO 学生表 NO 出生日期/DUSE 学生表BROWSE例如:对自由表学生表(STUD.DBF)按成绩升序排序 。(排序后的表名为“学生表”,保留学号,姓名,成绩字段)USE STUDSORT TO 学生表 NO 成绩

3、 FIELDS 学号,姓名,成绩USE 学生表BROWSE3例如:对自由表学生表(STUD.DBF)按成绩降序排序,若成绩相同则按编号升序排序。 (排序后的表名为“学生表”)USE STUDSORT TO 学生表 NO 成绩 /D,编号/AUSE 学生表BROWSE4物理顺序:记录存储在表中的实际顺序。 逻辑顺序:按照某个关键字与记录号之间建立的顺序。索引主要分为:主索引侯选索引唯一索引普通索引索引5索引主索引:主索引:主关键字能唯一确定记录的顺序,不允许在该字段中出现重复值。主索引仅适用于数据库表,一个数据表只能有一个主索引,自由表不能创建主索引。候选索引:候选索引:候选索引和主索引一样要求

4、字段值的唯一性。一个数据库表或自由表都可以建立多个候选索引。唯一索引:唯一索引:索引文件中每一个特定的关键字值只存储一次,忽略后面出现重复的记录。数据表或自由表可以有多个唯一索引。(忽略重复的记录)普通索引:普通索引:不要求字段值具有唯一性,即允许字段中出现重复值。可以建立多个普通索引。6在表设计器中建立索引1.单项索引单项索引是指索引表达式由一个字段构成。是指索引表达式由一个字段构成。例如:给订货管理数据库中的仓库表按仓库号“升序”建立“主索引”,索引名为“仓库号”,索引表达式也为“仓库号”。打开“订货管理”数据库USE 仓库表单击显示菜单选择表设计器在“仓库号”字段的“索引”下拉框选择“升

5、序”单击索引选项卡在索引“类型”中选择“主索引”单击确定即可。7在表设计器中建立索引2.复合字段索引复合字段索引是指索引表达式由多个字段构成。字段也可以是其它表。是指索引表达式由多个字段构成。字段也可以是其它表。例如:给订货管理数据库中的职工表按职工号“升序”建立“侯选索引”,索引名为“职工供应商号”,复合索引表达式“职工号+供应商号”。(此题的“供应商号”来自“供应商表”)8打开“订货管理”数据库USE 职工表单击显示菜单选择表设计器在“职工号”字段的“索引”下拉框选择“升序”单击索引选项卡在索引“类型”中选择“侯选索引”在索引名键入“职工供应商号”单击索引表达式后的“”按钮在“来源于表”下

6、拉框选择“职工表”在“字段”列表框双击“职工号”在“数学”或“字符串”下拉框选择加号“+”在“来源于表”下拉框选择“供应商表”在“字段”列表框双击“供应商号”单击确定即可9使用命令建立索引格式:格式:INDEX ON TO | TAGOFFOR COMPACT ASCENDING | DESCENDINGUNIQUE ADDITIVE功能:功能:对当前表文件按指定的关键字建立索引文件。10使用命令建立索引选项说明TO 单索引名:建立的是单索引名:建立的是.IDX索引文件。一般用于建立临时索引。索引文件。一般用于建立临时索引。当表关闭后再次打开,索引文件不随同时打开。必须使用相应的当表关闭后再次

7、打开,索引文件不随同时打开。必须使用相应的命令打开。命令打开。TAG 结构索引名:建立的是.CDX结构索引文件。COMPACT:压缩单项索引文件,复合索引文件自动压缩。ASCENDING:建立升序索引。DESCENDING:建立降序索引。UNIQUE:建立唯一索引。ADDITIVE:建立侯选索引。注意:使用命令只能建立普通索引、唯一索引或侯选索引。不能使用命令建立主索引。默认情况下建立的是普通升序索引。11索引文件主要分为:.IDX索引文件和.CDX索引文件索引扩展名为.IDX,是一种非结构单索引。用非默认名建立的索引文件扩展名为.CDX,是非结构复合索引与表同名的.CDX索引,是结构复合索引

8、。12使用命令建立索引例如:对自由表学生表(STUD.DBF)“生日”字段建立单项普通升序索引。索引名为“出生日期”,索引表达式“生日”。USE STUDINDEX ON 出生日期 TAG 出生日期例如:对自由表学生表(STUD.DBF)“姓名”字段建立单项普通降序索引。索引名为“姓名” ,索引表达式“姓名”。USE STUDINDEX ON 姓名 TAG 姓名 例如:对自由表学生表(STUD.DBF) “学号”字段建立复合唯一升序索引。索引名为“学号”,索引表达式为“学号+姓名”。USE STUDINDEX ON 学号+姓名 TAG 学号 UNIQUE13打开、关闭索引文件打开索引命令打开索

9、引命令格式:SETINDEX TO索引文件名功能:打开当前表的一个或多个索引文件并确定主控索引文件。格式:USE表文件名 INDEX索引文件名功能:打开表同时打开索引文件。关闭索引命令关闭索引命令格式:SETINDEX TO功能:关闭当前索引文件。14例如:对自由表学生表(STUD.DBF)“姓名”字段建立单项普通降序索引。索引名为“姓名” ,索引表达式“姓名”。索引文件类型为. .IDXIDX。在使用索引打开其索引。USE STUDINDEX ON 姓名 TO 姓名CLOSE ALLUSE STUDSET INDEX TO 姓名SET INDEX TO15设置当前索引格式:SET ORDER

10、 TO | TAG ASCENDING | DESCENDING功能:设置当前索引并且可以重新指定当前索引的升序或降序。数值:表达式:按索引序号指定索引项。索引序号是指建立索引的先后顺序号。索引文件名:按索引名指定索引项。ASCENDING:升序。DESCENDING:降序。16设置当前索引例如:设置自由表学生表(STUD.DBF)中索引名为 “姓名”的索引为当前索引项,并重新指定索引为升序。USE STUDSET ORDER TO TAG 姓名 ASCENDINGSET ORDER TO 217使用索引快速定位格式:SEEK eExpression ORDER nIndexNumber |

11、TAG TagNameASCENDING|DESCENDING功能:在当前表中查询定位记录。eExpression: eExpression的值必须是索引项或索引关键字的值。ORDER nIndexNumber:按索引序号索引定位。TAG TagName:按索引名索引定位。ASCENDING:升序。DESCENDING:降序。注意:此命令要求对注意:此命令要求对eExpression所对应的字段名上必须有索引。所对应的字段名上必须有索引。例如:将学生表的记录指针定位在来源地区是湖北的记录上。USE STUDSEEK “湖北” ORDER 来源地区18删除索引格式:格式:DELETE TAG T

12、agName1功能:功能:删除当前表指定的索引(索引文件类型为.CDX)。格式:格式:DELETE TAG ALL功能:功能:删除当前表的所有索引(索引文件类型为.CDX)。例如:使用命令删除自由表学生表(STUD.DBF)中索引名为“出生日期”的索引。USE STUDDELETETAG出生日期例如:使用命令删除自由表学生表(STUD.DBF)中的所有索引。USE STUDDELETETAGALL19数据完整性数据完整性是指保证数据正确的特性。数据完整性一般分为:实体完整性域完整性参照完整性20实体完整性实体完整性是保证表中记录唯一的特性,即在一个表中不允许有重复的记录。在Visual Fox

13、Pro中利用主关键字或侯选关键字保证表中记录的唯一。所以在Visual FoxPro中利用主关键字或侯选关键字来说明实体完整性。在Visual FoxPro中将主关键字称为主索引,将侯选关键字称为侯选索引。21域完整性域完整性也称字段有效性规则,在插入或修改字段值时被激活,主要用于数据输入正确性的检查。字段有效性规则:字段有效性规则:规则:字段有效性规则在输入字段或改变字段值时才发生作用。信息:当用户输入的信息不能满足有效性规则时所给出提示信息。默认值:指创建记录时自动输入的字段值,根据字段的类型来确定默认值的类型。注意:“规则”是逻辑表达式,“信息”是字符串表达式。字段有效性规则不能对带有删

14、除标记的记录生效。22例如:设“订货管理”数据库中的职工表,职工的工资有效性规则在1000至3000元之间,当输入的职工工资不在此范围时给出出错信息“工资输入错误”,职工的默认工资值是NULL。并追加并追加一条新记录,查看新记录的工资的默认值否是一条新记录,查看新记录的工资的默认值否是.NULL.,并修改为,并修改为800元,是否出现错误提示信息。元,是否出现错误提示信息。打开“订货管理”数据库选择职工表单击右键修改选择工资字段在工资字段最右边的按钮的单击,出现对号“”,表示允许该字段值可以取空值即NULL。在“规则”框中输入表达式:工资工资=1000.AND.工资工资=3000在“信息”框中

15、输入表达式:“工资输入错误工资输入错误”在“默认值”框中输入表达式:NULL单击确定即可单击显示菜单浏览职工表单击显示菜单追加方式23参照完整性参照完整性的含义:当插入、删除或修改一个表中的数据时,通过参照引用相互联系的另一个表中的数据,来检查对表中数据操作是否正确。在使用参照完整性前,必须先建立表之间的联系。24建立表之间的联系例如:新建新建“订货管理订货管理”数据库,并分别依次添加仓库表、职工数据库,并分别依次添加仓库表、职工表、供应商表和订购单表。分别建立仓库和职工之间,职工和订表、供应商表和订购单表。分别建立仓库和职工之间,职工和订购单之间,供应商和订购之间的一对多关系。并建立仓库表与

16、职购单之间,供应商和订购之间的一对多关系。并建立仓库表与职工表的参照完整性约束。约束规则:分别在工表的参照完整性约束。约束规则:分别在“更新规则更新规则”、“删删除规则除规则”和和“插入规则插入规则”选择选择“限制限制”选项。选项。仓库表:按仓库号建立主索引,索引名为“仓库号”职工表:按职工号建立主索引,索引名为“职工号”;并按仓库号建立普通索引,索引名为“仓库号”。供应商表:按供应商号建立主索引,索引名为“供应商号”。订购单表:按订购单号建立主索引,索引名为“订购单号”;并按职工号建立普通索引,索引名为“职工号”;供应商号建立普通索引,索引名为“供应商号”。25建立仓库表和职工表一对多的联系

17、:建立仓库表和职工表一对多的联系:在数据库设计器中用鼠标左键选中(仓库表中的主索引仓库号),保持按住鼠标左键,并拖动鼠标到(职工表的仓库号索引上),鼠标箭头会变成小矩形状,最后释放鼠标。依次类推建立职工表和订购单表一对多的联系。建立职工表和订购单表一对多的联系。建立供应商表和订购单表一对多的联系。建立供应商表和订购单表一对多的联系。建立表之间的联系26修改或删除表之间的联系修改表之间的联系:修改表之间的联系:用鼠标选中“连线”,“连线”变粗单击鼠标右键选择“编辑关系”即可修改。删除表之间的联系:删除表之间的联系:方法1:用鼠标选中“连线”,“连线”变粗单击鼠标右键选择“删除关系”即可删除。方法

18、2:用鼠标选中“连线”,“连线”变粗按“Delete”键直接删除连线27设置参照完整性约束在建立参照完整性之前必须先清理数据库。所谓清理数据库是物理删除数据库各个表中所有带有删除标记的记录。清楚数据库的方法:清楚数据库的方法:选中数据库设计器在“数据库”菜单选择“清楚数据库”设置参照完整性约束:设置参照完整性约束:用鼠标选中“连线”,“连线”变粗单击鼠标右键选择“编辑参照完整性”出现参照完整性生成器参照完整性生成器28参照完整性更新规则更新规则更新规则更新规则的作用:更新规则的作用:当更新父表中的连接字段值时,如何处理子表中的记录。更新规则分为更新规则分为级联:级联:若选择“级联”,则用新的连

19、接字段值自动修改子表中的相关记录。限制:限制:若选择“限制”,若子表中有相关的记录,则禁止修改父表中的连接字段值。忽略:忽略:若选择“忽略”,在不作参照完整性检查,可以随意更新父表记录的连接字段值。29参照完整性删除规则删除规则删除规则删除规则的作用:删除规则的作用:当删除父表记录时,如何处理子表中相关的记录。删除规则分为删除规则分为级联:级联:若选择“级联”,则自动删除子表中有关的记录。限制:限制:若选择“限制”,若子表中有关的记录,则禁止修改删除父表中的记录。忽略:忽略:若选择“忽略”,则不作参照完整性检查,即删除父表的记录时与子表无关。30参照完整性插入规则插入规则插入规则插入规则的作用

20、:插入规则的作用:当插入子表记录时,是否进行参照完整性检查。插入规则分为插入规则分为限制:限制:若选择“限制”,若父表中没有相匹配的连接字段值则禁止插入子表记录。忽略:忽略:若选择“忽略”,则不作参照完整性检查,即可以随意插入子表记录。31自由表建立在项目管理器建立自由表在项目管理器建立自由表打开项目选择“全部”选项卡单击“数据”前的加号“+”选择“自由表”单击“新建”即可建立。通过通过“新建新建”菜单建立自由表菜单建立自由表单击“文件”菜单选择“新建”选择“表”即可建立自由表32数据库表与自由的区别1.数据库表可以建立主索引。2.数据库表可以为字段指定标题和添加注释。3.数据库表可以为字段指

21、定格式和掩码。4.数据库表可以使用字段有效性规则。5.数据库表可以使用参照完整性和建立永久表间联系。以上自由表均不可以使用。以上自由表均不可以使用。33将自由表添加到数据库中例如:将STUD表添加到学生管理数据库中。打开“学生管理”数据库在“学生管理”数据库设计器中单击右键选择“添加表”在“打开”对话框中选择STUD.DBF使用命令向数据库添加自由表:使用命令向数据库添加自由表:格式:ADD TABLE TableName | ? NAME longTableName功能:将自由表添加到当前数据库中。TableName:要添加到当前数据库的自由表表名。NAME longTableName:给表

22、指定一个长名,最多可由128个字符组成。注意:一个自由表只能属于一个数据库。不能将一个自由表添加到多个数据库中。34例:使用命令向“人事管理”数据库添加人事表、部门表和工资表。打开“人事管理”数据库ADD TABLE 人事表ADD TABLE 工资表ADD TABLE 部门表 NAME BMUSE BM&使用部门表别名BM打开表BROWSE35从数据库中移去表例如:将STUD表移去到学生管理数据库中。打开“学生管理”数据库选中STUD表单击右键选择“删除表”选择“移去”即可。使用命令向数据库移去表:使用命令向数据库移去表:REMOVE TABLE TableName |? DELETERECY

23、CLETableName:将从当前数据库移去的表的表明。DELETE:从当前数据库移去表并且从磁盘上删除。RECYCLE:从当前数据库移去表到Windows回收站中,并不立即删除。36例:使用命令将“人事管理”数据库中的人事表、部门表和工资表移去。打开“人事管理”数据库REMOVE TABLE 人事表REMOVETABLE 工资表REMOVE TABLE 部门表37多表同时使用命令多工作区概念多工作区概念在每个工作区中可以打开一个表,即在一个工作区中不能同时打开多个表。如果在同一时刻打开多个表,则需要在不同的工作区中打开不同的表即可。38指定工作区命令指定工作区命令格式:SELECT |功能:

24、指定当前工作区。工作区号:工作区号的取值范围从032767任何一个数字。当为0时,表示尚未使用工作区。格式:USE IN ALIAS 功能:打开表同时指定工作区并定义表别名。ALIAS:为表指定别名。注意:注意:表默认为两个别名:表名和工作区所对应的别名。表默认为两个别名:表名和工作区所对应的别名。系统定义前10个工作区所指定的默认别名分别是:字母A到J或数字1到10,后面的工作区别名从W11到W32767。多表同时使用命令39例如:分别在第1、2和3工作区分别打开仓库表、职工表和供应商表,并选择当前工作区。(使用SELECT命令)SELECT1USE 仓库表SELECT2USE 职工表SEL

25、ECT3USE 供应商表若要到第1个工作区操作仓库表,则使用以下命令均可:SELECT仓库表SELECT140例如:分别在第1、2和3工作区分别打开仓库表、职工表和供应商表,并选择当前工作区。(使用USE命令)USE 仓库表IN1USE 职工表INBUSE 供应商表IN3ALIAS GYSSELECT 2使用职工表LIST在屏幕显示职工表的所有记录SELECT GYSLIST在屏幕显示供应商表的所有记录41使用不同工作区表中记录格式:INnWorkArea | cTableAlias功能:在一个工作区使用另一个工作区中的表。nWorkArea:工作区号cTableAlias:表名或表别名。可以

26、在一个工作区中直接利用表名或表别名来引用另一个表中的数据。圆点方法:表名表名.字段名字段名箭头方法:表名表名-字段名字段名42例如:分别在第1、2和3工作区分别打开仓库表和职工表。在第1工作区查找定位职工表中职工号为E5的职工记录。SELECT 1USE 仓库表SELECT 2USE 职工表单击“显示”菜单表设计器“职工号”建立普通升序索引SELECT 1SEEK E5 ORDER 职工号 IN 职工表?职工表职工表.仓库号仓库号,职工表职工表-职工号职工号,职工表职工表-工资工资屏幕显示:WH6E5105043表之间的关联永久关联:是指在永久关联:是指在“数据库设计器数据库设计器”中表与表索

27、引之间的连线。中表与表索引之间的连线。临时关联:能够控制不同工作区表与表之间记录指针关系。临时关联:能够控制不同工作区表与表之间记录指针关系。注意:无论是永久还是临时关联都必须有索引才可以建立。一般情况下父表为主索引,子表为普通索引。父表连接子表。建立临时关联命令:建立临时关联命令:格式:格式:SET RELATION TO 索引关键字 INTO 工作区号 | 表名或表别名功能:功能:建立不同工作区表间的临时关联。44例如:例如:将XS(学生)表的学号与CJ(成绩)表的学号建立临时关系。打开XS表,为XS表的学号建立侯选索引打开CJ表,为CJ表的学号建立普通索引命令窗口键入:CLOSE ALL

28、USE XS IN 1 ORDER 学号USE CJ IN 2 ORDER 学号SET RELATION TO 学号 INTO CJ检查是否建立临时关系:检查是否建立临时关系:在命令窗口键入SELECT 1GO 6DISPLAYSELECT 2DISPLAY注:若是建立成功则XS表的学号值应与CJ表的学号值相等。45表之间的关联例如:例如:将XS(学生)表的学号与CJ(成绩)表的学号建立临时关系。(要求:使用数据工作期)打开VF单击“数据工作期”快捷按钮单击“打开”打开XS表单击“显示”菜单“表设计器”为“学号”记录升序侯选索引在用“数据工作期”打开CJ表并为CJ表中的学号建立升序普通索引选中XS表单击“数据工作期”中的“关系”选中CJ表单击确定即可建立仓库表与职工表的按仓库号连接的临时关系。46

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号