VF课件4数据库及其操作_第1页
VF课件4数据库及其操作_第2页
VF课件4数据库及其操作_第3页
VF课件4数据库及其操作_第4页
VF课件4数据库及其操作_第5页
已阅读5页,还剩84页未读 继续免费阅读

下载本文档

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

文档简介

1、第4章VF PROGRAM DESIGN4.1 Visual FoxPro数据库及数据库及其建立其建立4.2 建立数据库表建立数据库表 4.3 自由表自由表 4.4 表的基本操作与相关命令表的基本操作与相关命令 第第 4 章章Visual FoxProVisual FoxPro数据库及其操作数据库及其操作 4.5 索引索引与排序与排序 4.6 数据完整性与表间永久性数据完整性与表间永久性关系关系 4.7 多个表的同时使用多个表的同时使用 4.14.1.1 数据库的组成和相关资源数据库的组成和相关资源数据表数据表就像一般就像一般的二维表的二维表一样,拥一样,拥有列与行。有列与行。 Visual

2、FoxProVisual FoxPro数据库及其建立数据库及其建立数据库数据库数据表数据表视图视图查询查询报表报表表单表单视图视图是是提取数据提取数据库记录、库记录、更新数据更新数据库数据的库数据的一种操作一种操作方式,方式,是是从一个或从一个或多个数据多个数据表中导出表中导出的的“表表”。 报表报表是用户是用户使用打使用打印机输印机输出数据出数据和文档和文档的一种的一种实用方实用方式。式。查询查询是是一种一种相对独立且功相对独立且功能强大、结果能强大、结果多样的数据库多样的数据库资源,资源,利用查利用查询可以实现对询可以实现对数据库中数据数据库中数据的浏览、筛选、的浏览、筛选、排序、检索、排

3、序、检索、统计和加工等统计和加工等操作操作。表单数据表单数据库应用系统库应用系统的主要工作的主要工作界面界面,表单,表单为数据库信为数据库信息的显示、息的显示、输入和编辑输入和编辑提供了非常提供了非常简便的方式。简便的方式。 默认目录的设置默认目录的设置4.1.2 创建数据库创建数据库 操作数据库的第一步是建立数据库操作数据库的第一步是建立数据库 。VF中数据库文件的扩展名中数据库文件的扩展名是是.DBC,还会自动建立扩展名为还会自动建立扩展名为.DCT的备注文件和扩展名为的备注文件和扩展名为.DCX的索的索引文件。引文件。 1数据库文件的建立数据库文件的建立 4.1.2 数据库文件的建立数据

4、库文件的建立2 操作操作 (1) 执行执行“文件文件”菜单的菜单的“新建新建”命令命令 (2) 选择文件类型为选择文件类型为“数据库数据库” (3) 单击单击“新建文件新建文件”按钮按钮 (4) 在在“数据库名数据库名”文件框中,输文件框中,输入建立的数据库名称入建立的数据库名称 (5) 单击单击“保存保存”按钮按钮 (6) 同时弹出数据库设计器同时弹出数据库设计器 建立数据库建立数据库4.1.3 数据库操作命令数据库操作命令1在在Visual FoxPro系统中,若要对数据库进行操作,必须先打开数据库。系统中,若要对数据库进行操作,必须先打开数据库。 若要数据库被创建后,该数据库就成为当前打

5、开的数据库若要数据库被创建后,该数据库就成为当前打开的数据库 格式:格式:CREATE DATABASE 数据库名数据库名 打开数据库打开数据库2如果不带参数或者使用如果不带参数或者使用“?”号,则弹出号,则弹出“打开打开”对话框,提示用对话框,提示用户选择要打开的数据库。户选择要打开的数据库。如果带参数如果带参数EXCLUSIVEEXCLUSIVE,则以独占方式打开数据库,其他用户无法访,则以独占方式打开数据库,其他用户无法访问。问。如果带参数如果带参数SHAREDSHARED,则以共享方式打开数据库,允许其他用户同时,则以共享方式打开数据库,允许其他用户同时访问。访问。 格式:格式:OPE

6、N DATABASE 库文件名库文件名|?EXCLUSIVESHARED 格式:格式:MODIFY DATABASE 数据库名数据库名|? 修改数据库修改数据库4.1.3 数据库操作命令数据库操作命令3该命令打开该命令打开“数据库设计器数据库设计器”窗口,以便修改数据库中的内容,窗口,以便修改数据库中的内容,“数据库名数据库名”是要修改的数据库名称;不带参数时,则打开当前数是要修改的数据库名称;不带参数时,则打开当前数据库的据库的“数据库设计器数据库设计器”窗口。窗口。 格式:格式:CLOSE DATABASES ALL 关闭数据库关闭数据库4如果不带参数如果不带参数ALLALL,则关闭当前数

7、据库以及它的所有表;如果当,则关闭当前数据库以及它的所有表;如果当前没有打开的数据库,则关闭所有工作区中的自由表、索引和格式前没有打开的数据库,则关闭所有工作区中的自由表、索引和格式文件;如果带参数文件;如果带参数ALLALL,则关闭所有打开的数据库和表、索引、格,则关闭所有打开的数据库和表、索引、格式文件。式文件。 4.24.2.1 在数据库中建立表在数据库中建立表建立数据库表建立数据库表 设计数据表的结构设计数据表的结构 在在Visual FoxProVisual FoxPro系统中,一张二维表对应一个数据表,称为表文件,系统中,一张二维表对应一个数据表,称为表文件,表文件的扩展名是表文件

8、的扩展名是.DBF.DBF,用户就是依据数据表名在磁盘上存取使用指定的用户就是依据数据表名在磁盘上存取使用指定的数据表。数据表。 一个数据表由一个数据表由数据表名数据表名、数据表的、数据表的结构结构、数据表的、数据表的记录记录三要素构成。三要素构成。 确定数据表的结构,也即定义数据表中的字段个数、各个字段的名确定数据表的结构,也即定义数据表中的字段个数、各个字段的名称、属性、类型、宽度称、属性、类型、宽度。 数据库表的字段名称最长可达数据库表的字段名称最长可达128128个字符。其中可以是汉字、英文字个字符。其中可以是汉字、英文字母、数字与下划线,但是数字与下划线绝对不能是第一个字符。母、数字

9、与下划线,但是数字与下划线绝对不能是第一个字符。 数值型字段具有小数位数,应注意小数点和正负号都须在字段宽度数值型字段具有小数位数,应注意小数点和正负号都须在字段宽度中占一位。中占一位。 由于表中每条记录都有一个删除标记,由于删除标记占用一个字节,由于表中每条记录都有一个删除标记,由于删除标记占用一个字节,因此表记录的宽度等于所有字段的宽度之和再加因此表记录的宽度等于所有字段的宽度之和再加1 1。 4.24.2.1 在数据库中建立表在数据库中建立表建立数据库表建立数据库表 设计数据表的结构设计数据表的结构 备注型字段(备注型字段(M M):如果所要存储的文字数据超过):如果所要存储的文字数据超

10、过254254个字符,此时个字符,此时必须使用备注型字段。事实上备注型字段的数据都是另外存储在一个与表必须使用备注型字段。事实上备注型字段的数据都是另外存储在一个与表文件同名,扩展名为文件同名,扩展名为.fpt.fpt的备注文件中。备注型字段在表文件中只占的备注文件中。备注型字段在表文件中只占4 4个字个字符的空间,但这只是指向其真实内容的地址指针。符的空间,但这只是指向其真实内容的地址指针。 通用型字段(通用型字段(G G):如果想要将图片、电子表格、文件、声音、影片、):如果想要将图片、电子表格、文件、声音、影片、统计分析图等数据存放在字段中,则必须使用通用型字段。通用型字段的统计分析图等

11、数据存放在字段中,则必须使用通用型字段。通用型字段的数据都是另外存储在一个与表文件同名,扩展名为数据都是另外存储在一个与表文件同名,扩展名为.fpt.fpt的备注文件中。的备注文件中。在数据库中建立表在数据库中建立表4.2.1 Student 表结构表结构字段名字段名称宽度学号字符型9姓名字符型10出生日期日期型8性别字符型2民族字符型10专业字符型10身高数值型6(2位小数)照片通用型4个人简介备注型4字段名字段名称宽度课程号字符型10课程名称字符型16课程类型字符型10学分数值型3(1位小数)学时整型4 Course 表结构表结构字段名字段名称宽度课程号字符型10学号字符型9考试时间日期型

12、8分数数值型10考试地点字符型10及格否逻辑型1 Scores 表结构表结构4.2.1 在数据库中建立表在数据库中建立表使用表设计器创建表使用表设计器创建表 操作步骤操作步骤 (1)打开)打开“文件文件”菜单,选择菜单,选择“新新建建”,进入新建窗口中。,进入新建窗口中。(2)在)在“新建新建”窗口,选择窗口,选择“表表”,再按再按“新建文件新建文件”按钮,进入创建窗按钮,进入创建窗口。口。(3)在)在“创建创建”窗口。输入要建立的窗口。输入要建立的表的名字表的名字“Student”;然后按;然后按“保存保存”按钮,进入按钮,进入“表设计器表设计器”窗口。窗口。(4)在在“表设计器表设计器”窗

13、口,逐一定义窗口,逐一定义表中所有字段的名字、类型、宽度表中所有字段的名字、类型、宽度,输入的信息也包括了是否选定字段为输入的信息也包括了是否选定字段为NULL值。值。(5)按)按“确定确定”按钮,提示是否输入按钮,提示是否输入记录的对话框出现。记录的对话框出现。 4.2.2 添加表记录添加表记录新建表后直接输入记录新建表后直接输入记录 操作步骤操作步骤 (1)结束表结构的定义后,打开结束表结构的定义后,打开如图如图4-9所示的所示的“编辑编辑”窗口。窗口。(2)在)在“编辑编辑”窗口中,初始只窗口中,初始只有一条空白记录,提示用户输入。有一条空白记录,提示用户输入。使用键盘输入数值型、字符型

14、、逻使用键盘输入数值型、字符型、逻辑型、日期型等常见数据类型的内辑型、日期型等常见数据类型的内容。容。(3)输入完成后,单击)输入完成后,单击“编辑编辑”窗口右上角的窗口右上角的“关闭关闭”按钮,系统按钮,系统将关闭数据表的将关闭数据表的“编辑编辑”窗口。窗口。 4.2.2 添加表记录添加表记录向已存在数据表输入记录向已存在数据表输入记录 操作步骤操作步骤 选择选择“文件文件”菜单,选中菜单,选中“打开打开”菜单项,则会弹出如图所示的菜单项,则会弹出如图所示的“打开打开”窗口。窗口。 在在“文件类型文件类型”下拉列表框中选择下拉列表框中选择“表表(*.DBF)”类型。类型。 选中选中“独占独占

15、”复选框,以独占方式复选框,以独占方式打开数据表文件,选择打开数据表文件,选择“Student.DBF”数据表文件,点击数据表文件,点击“确定确定”按钮。按钮。 点击点击“显示显示”菜单,选择菜单,选择“浏览浏览”菜单项,则会弹出菜单项,则会弹出“编辑编辑”窗口。窗口。 点击点击“显示显示”菜单,选择菜单,选择“追加方追加方式式”菜单项,之后的步骤与新建表后菜单项,之后的步骤与新建表后直接打开的直接打开的“编辑编辑”窗口情况相同。窗口情况相同。 4.2.2 添加表记录添加表记录备注型数据的输入备注型数据的输入 操作步骤操作步骤 (1)打开要输入数据的表。)打开要输入数据的表。(2)进入表)进入

16、表“编辑编辑”窗口或表窗口或表“浏览浏览”窗口。窗口。(3)在)在“编辑编辑”窗口或窗口或“浏览浏览”窗口,把光标移动到备注型字窗口,把光标移动到备注型字段下双击,即可进入备注字段段下双击,即可进入备注字段的编辑窗口。在这个窗口内,的编辑窗口。在这个窗口内,可以输入或修改备注型数据。可以输入或修改备注型数据。(4)当数据输入或修改完成后,)当数据输入或修改完成后,按按“关闭关闭”按钮,如果某条记按钮,如果某条记录的备注型字段中录的备注型字段中存在内容存在内容的的话,则在表中显示话,则在表中显示“Memo”,否则否则显示显示“memo”。 4.2.2 添加表记录添加表记录通用型数据的输入通用型数

17、据的输入 操作步骤操作步骤 通用型字段数据多数用于存储通用型字段数据多数用于存储OLE对象,如图像、声音、电子对象,如图像、声音、电子表格和字处理文档等表格和字处理文档等 ,长度不,长度不确定。确定。(1)打开要输入数据的表。)打开要输入数据的表。(2)进入表)进入表“编辑编辑”窗口或表窗口或表“浏览浏览”窗口。窗口。(3)在)在“编辑编辑”窗口或窗口或“浏览浏览”窗口,把光标移到通用型字段下窗口,把光标移到通用型字段下双击,即可进入通用字段的编辑双击,即可进入通用字段的编辑窗口。窗口。 (4)在系统主菜单下,打开)在系统主菜单下,打开“编辑编辑”菜单,选择菜单,选择“插入对插入对象象”,进入

18、,进入“插入对象插入对象”窗口。窗口。4.2.2 添加表记录添加表记录通用型数据的输入通用型数据的输入 操作步骤操作步骤 (5)在)在“插入对象插入对象”窗口,先窗口,先选择插入对象的类型,然后点击选择插入对象的类型,然后点击“确定确定”按钮完成新对象的插入:按钮完成新对象的插入:一般情况下插入的是已经存在的一般情况下插入的是已经存在的文件,如果要插入的对象是已经文件,如果要插入的对象是已经存在的文件,则可选择存在的文件,则可选择“由文件由文件创建创建”按钮,切换进入另一个按钮,切换进入另一个“插入对象插入对象”窗口。窗口。6)在)在“插入对象插入对象”窗口中,先窗口中,先在在“文件文件”文本

19、框中输入要插入文本框中输入要插入的文件对象的路径,或者选择的文件对象的路径,或者选择“浏览浏览”按钮选择要插入的文件按钮选择要插入的文件对象,再按对象,再按“确定确定”按钮。按钮。4.2.2 添加表记录添加表记录通用型数据的输入通用型数据的输入 操作步骤操作步骤 (7)在)在“插入对象插入对象”窗口完成窗口完成插入工作后,即可回到通用字段插入工作后,即可回到通用字段的编辑窗口,浏览到新插入的数的编辑窗口,浏览到新插入的数据文件了,如图所示。部分文件据文件了,如图所示。部分文件类型不能够被程序所正常处理,类型不能够被程序所正常处理,则只会显示文件的图标。如果某则只会显示文件的图标。如果某条记录的

20、通用型字段中条记录的通用型字段中存在内容存在内容的话,则在表中的话,则在表中显示显示“Gen”,否则否则显示显示“gen”。 4.2.2 添加表记录添加表记录数据输入要点数据输入要点 (1)表的数据可以通过记录编辑窗口按记录逐个字段输入。一旦在)表的数据可以通过记录编辑窗口按记录逐个字段输入。一旦在最后一个记录的任何位置输入数据,系统将会保存这条记录,并自动最后一个记录的任何位置输入数据,系统将会保存这条记录,并自动提供下一条新记录的输入位置。提供下一条新记录的输入位置。(2)逻辑型字段只能接受)逻辑型字段只能接受T,Y,F,N这这4个字母之一(不区分大小个字母之一(不区分大小写)。写)。T与

21、与Y同义,同义,F与与N同义。同义。(3)日期型数据必须与日期格式相符,默认按美国日期格式)日期型数据必须与日期格式相符,默认按美国日期格式MM/DD/YY进行输入,进行输入,MM用于表示月份,用于表示月份,DD用于表示日期,而用于表示日期,而YY用于表示年份。若要使用其它日期格式,可使用用于表示年份。若要使用其它日期格式,可使用“工具工具”菜单下的菜单下的“选项选项”进行修改,选择进行修改,选择“区域区域”选项卡,点击选项卡,点击“日期格式日期格式”下拉列下拉列表框进行选择。表框进行选择。 4.2.3 修改表结构修改表结构“表设计器表设计器” 也可以用于对已经存在的表进行修改,如增也可以用于

22、对已经存在的表进行修改,如增加或删除字段、改变字段属性等。修改过表结构后,可选加或删除字段、改变字段属性等。修改过表结构后,可选择择 “确定确定” 或或“取消取消”按钮对做出的修改进行确认或取消。按钮对做出的修改进行确认或取消。 “表设计器表设计器”是是Visual FoxPro系统中最重要的设计器,系统中最重要的设计器,在在“表设计器表设计器”中有字段、索引和表三个选项卡,分别对中有字段、索引和表三个选项卡,分别对应应创建表的字段、索引、完整性创建表的字段、索引、完整性约束三个阶段。约束三个阶段。 前提:数据表必须是打开的。前提:数据表必须是打开的。 修改表结构修改表结构4.2.31显示设置

23、显示设置显示设置用于指定输入和显示字段的格式。显示设置包括显示设置用于指定输入和显示字段的格式。显示设置包括“格式格式”、“输入掩码输入掩码”和和“标题标题”三项字段属性。三项字段属性。 格式的代码格式的代码功能功能A只允许英文字母,且不允许标点符号和空格只允许英文字母,且不允许标点符号和空格 D依照目前的规定格式来编辑与显示日期型和日期时间型数据依照目前的规定格式来编辑与显示日期型和日期时间型数据 K当鼠标游移至此字段时,便选取整个字段以便进行编辑当鼠标游移至此字段时,便选取整个字段以便进行编辑 T删除字段的前置空格与结尾空格删除字段的前置空格与结尾空格 $将数值数据以货币格式显示将数值数据

24、以货币格式显示 Z如果字段的内容为数值如果字段的内容为数值0,则它将显示空白。,则它将显示空白。 !可输入任何字符,但所有输入的英文字母将被转换成大写。可输入任何字符,但所有输入的英文字母将被转换成大写。 修改表结构修改表结构4.2.31显示设置显示设置利用利用“格式格式”属性,设置属性,设置“Student”数据表的数据表的“学号学号”字段,使其无法字段,使其无法出现前置空格与结尾空格。出现前置空格与结尾空格。 例例 打开打开“Student”数据表。数据表。 选择选择“显示显示”菜单下的菜单下的“表设计器表设计器”,进入,进入“表设计表设计器器”窗口。窗口。 选择选择“学号学号”字段,点击

25、字段,点击“格式格式”文本框,并在其中输文本框,并在其中输入入“T” (1)格式设置:设置字段显示时的大小写、字体大小和样式等内容。)格式设置:设置字段显示时的大小写、字体大小和样式等内容。修改表结构修改表结构4.2.3(2)输入掩码)输入掩码字段或控件的一种属性,用于字段或控件的一种属性,用于限制或控制限制或控制用户用户输入输入的格式的格式。这样字。这样字段中的值就具有了统一的风格,从而可以减少数据输入错误段中的值就具有了统一的风格,从而可以减少数据输入错误 。 掩码代码掩码代码功能功能A只能输入英文字母只能输入英文字母 L只能输入英文字母只能输入英文字母T或或F N只能输入英文字母和数字只

26、能输入英文字母和数字 Y只能输入英文字母只能输入英文字母Y、y、N和和n !可输入任何字符,但所有输入的英文字母将被转换成大写。可输入任何字符,但所有输入的英文字母将被转换成大写。 9只能输入字符数据的数字或数值数据的数字只能输入字符数据的数字或数值数据的数字 #只能输入数字、空格、正负号和英文句点只能输入数字、空格、正负号和英文句点(.) 利用利用“输入掩码输入掩码”属性,设置属性,设置“Student”数据表的数据表的“身高身高”字段,使其字段,使其固定为三位整数、一位小数点和两位小数的格式固定为三位整数、一位小数点和两位小数的格式 。例例 打开打开“Student”数据表。数据表。 选择

27、选择“显示显示”菜单下的菜单下的“表设计器表设计器”,进入,进入“表设计表设计器器”窗口。窗口。选择选择“身高身高”字段,点击字段,点击“输入掩码输入掩码”文本框,在其中文本框,在其中输入输入“999.99”,则该字段第,则该字段第四位固定为小数点,其他位只四位固定为小数点,其他位只能输入数值型数据的数字,设能输入数值型数据的数字,设置如图所示,点击置如图所示,点击“确定确定”按按钮完成设置。钮完成设置。 修改表结构修改表结构4.2.3(2)输入掩码)输入掩码为为Student数据表的数据表的“身高身高”字段设置注释字段设置注释 例例 打开打开“Student”数据表。数据表。 选择选择“显示

28、显示”菜单下的菜单下的“表设计器表设计器”,进入,进入“表设计表设计器器”窗口。窗口。选择选择“身高身高”字段,在字段,在“字字段注释段注释”编辑框中输入该字段编辑框中输入该字段的说明文字的说明文字“身高的单位是厘身高的单位是厘米米” 。修改表结构修改表结构4.2.32字段注释字段注释字段的说明文字字段的说明文字 Visual FoxPro中的字段有效性包括以下两项内容:中的字段有效性包括以下两项内容: (1)规则,是对字段内容进行有效性检查,可在规则框中输入规则表达)规则,是对字段内容进行有效性检查,可在规则框中输入规则表达式。如果输入的表达式比较复杂,可以单击文本框右端的按钮打开生成器式。

29、如果输入的表达式比较复杂,可以单击文本框右端的按钮打开生成器对话框,利用生成器辅助输入表达式,对话框,利用生成器辅助输入表达式,规则表达式的值必为逻辑型规则表达式的值必为逻辑型 。(2)信息,当输入的数据违反有效性规则时,显示的错误提示信息。)信息,当输入的数据违反有效性规则时,显示的错误提示信息。 修改表结构修改表结构4.2.33字段有效性字段有效性在字段级别对数据的约束在字段级别对数据的约束 所谓的有效性实质上是验证规则,就是所谓的有效性实质上是验证规则,就是用来检验用户输入至字段中的用来检验用户输入至字段中的数据是否满足特定的条件数据是否满足特定的条件。 打开打开“StudentStud

30、ent”数据表,选择数据表,选择“显示显示”菜单下的菜单下的“表设计器表设计器”,进,进入入“表设计器表设计器”窗口。窗口。例例:设置:设置“Student”数据表的数据表的“性别性别”字段,使其值只能是字段,使其值只能是“男男”或或“女女”,否则显示错误信息,否则显示错误信息“性别只能是男或女性别只能是男或女” 修改表结构修改表结构4.2.33字段有效性字段有效性在字段级别对数据的约束在字段级别对数据的约束 选择选择“性别性别”字段,在字段,在“规则规则”文本框中输入文本框中输入“ 性性别别$ $”男女男女” ”,在,在“信息信息”文本框中输入文本框中输入“性别只能是男性别只能是男或女或女”

31、 。 点击点击“确定确定”按钮完成设按钮完成设置,打开置,打开“浏览浏览”窗口尝试窗口尝试在在“性别性别”字段中输入非法字段中输入非法数据数据“NANNAN”,则当用户退出,则当用户退出“浏览浏览”窗口时,会出现错窗口时,会出现错误输入提示误输入提示 修改表结构修改表结构4.2.34字段的默认值字段的默认值为某一字段的内容所制定的一个初始值为某一字段的内容所制定的一个初始值 除非用户输入新值,否则默认值一直保留在该字段中。除非用户输入新值,否则默认值一直保留在该字段中。 进入进入“表设计器表设计器”窗口。选择窗口。选择“民族民族”字段,点击字段,点击“默认值默认值”文本框,文本框,在其中输入:

32、在其中输入: 汉汉 ,点击,点击“确定确定”按钮完成设置。按钮完成设置。例例:设置:设置“Student”数据表的数据表的“民族民族”字段默认值为字段默认值为“汉汉”,由于汉,由于汉族同学在很多学校占较大比例,以后添加新记录时,关于汉族同学的记录族同学在很多学校占较大比例,以后添加新记录时,关于汉族同学的记录输入工作效率会提高。输入工作效率会提高。 要设置字段的默认值,请先选定字段,然后将光标移至要设置字段的默认值,请先选定字段,然后将光标移至“默认值默认值”文文本输入框中,直接键入默认值。本输入框中,直接键入默认值。 所设置默认值的类型必须与该字段的数据类型相同,并且不可以和字所设置默认值的

33、类型必须与该字段的数据类型相同,并且不可以和字段的有效性规则相冲突。段的有效性规则相冲突。 使用使用”浏览浏览”窗口操作表窗口操作表4.2.41改变行列的宽度和高度改变行列的宽度和高度 “编辑编辑”窗口和窗口和“浏览浏览”窗口在表的创建工作中可以用于表记录的添窗口在表的创建工作中可以用于表记录的添加,对于已经建立好的数据表,也可以使用加,对于已经建立好的数据表,也可以使用“编辑编辑”窗口和窗口和“浏览浏览”窗窗口对表中记录进行显示、添加和修改。口对表中记录进行显示、添加和修改。 打开表,进入表打开表,进入表“浏览浏览”窗口。窗口。 在表在表“浏览浏览”窗口的左下角有一个小黑竖条(称为窗口拆分条

34、),窗口的左下角有一个小黑竖条(称为窗口拆分条),把它拖到一个适当的位置,就可以把把它拖到一个适当的位置,就可以把“浏览浏览”窗口拆分成为两个窗口,窗口拆分成为两个窗口,选定其中一个窗口,再选择显示菜单中的选定其中一个窗口,再选择显示菜单中的“编辑编辑”项,则可将窗口改项,则可将窗口改变成有变成有“浏览浏览”和和“编辑编辑”两种显示方式的窗口。两种显示方式的窗口。 在两种显示风格并存的窗口中,当前窗口与另一个窗口同步移动,在两种显示风格并存的窗口中,当前窗口与另一个窗口同步移动,若想让两个窗口不联动,打开若想让两个窗口不联动,打开“表表”菜单,选择菜单,选择“链接分区链接分区”菜单项,菜单项,

35、即会去掉该菜单项的选中状态,则光标只对当前窗口有效。即会去掉该菜单项的选中状态,则光标只对当前窗口有效。 例例:使:使Student表以浏览、编辑两个窗口方式同时显示表以浏览、编辑两个窗口方式同时显示 2以以“浏览浏览”、“编辑编辑”两个窗口方式同时显示数据表两个窗口方式同时显示数据表 使用使用”浏览浏览”窗口操作表窗口操作表4.2.43改变字段的显示顺序改变字段的显示顺序 方法是将鼠标放在想移动的字段名上,当它变成一个向下的黑色箭头方法是将鼠标放在想移动的字段名上,当它变成一个向下的黑色箭头时,按住鼠标左键,拖到合适的位置放开即可。时,按住鼠标左键,拖到合适的位置放开即可。 4删除记录删除记

36、录 步骤:先给记录加删除标记;然后再通过命令从磁盘上移去要删除的步骤:先给记录加删除标记;然后再通过命令从磁盘上移去要删除的记录。在移去做了删除标记的记录之前,它们仍然存在于磁盘上,并可记录。在移去做了删除标记的记录之前,它们仍然存在于磁盘上,并可以撤销删除标记,恢复成原来的状态。以撤销删除标记,恢复成原来的状态。在在“浏览浏览”窗口中,可以为记录设置或取消删除标记。在每条记录左窗口中,可以为记录设置或取消删除标记。在每条记录左边都有一个白色的小方框,它是记录的删除标记。单击删除标记,可以边都有一个白色的小方框,它是记录的删除标记。单击删除标记,可以令它在黑色和白色之间切换,黑色表示对应的记录

37、已经加上了删除标记,令它在黑色和白色之间切换,黑色表示对应的记录已经加上了删除标记,改为白色则是代表取消删除标记。改为白色则是代表取消删除标记。 4.34.3.1 数据库表与自由表数据库表与自由表自由表自由表在Visual FoxPro系统中,表(或.DBF文件)可以区分为数据库表和自由表 从属于某一数据库的表统称为数据库表从属于某一数据库的表统称为数据库表 ,数据表中所包含的数据相互之数据表中所包含的数据相互之间具有这样那样的联系间具有这样那样的联系。 自由表则是一类通常单独使用的数据表,它不属于任何一个数据库,其中的数据内容往往与其它表中的数据没有多少联系。 数据库表既可以利用数据库设计器

38、来建立,也可将自由表添加到数据库中使它成为数据库表;而数据库中的表可以被执行移去命令,被移去的表从数据库表成为自由表。 自由表的表设计器与数据库表相比有很大不同,在“字段”选项卡中,没有“显示”设置、“字段有效性”设置和“字段注释”设置,这些功能设置都是数据库表所独有的。确定当前环境中没有打开任何数据库的条件下,来创建自由表确定当前环境中没有打开任何数据库的条件下,来创建自由表 。!4.3.2 将自由表添加到数据库将自由表添加到数据库将Course自由表添加到数据库“学生成绩”中,可执行如下操作步骤: (1)Visual FoxPro 系统主菜单下,打开系统主菜单下,打开“文件文件”菜单,以独

39、占方式打开菜单,以独占方式打开“学生成绩学生成绩”数据库。数据库。(2)打开)打开“数据库数据库”菜单,选择菜单,选择“添加表添加表”菜单项。菜单项。(3)在弹出的文件浏览窗口中选择)在弹出的文件浏览窗口中选择Course.DBF文件,点击文件,点击“确定确定”按钮,按钮,即完成添加数据表的操作。即完成添加数据表的操作。(4)在数据库设计器可以看到数据表)在数据库设计器可以看到数据表Course.DBF,之后可对其进行数据,之后可对其进行数据库表的操作,如设置库表的操作,如设置“字段有效性字段有效性”或设置或设置“字段注释字段注释”。4.3.3 从数据库表中移出表从数据库表中移出表如果要将“学

40、生成绩”数据库中的Course表移出数据库,可执行如下操作步骤: (1)Visual FoxPro 系统主菜单下,打开系统主菜单下,打开“文件文件”菜单,以独占方式打开菜单,以独占方式打开“学生成绩学生成绩”数据库。数据库。(2)点击)点击“Course”数据表的图标将其选中,然后打开数据表的图标将其选中,然后打开“数据库数据库”菜单,菜单,选择选择“移去移去”菜单项。菜单项。(3)在弹出的对话框(如图)在弹出的对话框(如图4-31所示)中选择所示)中选择“移去移去”,则该数据表会成则该数据表会成为一个自由表为一个自由表,不再从属于,不再从属于“学生成绩学生成绩”数据库。注意不要选择数据库。注

41、意不要选择“删除删除”,选择选择“删除删除”将使该数据表的文件被从磁盘上删除掉将使该数据表的文件被从磁盘上删除掉。 4.44.4.1 打开和关闭数据库表的命令打开和关闭数据库表的命令表的基本操作与相关命令表的基本操作与相关命令1用于打开数据表的USE命令无论对表进行哪一种操作,无论对表进行哪一种操作,首先要打开数据表首先要打开数据表 。!格式格式: USE 数据库名数据库名!.表名表名|视图名视图名 IN EXCLUSIVE|SHARED 所谓所谓“打开打开”,就是将表文件的控制信息和具体内容读入内存的工,就是将表文件的控制信息和具体内容读入内存的工作区中,以便程序或用户访问数据。所谓作区中,

42、以便程序或用户访问数据。所谓“关闭关闭”,就是释放文件所占,就是释放文件所占用的内存区域,将文件更新的内容保存到外存储器中。用的内存区域,将文件更新的内容保存到外存储器中。 说明说明:工作区号是用于打开数据表的工作区的编号。工作区号是用于打开数据表的工作区的编号。每个打开的表都要在每个打开的表都要在存储器中开辟一个存储区域存储器中开辟一个存储区域,这个存储区域就叫做工作区。,这个存储区域就叫做工作区。一般情况下一般情况下工作区使用数字编号工作区使用数字编号 。 4.4.1 打开和关闭数据库表的命令打开和关闭数据库表的命令说明说明:工作区号工作区号,如果命令中出现的工作区编号是如果命令中出现的工

43、作区编号是0 0,则在当前序号最小的,则在当前序号最小的可用空闲工作区中打开文件可用空闲工作区中打开文件。当打开表文件时,如果不人为指定工作区,。当打开表文件时,如果不人为指定工作区,Visual FoxProVisual FoxPro将自动选择序号最小的可用工作区打开数据表文件。表将自动选择序号最小的可用工作区打开数据表文件。表的别名是一个名称,通过它可以使用在工作区中打开的表。的别名是一个名称,通过它可以使用在工作区中打开的表。 EXCLUSIVEEXCLUSIVE以独占方式打开数据表(默认)。以独占方式打开数据表(默认)。SHAREDSHARED以共享方式打开数据表以共享方式打开数据表

44、如果使用如果使用USEUSE命令命令时时不加任何参数不加任何参数,则是用于,则是用于关闭数据表关闭数据表。 例:例:在当前工作区打开在当前工作区打开Student数据表,然后关闭数据表数据表,然后关闭数据表 USE Student USE 例:例:在当前最小的三个可用空闲工作区依次打开在当前最小的三个可用空闲工作区依次打开Student、Scores和和Course数据表数据表 USE Student IN 0 USE Scores IN 0 USE Course IN 0 打开表时一般应该加打开表时一般应该加“IN 0”,否则将,否则将会在当前工作区打开表,冲掉工作区会在当前工作区打开表,冲

45、掉工作区中原来打开的数据表。中原来打开的数据表。 !4.4.1 打开和关闭数据库表的命令打开和关闭数据库表的命令2SELECT 命令命令 格式格式: SELECT IN 用于选择用于选择Visual FoxProVisual FoxPro中的工作区中的工作区 功能功能:在当前最小的两个可用空闲工作区依次打开在当前最小的两个可用空闲工作区依次打开Student和和Course数据表:数据表: SELE 0 USE Student SELE 0 USE Course工作区号用于指定工作区的编号,它是一个整数;表别名用于指定工作区号用于指定工作区的编号,它是一个整数;表别名用于指定工作区中表的别名,

46、它是一个字符串。工作区中表的别名,它是一个字符串。选择未被占用的最小号工作区可以使用选择未被占用的最小号工作区可以使用SELECT 0 SELECT 0 命令。命令。 例:例:在工作区在工作区1和工作区和工作区2中分别打开中分别打开Student和和Course数据表数据表 SELE 1 USE Student SELE 2 USE Course4.4.2 表中记录操作命令的常用子句表中记录操作命令的常用子句1显示指定字段内容子句显示指定字段内容子句 格式格式: FIELDS 功能功能:FIELDS 姓名姓名,性别性别,民族民族关键字关键字FIELDSFIELDS可省略;可省略;其中其中 即为

47、字段名称系列,而各个字段名称之间使用即为字段名称系列,而各个字段名称之间使用逗号分隔。逗号分隔。例:例:4.4.2 表中记录操作命令的常用子句表中记录操作命令的常用子句2范围子句范围子句 格式格式: SCOPE ALL | RECORD N | NEXT N | REST 功能功能:范围子句范围子句SCOPESCOPE可以限定显示记录的范围,即确定该命令涉及的记录可以限定显示记录的范围,即确定该命令涉及的记录 缺省范围子句时默认范围通常默认为缺省范围子句时默认范围通常默认为ALL ALL 3FOR子句子句 格式格式: FOR 功能功能:在命令中加入在命令中加入FOR FOR 子句,可指定范围内

48、查找符合条件子句,可指定范围内查找符合条件的记录,而且只有这些符合条件记录会被命令所操作。的记录,而且只有这些符合条件记录会被命令所操作。 4.4.2 表中记录操作命令的常用子句表中记录操作命令的常用子句4WHILE子句子句 格式格式: WHILE 功能功能:在命令中加入在命令中加入WHILEWHILE子句,会子句,会从当前记录开始从当前记录开始,逐一测逐一测试记录是否满足条件试记录是否满足条件,命令将对包括当前记录在内的一组连,命令将对包括当前记录在内的一组连续的满足条件的记录进行操作,表中其他记录将不会被操作;续的满足条件的记录进行操作,表中其他记录将不会被操作;如果当前记录不满足条件,将

49、没有任何记录被命令所操作。如果当前记录不满足条件,将没有任何记录被命令所操作。 4.4.3 显示记录的命令显示记录的命令1显示记录命令的语法格式显示记录命令的语法格式 格式格式:LIST/DISPLAY FIELDS FOR WHILE 功能功能:在表中按指定范围与条件筛选出记录并显示出来,在表中按指定范围与条件筛选出记录并显示出来,LISTLIST命令默认操命令默认操作范围是所有数据记录(即作范围是所有数据记录(即 ALLALL),而),而DISPLAYDISPLAY命令的默认操作范围是命令的默认操作范围是当前数据记录当前数据记录 1)显示)显示Student数据表中所有记录,要求完整显示所

50、有字段数据表中所有记录,要求完整显示所有字段 例:例:USE StudentLIST4.4.3 显示记录的命令显示记录的命令2)显示)显示Student数据表中第数据表中第1条到第条到第5条记录,要求完整显示所有字段条记录,要求完整显示所有字段 例:例:USE StudentLIST NEXT 53)显示)显示Student数据表中第数据表中第8条记录,要求完整显示所有字段条记录,要求完整显示所有字段 USE StudentLIST RECORD 84)显示)显示Student数据表中所有记录,要求显示姓名数据表中所有记录,要求显示姓名,性别性别,民族三个字段民族三个字段 USE Studen

51、tLIST FIELDS 姓名姓名,性别性别,民族民族5)显示)显示Student数据表中所有计算机科学专业的学生记录,要求完整显示所数据表中所有计算机科学专业的学生记录,要求完整显示所有字段有字段 USE StudentLIST FOR 专业专业=计算机科学计算机科学4.4.3 显示记录的命令显示记录的命令(1 1)命令动词与子句、子句与子句、子句的)命令动词与子句、子句与子句、子句的各部分之间必须各部分之间必须用空格隔开用空格隔开,但各个子句的,但各个子句的次序允许任意排列次序允许任意排列。(2 2)命令动词与各子句的)命令动词与各子句的保留字保留字,包括,包括函数的名字都可以简函数的名字

52、都可以简写为前四个字母写为前四个字母,而且对于其中出现的英文字母,使用大小写,而且对于其中出现的英文字母,使用大小写等效。等效。(3 3)一条命令的长度可达)一条命令的长度可达81928192个字符,若一行写不下,可在个字符,若一行写不下,可在适当位置输入适当位置输入续行符续行符“; ;”并回车并回车,然后在下一行中继续键入该,然后在下一行中继续键入该命令。命令。(4 4)命令或函数格式中以)命令或函数格式中以“| |”分隔开的两项表示两者之中只分隔开的两项表示两者之中只选其一;用中括号选其一;用中括号“ ”括起来的部分表示可选项;用尖括号括起来的部分表示可选项;用尖括号“”括起来的部分表示由

53、用户定义的内容,但这些符号并非括起来的部分表示由用户定义的内容,但这些符号并非命令或函数的组成部分。命令或函数的组成部分。2命令和子句的书写规则命令和子句的书写规则4.4.4 删除记录的命令删除记录的命令1为记录加删除标记为记录加删除标记 格式格式: DELETE FOR 功能功能:该命令用于对符合条件的记录该命令用于对符合条件的记录加删除标记加删除标记。本命令的作用相当于在。本命令的作用相当于在“表表”菜单下执行菜单下执行“删除记录删除记录”命令。其中命令。其中 子句用于指定范围,子句用于指定范围,而而FORFOR子句用于指出须符合的条件。相当于在子句用于指出须符合的条件。相当于在“表表”菜

54、单下执行菜单下执行“删除删除记录记录”命令。命令。 1)对)对Student表中的所有专业为表中的所有专业为“工业自动化工业自动化”的记录加上删除标的记录加上删除标记记 例:例:CLOSE ALLUSE StudentDELETE FOR 专业专业=工业自动化工业自动化BROWSE LAST 4.4.4 删除记录的命令删除记录的命令1为记录加删除标记为记录加删除标记 2)对)对Student表中记录号表中记录号1到到5的记录加上删除标记的记录加上删除标记 例:例:CLOSE ALLUSE StudentGO 1DELETE NEXT 5BROW 2从磁盘上删除带有删除标记的记录从磁盘上删除带有

55、删除标记的记录 格式格式: PACK MEMO DBF 功能功能:PACKPACK命令可以将那些被逻辑删命令可以将那些被逻辑删除的记录实际移出表。此命令相当除的记录实际移出表。此命令相当于执行于执行“表表”菜单下的菜单下的“彻底删除彻底删除”命令。命令。 4.4.4 删除记录的命令删除记录的命令3取消带有删除标记的记录取消带有删除标记的记录 格式格式: RECALL FOR 功能功能:对当前表在指定范围内满足对当前表在指定范围内满足FORFOR条件子句的记录条件子句的记录去掉删除标记去掉删除标记,可,可以恢复被以恢复被DELETEDELETE命令标示成删除状态的记录命令标示成删除状态的记录,

56、,若各子句都缺省,则只恢若各子句都缺省,则只恢复当前记录。复当前记录。 逻辑删除表中所有出生年份逻辑删除表中所有出生年份为为1989年的记录,然后对其年的记录,然后对其中所有专业为中所有专业为“计算机科学计算机科学”的记录进行取消删除标记的的记录进行取消删除标记的操作,最后从磁盘上删除带操作,最后从磁盘上删除带有删除标记的记录:有删除标记的记录: 例:例:USE StudentDELETE FOR YEAR(出生日期出生日期)=1989BROWSE LASTRECALL ALL FOR 专业专业=计算机科学计算机科学BROWSE LASTPACKBROWSE LAST4.4.4 删除记录的命令

57、删除记录的命令4彻底删除表中所有记录彻底删除表中所有记录 格式格式: ZAP 功能功能:使用使用ZAPZAP命令可一次性将命令可一次性将当前表中所有记录彻当前表中所有记录彻底删除底删除。数据记录虽然被删除了,但数据表的结。数据记录虽然被删除了,但数据表的结构仍完整地存在。鉴于此命令相当于构仍完整地存在。鉴于此命令相当于DELETE ALLDELETE ALL和和PACKPACK联用联用 4.4.5 修改记录值的命令修改记录值的命令格式格式: REPLACE WITH , WITH . FOR 功能功能:多数程序中,多数程序中,REPLACEREPLACE只用于对一个字段进行修改。只用于对一个字

58、段进行修改。FORFOR子句用子句用于指出表中哪些记录将被修改,于指出表中哪些记录将被修改, 则指出命令修改记录的操作则指出命令修改记录的操作范围。这里的默认范围是当前记录。范围。这里的默认范围是当前记录。 4.4.5 修改记录的命令修改记录的命令(1)使用使用REPLACE命令修改命令修改scores表中课程号为表中课程号为07001,学号为,学号为A01001的记录,将其分数字段修改为的记录,将其分数字段修改为100。 例:例:REPLACE 分数分数 with 100 for 课程号课程号=07001 and 学号学号=A01001(2)使用使用REPLACE命令修改命令修改scores

59、表中所有分数字段值为表中所有分数字段值为100。 REPLACE all 分数分数 with 1004.4.6 查询定位命令与相关函数查询定位命令与相关函数当前记录当前记录记录指针总是指向某一条记录,这条记录就叫做当前记录记录指针总是指向某一条记录,这条记录就叫做当前记录 记录指针记录指针按照记录输入的先后次序,系统自动为每一条记录赋予了按照记录输入的先后次序,系统自动为每一条记录赋予了记录号,表中也存在着一个与记录号,表中也存在着一个与“记录号记录号”对应的指针对应的指针 表文件一旦打开,表中的记录指针是可以移动的,所以当前记录是某一表文件一旦打开,表中的记录指针是可以移动的,所以当前记录是

60、某一时刻的操作对象。时刻的操作对象。数据表中记录的定位,实质上就是确定哪一个记录为当前数据表中记录的定位,实质上就是确定哪一个记录为当前记录记录。 4.4.6 查询定位命令与相关函数查询定位命令与相关函数1GO | GOTO命令命令 格式格式:功能功能: 用于记录的绝对位置定位,执行后系统将记录指针指向某个记用于记录的绝对位置定位,执行后系统将记录指针指向某个记 录,使之成为当前记录录,使之成为当前记录 TOPTOP,确定当前表中第一个记录为当前记录,确定当前表中第一个记录为当前记录 BOTTOMBOTTOM,确定当前表中最后一个记录为当前记录,确定当前表中最后一个记录为当前记录 GO | GOTO / GO TOPBOTTOM2 RECNO()函数函数 获取当前

温馨提示

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

评论

0/150

提交评论