VF第三章:数据库操作_第1页
VF第三章:数据库操作_第2页
VF第三章:数据库操作_第3页
VF第三章:数据库操作_第4页
VF第三章:数据库操作_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

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

文档简介

VisualFoxPro项目管理器

项目:是有关文件、数据、文档和对象的集合。在VisualFoxPro系统环境下,可以利用项目管理器进行项目建立的操作,它为系统开发者提供了极为便利的工作平台。项目管理器:一、它提供了简便的可视化的方法来组织和处理表、数据库、表单、报表、查询和其它一切文件二、可以在项目管理器中将应用系统编译成一个扩展名是.APP的应用文件或.EXE可执行文件。

1、创建新项目

A、打开“文件”菜单,选择“新建”

B、在“新建”窗口,单击“项目”,再按“新建文件”按钮,进入“创建”窗口

C、在“创建”窗口,输入项目文件的名,按“保存”按钮,进入“项目管理器”窗口。

D、此时一个空的项目文件已建立完成,在“项目管理器”窗口,按“退出”按钮结束操作,系统形成一个扩展名为.PJX(PJT——项目备注)的项目文件。2、打开和关闭项目

(1)打开

a、“文件”菜单/打开(“常用”工具栏/“打开”按钮)b、“打开”对话框/“文件类型”下拉列表框/“项目”

c、双击项目(选择项目,“确定”按钮)(2)关闭:“关闭”按钮

3、项目管理器窗口的各类选项卡在“项目管理器”窗口,若想对项目进行各种操作,可以通过“项目”菜单和“项目管理器”窗口的选项卡来完成。

A、用“全部”选项卡:列出项目中的所有文件和对象

B、用“数据”选项卡管理数据使用“数据”选项卡,可以组织和管理项目文件中包含的所有数据,如数据库、数据表和查询等。

C、用“文档”选项卡管理文档使用“文档”选项卡,可以组织和管理项目文件中利用数据进行操作的文件。如表单、报表、标签等。

D、用“类”选项卡管理类:使用“类”选项卡,可以组织和管理项目文件中的类和类库。

E、用“代码”选项卡管理代码文件:使用“代码”选项卡,可以组织和管理项目文件中程序代码文件。

F、用“其它”选项卡管理其它类型的文件使用“其它”选项卡,可以组织和管理项目文件中其它类型的文件,其中含有“菜单”文件的管理。4、项目管理器的使用A、建立文件“新建”按钮B、添加文件“添加”按钮C、修改文件“修改”按钮D、移去文件“移去”按钮E、删除文件“移去”按钮F、其他按钮“浏览”、“打开”、“关闭”、“预览”、“运行”、“连编”

5、定制项目管理器

A、移动、缩放、折叠、拆分项目管理器移动:鼠标操作缩放:鼠标操作折叠:、按钮拆分:图钉图标按钮

B、停放“项目管理器”窗口将项目管理器拖到VisualFoxPro主窗口的顶部就可以使象其他工具栏一样显示在主窗口的顶部。注意:创建项目可以使用命令格式:CREATEPROJECT第三章:visualFoxpro数据库及其操作 一.VFP数据库及其建立。

1.基本概念:与早期的dBASE、Foxbase、Foxpro

不同,VFP中的数据库只是一个逻辑上的概念,VFP中的数据库文件中并不用来存储数据。其扩展名为.dbc

当我们在VFP中建立一个数据库时,除了产生一个.dbc

文件之外,还会产生另外的两个文件:.dct(数据库备注文件),.dcx(数据库索引文件)。2.数据库的建立方法:

1)在项目管理器中建立

2)通过“新建”对话框建立数据库

3)使用命令交互建立数据库

CREATEDATABASE[DATABASENAME|?]第三章:visualfoxpro数据库及其操作二.数据库的打开

1.在项目管理器中打开数据库

2.通过打开对话框打开数据库

3.使用命令打开数据库

OPENDATABASE[filename|?][EXCLUSIVE|SHARED][NOUPDATE][VALIDATE]

参数说明:EXCLUSIVE以独占方式打开,SHARED以共享方式打开。NOUPDATE以只读方式打开,VALIDATE检查数据库中引用的对象是否合法。

4.设置当前数据库:SETDATABASETO[databasename]

第三章:visualFoxpro数据库及其操作三、修改数据库在VFP中一般用数据库设计器修改数据库,数据库设计器可以用如下的几种方式打开.1.在项目管理器中打开

2.在打开对话框中打开数据库

3.使用命令打开

MODIFYDATABASE[databasename|?][NOWAIT][NOEDIT]databasename给出要修改的数据库名称,NOWAIT在程序设计中有作用,在交互式打开中没有用.NOEDIT只打开数据库设计器,而禁止对其进行修改.

第三章:visualfoxpro数据库及其操作四.数据库的删除

1.在项目管理器中删除数据库移去:将数据库从项目管理器中移去,但并不从磁盘上删除删除:不仅从项目管理器中移去,也从磁盘上删除

2.命令删除:

在项目管理器中删除数据库,不管是用移去,还是删除,都只将数据库文件删除,而数据库中的表和其他的文件依然在磁盘上.用命令方式可以将表和其他文件连同数据库一起删除.

DELETEDATABASEdatabasename|?[deletetables][recycle]

deletetables

同时删除表,recycle将删除的文件放入回收站.3.SETSAFETYON|OFF是否显示删除对话框第三章:visualfoxpro数据库及其操作五、数据表的建立

1.建立方法:1)在数据库设计器中用菜单命令建立.2)用CREATE

命令语句建立注:无论上述哪种方法创建数据表,最终都要通过表设计器来完成设置.表的扩展名为.dbf,若有备注和通用型大字段的表扩展名为.fpt。

2.表设计器介绍:1)字段名:字段变量的名称,每个字段都必须有字段名,其命名规则如下:

自由表字段名最长为10个字符,数据库表最长为128个字符.

字段名必须以字母或汉字开头.

字段名可以由汉字、字母、数字、下划线组成。字段名中不能包含空格。第三章:visualfoxpro数据库及其操作

2)字段类型和宽度:字段类型决定了存储在字段中的数据类型

3)空值:是否允许字段。

4)字段有效性组框:可定义字段的有效性规则及违反规则时提示信息和字段默认值。

5)显示组框:可定义字段显示的格式等。

6)字段注释:为每个字段添加注释。

3.修改表结构:方法一:右击/修改方法二:modifystructure

在表设计器中可以修改表结构,其操作主要包括:

1)修改已有的字段。

2)增加新字段。

3)删除不用字段。第三章:visualfoxpro数据库及其操作六.表的基本操作:

1.使用浏览器操作表:

1)在表浏览器中可以对表进行如下操作:浏览操作,修改记录操作,删除记录操作

2)浏览器的启动方法:可以用显示菜单中的浏览命令或者用BROWSE命令。

3)添加记录:按Ctrl+Y或从“表”菜单中选择“追加新记录”。

4)设置删除标记和取消删除标记:ctrl+T

或“表”菜单中选择“切换删除标记”。

5)退出浏览器:ctrl+w

或esc

2.增加记录操作:

1)APPEND[BLANK]APPEND命令是在表的尾部增加记录。

BLANK参数的作用是在表的尾部增加一条记录,但不弹出交互式输入框。而后通过EDIT、CHANGE或BROWSE命令交互进行输入,或用REPLACE命令直接修改该空白记录值。第三章:visualfoxpro数据库及其操作

2)INSERT[BEFORE][BLANK]INSERT命令是在当前记录前或后插入一条新的记录,如果指定BEFROE参数则在当前记录前插入新记录,否则在当前记录后插入新记录,如果指定BLANK则不出现交互式输入框,用EIDT或CHANGE命令对插入的记录进行输入。注:如果表中建立了主索引或侯选索引,则不能用以上的APPEND或INSERT命令插入记录,必须使用SQL的INSERT命令插入记录。3.删除记录命令:

1)逻辑删除或置删除标记命令:

DELETE[FORlExpressionl]

例:deletefor年龄=20and性别=“男”

2)恢复记录或撤消删除标记命令:

RECALL[FORlExpressionl]

例:recallfor性别=“男”

3)物理删除带有删除标记的记录:PACK4)物理删除表中全部记录的命令:ZAP 4.修改记录命令:

1)EDIT,CHANGE命令交互式修改。

2)REPLACE命令直接修改;

REPLACEfieldname1WITH

eExpressionl[,fieldname2witheExpressionl2]……

例:replaceall年龄with年龄+1replaceall性别with“男”for性别=“女”5.显示记录命令:

LIST\DISPLAY[[FIELDS]fieldlist][FORlExpressionl][OFF][TOPRINTER[PROMPT]]TOFILEfilename]

其中参数:

Fieldlist:用逗号隔开的字段名,默认显示全部字段

lexpressionl条件表达式,若使用FOR短语指定条件,则只显示满足条件的记录;●Toprinter将结果输出到打印机,prompt可以对打印机进行设置。●Tofile将结果输出到文件,filename是文件名

☆注:LIST和DISPLAY都是显示记录,区别在于不带参数的LIST显示所有的记录,而不带参数的DISPLAY显示当前记录。

6.查询定位命令:

1)GO(GOTO)命令直接定位:

GOTOnRecordnumber|TOP|BOTTOM

作用是绝对定位到指定的记录,其中nrecordnumber是记录号,即直接按记录号定位;TOP是表头,当不使用索引时是记录号为1的记录,使用索引时是索引排在最前面的索引对应的记录;BOTTOM是表尾,无索引时为最大记录,有索引时是排在最后面对应的记录。

第三章:visualfoxpro数据库及其操作2)SKIP命令相对定位:

SKIP[nrecords]SKIP是相对当前记录移动由nrecords

指定的记录数。Nrecords为正数时向下移动,为负数时向上移动。Skip是按逻辑顺序定位的,即若使用索引时,是按索引项的顺序定位的。注:P69-70函数

3)LOCATE命令定位:

LOCATEFOReExpressionl

该命令执行后将记录指针定位在满足条件的第1条记录上,若没有则指向文件结束位置。可与CONTINUE命令连用,继续定位到满足条件的下一条记录,无则指向文件结束位置。FOUND()函数可以判断是否找到满足条件的记录,有满足的返回.T.,否则为.F.。课后练习题

1、笔试题:P123习题中的选择、填空题

2、上机题:P125习题三中第1题的①②

3、上机题:P129中的四个表(仓库、职工、订购单、供应商)1.索引的作用为了对表中的记录进行逻辑排序、加速的查询或操作我们需要建立索引。2.索引的概念:由指针构成的文件,这些指针逻辑上按照索引关键字的值进行排序。索引文件和表的.dbf文件分别存储,并且不改变表中记录的物理顺序。3.4索引物理顺序与逻辑顺序物理顺序:表中记录的存储顺序按记录输入的时间顺序存放逻辑顺序:记录的处理顺序对记录按某个(些)字段值排序3.索引的种类:

1)主索引:强调字段中不出现重复值。一个表只能有一个主关键字,所以一个表只能建立一个主索引。其可确保输入值的惟一性。

2)侯选索引:也强调字段中不出现重复值,建立此索引的字段可看作是候选关键字,所以一个表中可以有多个侯选索引。

3)惟一索引:惟一性指的是索引项的惟一,而不是字段值的惟一,这种索引是为了与早期的版本兼容。一个表可建多个惟一索引。

4)普通索引:也可决定记录的处理顺序,它不仅允许字段出现重复值,,索引项中也允许出现重复值。一个表可建多个普通索引。第三章:visualfoxpro数据库及其操作

4.索引的创建:

1)在表设计器中创建索引:

A、表设计器“字段”选项卡→建立升序、降序等单项索引(.IDX文件)。

B、表设计器“索引”选项卡→建立多个侯选、普通、唯一索引,建立一个主索引等复合字段索引(.CDX文件)。

2、使用命令建立索引

INDEXON

eExpression

TO

IDXFileName|TAG

TagName[OFCDXFileName][FORlExpression][COMPACT][ASCENDING|DESCENDING][UNIQUE|CANDIDATE][ADDITIVE]参数或短语含义:

eExpression:索引表达式,可以是字段名、包含字段名的表达式。

TOIDXFileName:建立一个单独的索引文件,扩展名.IDX。

TAGTagName:建立多个索引在一个索引文件中的复合索引,扩展名.CDX。

OFCDXFileName:建立包含多个索引的复合索引,扩展名.CDX。

FOR

lExpression:建立满足索引过滤条件的记录的索引。

COMPACT:建立一个压缩的.IDX文件。

ASCENDING|DESCENDING:建立升序、降序索引默认是升序。

UNIQUE|CANDIDATE:建立唯一、侯选索引。

ADDITIVE选项:是否关闭以前索引,默认是关闭已使用的索引。★相关注意事项1、从索引的组织方式分类:

A、单独的.IDX索引,是一种非结构单索引。

B、采用非默认名的.CDX索引,是非结构复合索引。

C、与表同名的.CDX索引,是结构复合压缩索引。2、结构复合压缩索引文件的特性:

A、在打开表时自动打开

B、在同一索引文件中能包含多个索引方案,或索引关键字

C、在添加、更改、删除记录时自动维护索引注意:一般只使用结构复合压缩索引文件,用“表设计器”建立的索引是结构复合压缩索引。第三章:visualfoxpro数据库及其操作

6.使用索引:

1)打开索引文件:SETINDEXTO

indexfilelist

打开由indexfilelist

列表指定的一系列索引文件。

2)设置当前索引:

SETORDERTO[nIndexNumber|[TAG]tagname][ASCENDING|DESCENDING]3)使用索引快速定位:SEEK

eExpression[ordernIndexNumber|

[TAG]tagname][ASCENDING|DESCENDING]

例:seek‘9921105’order学号

4)删除索引:DELETETAG

TagName1

DELETETAGALL

删除所有的索引

八、数据完整性1、数据完整性所谓数据完整性,指保证数据正确的特性,简单地说就是控制数据的一致性。2、数据完整性类型实体完整性、域完整性、参照完整性

A、实体完整性与主关键字实体完整性:是保证表中记录惟一的特性,即在一个表中不允许有重复的记录。即保证实体惟一性。如果一个字段的值或几个字段的值能够唯一标识表中的一条记录,则这样的字段称为侯选关键字。其中一个称为主关键字。

注意:主关键字称为主索引,侯选关键字称为侯选索引。B、域完整性与约束规则域完整性:是限定字段的取值类型和取值范围。域约束规则:也称作字段有效性规则,在插入或修改字段值时被激活,主要用于数据输入正确性的检验。

注意:表设计器:“规则”是逻辑表达式,“信息”是字符串表达式,“默认值”的类型则以字段的类型确定。C、参照完整性与表之间的关联参照完整性:是当插入、删除、修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正确。参照完整性是关系数据库管理系统的一个重要的功能。在VisualFoxPro中建立参照完整性,必须首先建立表之间的联系,即关系。注意:如果一个字段或字段组合不是本表的关键字,而是另一个表的关键字,则这样的字段称为外部关键字。3、建立表之间的联系在数据库设计器中设计表之间的联系时,要在父表中建立主索引,在子表中建立普通索引(父主子普),然后通过父表的主索引和子表的普通索引建立起两个表之间的联系。建立联系方法:鼠标拖动编辑联系方法:快捷菜单(右击)4、设置参照完整性约束A、清理数据库“数据库”菜单/“清理数据库”命令、PACKDATABASE命令B、编辑参照完整性“右键”快捷菜单/“编辑参照完整性”→打开“参照完整性生成器”C、参照完整性规则更新规则、删除规则、插入规则a、更新规则:规定了当更新父表中的连接字段(主关键字)值时,如何处理相关的子表中的记录。“级联”:则用新的连接字段值自动修改子表中的相关所有记录“限制”:若子表中有相关的记录,则禁止修改父表中的连接字段值“忽略”:则不作参照完整性检查,可随意更新父记录的连接字段值b、删除规则:规定了当删除父表中的记录时,如何处理子表中相关的记录。“级联”:则自动删除子表中的相关所有记录。“限制”:若子表中有相关的记录,则禁止删除父表中的记录。“忽略”:则不作参照完整性检查,即删除父表的记录时与子表无关。c、插入规则:规定了当插入子表中的记录时,是否进行参照完整性检查。“限制”:若父表中没有相匹配的连接字段值则禁止插入子记录。“忽略”:则不作参照完整性检查,即可以随意插入子记录。第三章:visualfoxpro数据库及其操作九、自由表所谓自由表就是那些不属于任何数据库的表,在创建表时,未打开数据库,则创建的表也是自由表。可将自由表添加到数据库中,使之成为数据库表,也可将数据库表从数据库中移出,使之成为自由表。1、自由表的建立方法:

a、“项目管理器”→“数据”选项卡选择“自由表”→“新建”按钮

b、“文件”菜单→“新建”按钮→选择“表”→“新建文件”

c、CREATE命令注意:1)以上方法打开“表设计器”

2)后两种方法在没有打开数据库的前提下使用

2、数据库表与自由表:数据库表特点:①数据库表可以使用长表名、长字段名②可以为数据库表中的字段指定标题、添加注释③可以为数据库表的字段指定默认值、输入掩码④数据库表的字段有默认的控件类⑤可以为数据库表规定字段级规则、记录级规则⑥数据库表支持主关键字、参照完整性、表之间的联系⑦支持INSERT、UPDATE、DELETE事件的触发器(一)、将自由表添加到数据库方法:

A、“项目管理器”→“项目”菜单/“添加文件”→“添加”按钮

B、“数据库设计器”→“数据库”菜单或右击/“添加表”

C、命令格式:ADDTABLETableName

|?[NAMELongTableName]

选项:[NAMELongTableName]指定最多128个字符的长名。注意:一个表只属于一个数据库。(二)、从数据库中移出表方法:

A、“项目管理器”→“项目”菜单/“移去文件”命令→“移去”按钮

B、“数据库设计器”→“数据库”菜单/“移去”命令→“右键”快捷菜单/“删除”命令

C、命令格式:REMOVETABLETableName

|?[DELETE][RECYCLE]

选项:[DELETE]从磁盘上删除,[RECYCLE]放入回收站中。注意:

A、“移去”、“删除”按钮的使用

B、相关信息设置受到影响,如:索引、默认值、有关规则、长文件名等。(一)、工作区1、所谓的工作区:实际上是一些内存容量。

A、指定工作区的命令格式:SELECTnWorkArea|

cTableAlias

功能:选择指定工作区,默认为第1个工作区。

参数:nWorkArea是:0~32767之间的数

cTableAlias是:指表名或表的别名注意:SELECT0:指定编号最小的可用工作区。表的别名:A~J、W11~W32767

B、指定表别名的命令格式:USETableNameINnWorkAreaALIAScTableAlias

功能:指定表的别名例:us

温馨提示

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

评论

0/150

提交评论