二级程序设计教程精.ppt
《二级程序设计教程精.ppt》由会员分享,可在线阅读,更多相关《二级程序设计教程精.ppt(93页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、二级程序设计教程第1页,本讲稿共93页第四章第四章Visual Foxpro 数据库及其操作数据库及其操作 第2页,本讲稿共93页第一节第一节 Visual Foxpro Visual Foxpro 数据库及其建立数据库及其建立在Visual Foxpro中,数据库是一个逻辑上的概念和手段,用于将相互联系的数据表及其相关的数据库对象统一管理和组织。一般的逻辑层次关系:一般的逻辑层次关系:数据库数据库数据表数据表记录记录字段字段第3页,本讲稿共93页建立Visual Foxpro 数据库时,建立扩展名是建立扩展名是dbc的数的数据库文件据库文件,与之相关自动建立扩展名为dbt的备注文件和扩展名为
2、dcx的数据库索引文件。建立一个数据库,对应的文件有三个:DBC、DBT、DCX。一、建立数据库一、建立数据库1、在项目管理器中建立数据库、在项目管理器中建立数据库方法:在“数据”选项卡中,选择“数据库”,单击“新建”。第4页,本讲稿共93页2、通过、通过“新建新建”对话框建立数据库对话框建立数据库方法:在“文件”菜单中选择“新建”。(或者在工具栏上单击“新建”)。3、使用命令交互建立数据库、使用命令交互建立数据库 格式:CREATE DATABASE 库文件名第5页,本讲稿共93页二、使用数据库二、使用数据库在对一个数据库中的表进行操作时,需要先打开这个数据库。在项目管理器中打开数据库。(选
3、中库后,库自动打开)通过“打开”对话框打开数据库。命令法:OPEN DATABASE 库文件名 EXCLUSIVE|SHAREDNOUPDATEVALIDATE(在工具栏中间显示打开的库名)第6页,本讲稿共93页EXCLUSIVE:以独占方式打开,同一时刻只能由一个用户打开操作。SHARED:以共享方式打开,同一时刻可由多个用户打开操作。NOUPDATE:以只读方式打开,不允许对库进行修改。第7页,本讲稿共93页三、修改数据库三、修改数据库在VISUAL FOXPRO中修改数据库实际上是打开数据库设计器,用户可以在数据库设计器中完成各种数据库对象的建立、修改和删除等操作。在项目管理器中,选中库
4、,再单击修改。在“文件”菜单中选择“打开”。MODIFY DATABASE 库文件名NOWAITNOEDITNOWAIT只在程序中使用,不在交互命令窗口中使用,即打开库设计器后,程序继续运行,不等待。NOEDIT 打开数据库设计器禁止对数据库进行修改第8页,本讲稿共93页四、删除数据库四、删除数据库项目管理器中选择库,单击“移去”。DELETE DATABASE 库名数据库文件的删除,并不删除所包含的表文件。库文件仅仅建立表之间的联系。第9页,本讲稿共93页第二节第二节 建立数据库表建立数据库表一、在数据库中建立表一、在数据库中建立表建立表时,首先要对所处理的对象进行调查分析,再根据需要设计一
5、张二维表。当表的行、列个数及每列中数据的属性确定后,再把数据集合在其中即可。1.定义表中的数据类型定义表中的数据类型(1)定义二维表名 设计一张二维表,给表起个名字。(2)二维表栏目设计第10页,本讲稿共93页编号编号姓名姓名家庭地址家庭地址年龄年龄工资工资1001张三青海西宁18595.36100210031004100510061007职工基本情况表第11页,本讲稿共93页(3)填写二维表的内容、表的名字(标题)、表中每一列的栏目标题序列为表头,它标明了每一列对应数据的属性。、表中每一行的数据是表的内容。(4)定义数据表的结构在Visual FoxPro 系统中,一张二维表对应一个数据表,
6、称为表文件(Table)。第12页,本讲稿共93页一张二维表由表名、表头、表的内容三部分组成,一个数据表则由数据表名、数据表的结构、数据表的记录三要素构成。、数据表的文件名相当于二维表中的表名,它是数据表的主要标识,用户可以依靠数据表名在磁盘上存取、使用指定的数据表。、数据表的结构相当于二维表的表头,二维表的每一列对应数据表中的一个字段,其属性决定了字段名、字段类型和字段长度。第13页,本讲稿共93页、数据表中的记录是数据表中不可分割的基本项,即二维表中的表的内容。2利用表设计器创建表利用表设计器创建表方方法1:在“文件”菜单中选择“新建”;方法2:CREATE 表文件名方法3、使用数据库设计
7、器建立数据表(1)输入字段名输入字段名一般允许由110字符(自由表)组成,要求以字母开头,不含空格;数据库中的表其字段名最长可达到128个字符。第14页,本讲稿共93页(2)输入字段的类型每一个字段都反映对象的一个方面属性,根据其表达含义,可有不同的数据类型。根据计算机处理数据的特点,必须定义数据类型。(3)输入字段宽度 指该字段所能容纳数据的最大字节数。有些类型的数据其宽度是固定的。第15页,本讲稿共93页(4)输入小数位数 数值型、浮点型、双精度型的字段可指定小数据位。数值型字段:字段宽度数值型字段:字段宽度=整数部分宽度+小数点1位+小数位宽度小数位至少比整个字段宽度小2。第16页,本讲
8、稿共93页空值空值 NULL项项 允许该字段值为空或使用缺省数据,被设为关键字的字段值不允许为空。字段有效性组框字段有效性组框:定义字段的有效性规则、提示信息及设置缺省值。显示组框显示组框 设置字段的输入格式、显示格式、显示标题字段注释字段注释当前行前有一个双向箭头。第17页,本讲稿共93页二、表文件的打开与关闭二、表文件的打开与关闭 1、打开表文件、打开表文件命令法命令法:USE 表文件名功能功能:在当前工作区中,打开一指定的表文件。说明:扩展名可省略,如果原来已在该工作区中打开了一个表文件,则关闭它,再打开新的文件;打开后,记录指针指向第一个记录。窗口菜单法窗口菜单法:在“窗口”菜单中选择
9、“数据工作期”,单击“打开”。第18页,本讲稿共93页2、关闭表文件、关闭表文件格式格式:USE关闭在当前工作区中打开的表文件CLOSEDATABASE关闭所有工作区被打开的表文件CLOSE ALL 关闭所有工作区中的所有文件;QUIT关闭所有文件,且退出系统窗口菜单法窗口菜单法:在“窗口”菜单中选择“数据工作期”,选择欲关闭的表,单击“关闭”。第19页,本讲稿共93页3、表的独占与共享、表的独占与共享在网络环境下使用时,还要确定是独占还是共享。涉及表数据的安全性问题。独占打开独占打开:一张表只能被一个用户打开。共享打开共享打开:一张表可被多个用户同时打开。USE 表名 SHARED:以共享方
10、式打表。USE 表名 EXCLUSIVED:以独占方式打开表。第20页,本讲稿共93页三、修改表结构三、修改表结构1、菜单操作法、菜单操作法方法:打开欲修改的表,执行“显示”菜单中的“表设计器”。在“表设计器”窗口,修改表中所有字段的名字、类型、宽度和是否建立索引,完成对数据表结构的修改。2、命令法、命令法格式:MODIFY STRUCTURE 表文件名第21页,本讲稿共93页四、记录指针四、记录指针在向表输入数据时,系统按照其输入的前后顺序,给每一个记录赋予一个记录号。记录指针记录指针是VFP系统内部的一个指示器,用于确定当前正在操作的记录。(表中的数据以记录为单位操作)每当打开一个表文件时
11、,指针总是指向第一条记录。记录指针指向的记录叫当前记录当前记录,记录指针指向哪一个记录,这一个记录就是当前操作的记录,即当前记录。第22页,本讲稿共93页测试当前记录用函数RECNO()。最小值为1,最大值为RECCOUNT()+1。打开表时记录指针情况:表中无记录:BOF()=.T.EOF()=.T.RECNO()=1表中有记录:BOF()=.F.EOF()=.F.RECNO()=1 第23页,本讲稿共93页五、表中输入数据五、表中输入数据1.创建表时立即输入数据创建表时立即输入数据在创建表时,如果表中所有字段的属性已定义完成,可按“确定”按钮保存表结构,同时打开“系统”窗口,显示“现在输入
12、数据吗?”的对话。第24页,本讲稿共93页选择“是”按钮,可以立即进入表“浏览”窗口,进行表中数据的输入。2以追加方式输入数据以追加方式输入数据方法:方法:打开欲输入数据的表,执行“显示”菜单中的“浏览”,再执行“显示”菜单下的“追加方式”。第25页,本讲稿共93页3、命令法追加、命令法追加1)append命令在表的尾部增加记录,有两种格式:append 表尾增加一条记录,并输入数据。append blank 表尾增加一条空记录。2)insert 可在表的任何位置插入新的记录命令:INSERTBEFOREBLANK 功能:在当前库文件中当前记录的前或后边插入一条记录,并输入数据。第26页,本讲
13、稿共93页BEFORE:表示在当前记录前插入新记录,否则在当前记录后插入;BLANK:表示插入一条空记录,不进入全屏幕输入状态,反之则进入全屏幕输入状态输入数据。如:在第5条记录后插入一条记录:GO 5INSERT在第10条记录前插入一条空记录:GO 5INSERT BEFORE BLANK第27页,本讲稿共93页4、数据的输入要点、数据的输入要点备注型数据输入备注型数据输入方法:把光标移到备注型字段下双击,即可进入备注字段的编辑窗口。(输入完memo变成Memo)通用型数据的输入通用型数据的输入方法:把光标移到通用型字段下双击,进入通用型字段的数据编辑窗口。在“编辑”菜单中选择“插入对象”。
14、确定对象后,该字段中的gen变成Gen。第28页,本讲稿共93页六、使用浏览窗口操作表六、使用浏览窗口操作表1、打开浏览器窗口、打开浏览器窗口项目管理器项目管理器:列表中选择表,单击“浏览”。数据库设计器数据库设计器:选中表,单击“浏览”,或者右击表,选择“浏览”。使用命令使用命令:打开表以后,Browse。第29页,本讲稿共93页浏览器窗口有两种显示方式浏览器窗口有两种显示方式:编辑方式和浏览方式切换切换:在“显示”菜单中,选择“浏览”或者“编辑”。浏览窗口的分割浏览窗口的分割:拖动“分割”按钮。(在浏览器窗口左下角)2、浏览操作、浏览操作 调整字段显示宽度,调整字段的显示顺序(拖动),但表
15、结构不变。注意:执行浏览或者编辑命令后,菜单中出现“表”菜单项。第30页,本讲稿共93页在同一记录中选择字段在同一记录中选择字段:鼠标或enter 左箭头 右箭头 tab shift+table在上下记录间的切换在上下记录间的切换:鼠标或上下箭头翻页翻页:pageup pagedown3、增加记录、增加记录ctrl+y,以表尾增加一条新记录。4、修改记录、修改记录移动插入点到欲修改的记录上,直接修改。5、删除记录、删除记录ctrl+t,删除当前记录。第31页,本讲稿共93页七、删除记录命令(逻辑删除和物理删除)七、删除记录命令(逻辑删除和物理删除)删除记录分两步删除记录分两步:做删除标记(逻辑
16、删除)、彻底删除带标记的记录(物理删除)。1、置删除标记的命令、置删除标记的命令 方法1:在表“浏览”窗口,单击欲删除记录的删除标记。方法2:在“浏览”窗口,执行“表”菜单中的“删除记录”命令。方法3:delete for 条件表达式第32页,本讲稿共93页删除标记在存贮时,占一个字节。相关函数相关函数:DELETE()如:判断当前记录是否被设置删除标志:GO 6?DELETE()又如:显示当前库中所有设置了删除标志的记录:DISP ALL FOR DELETE()第33页,本讲稿共93页2、恢复记录的命令、恢复记录的命令对加上逻辑删除标记的记录,取消其删除标记,可对其进行恢复操作。方法方法1
17、:在表“浏览”窗口,单击欲恢复记录的删除标记。(开关性质)方法方法2:在“浏览”窗口中,执行“表”菜单中“恢复记录”命令;第34页,本讲稿共93页方法3:recall for 条件表达式 操作:将当前表中已经逻辑删除的男生记录恢复。Recall for 性别=”男”3、物理删除有删除标记的记录、物理删除有删除标记的记录物理删除物理删除就是把无效的记录彻底从磁盘中删除掉。方法1:在“浏览”窗口中,执行“表”菜单中“彻底删除记录”命令;第35页,本讲稿共93页方法2:pack。4、物理删除表中的全部记录、物理删除表中的全部记录zap一次删除所有记录。注:不管是否有删除标记,但表本身未被删除,表结构
18、依然存在。八、修改记录命令八、修改记录命令1、EDIT或或CHANGE命令交互式修改命令交互式修改。格式:EDIT/change第36页,本讲稿共93页2、REPLACE成批替换数据(重点)成批替换数据(重点)格式:REPLACE范围字段1WITH表达式1,字段2WITH表达式2FORWHILE条件 功能:对当前表文件中指定范围内满足条件的所有记录,用表达式的值替换字段中原有的值。如:REPLACE ALL 总分 WITH 数学+语文REPLACE ALL 基本工资 WITH 基本工资+100 FOR 职称=“教授”第37页,本讲稿共93页九、显示记录命令(九、显示记录命令(foxbasefo
19、xbase中更实用)中更实用)格式1:LIST范围字段名表达式FORWHILE条件OFFTO PRINT|TO FILE 文件名 格式2:DISPLAY范围字段名表达式FORWHILE条件OFFTO PRINT|TO FILE 文件名 功能:把满足条件的记录的指定字段的内容显示出来。后者可以分屏显示输出;如果不指定范围和条件,前者默认地输出全部记录,而后者只输出当前记录。第38页,本讲稿共93页十、查询定位命令十、查询定位命令1、窗口操作方式、窗口操作方式方法:打开要使用的表,在“显示”菜单下,选择“浏览”;在“表”菜单中,选择“转到记录”,子菜单中不同的选项,可以将记录指针移动到相应的记录上
20、。第39页,本讲稿共93页(1)选择“第一个”,确定第一个记录为当前记录;(2)选择“最后一个”,确定最后一个记录为当前记录;(3)选择“下一个”,确定当前记录的下一个记录为当前记录;(4)选择“前一个”,确定当前记录的前一个记录为当前记录;第40页,本讲稿共93页(5)选择“记录号”,便进入“转到记录”对话窗口,在“转到记录”对话框内,可以选择记录号,确定该记录号指定的记录为当前记录;(6)选择“定位”,进入“定位记录”窗口,在“定位记录”对话框内,输入定位条件表达式,确定满足定位条件表达式的第一个记录为当前记录。第41页,本讲稿共93页2、绝对定位命令、绝对定位命令格式:GO数值表达式 G
21、O TOP GO BOTTOM功能:将记录指针定位于首记录、尾记录或数值表达式的值所指定的记录。当前记录是谁,可以从状态行看出来;第42页,本讲稿共93页3、相对定位命令、相对定位命令格式:SKIP数值表达式 功能:将记录指针相对当前记录向下(正方向)或向上(负方向)移动数值表达式的值所指定的记录数。第43页,本讲稿共93页4、按条件定位、按条件定位、条件定位命令、条件定位命令LOCATE 格式:LOCATE范围FORWHILE条件 功能:在指定范围内将指针定位于满足条件的第一条记录,如果没找到满足条件的记录,则记录指针定位于表尾,EOF()函数为逻辑真。缺省范围选择时,取all,即在所有记录
22、中查找。如:LOCATE ALL FOR 姓名=“王”DISPLAY第44页,本讲稿共93页、继续查找命令、继续查找命令CONTINUE格式:CONTINUE功能:继续查找满足条件的下一条记录;重复多次使用CONTINUE命令,可找到满足条件的所有记录;第45页,本讲稿共93页、查询测试函数、查询测试函数FOUND格式:FOUND()功能:如果找到了满足条件的记录,则返回逻辑真,反之则返回逻辑假;第46页,本讲稿共93页通常的操作模式如下:Locate for 条件DO WHILE FOUND()处理CONTINUEENDDO用循环对满足条件的所有记录进行操作。第47页,本讲稿共93页第四节第
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 程序设计 教程
限制150内