化学化工学院VisualFoxPro课程没有最好,只有更好第4章VFP数据库及其操作化学化工学院VisualFoxPro课程没有最好,只有更好4.1创建项目1.建立工作目录组织和管理磁盘中的各类文件。2.建立项目文件(1)菜单选择“文件|新建”命令单击常用工具栏中的“新建”按钮(2)命令:CREATEPROJECT[项目文件名]3.打开项目文件(1)菜单:选择“文件|打开”命令或单击常用工具栏中的“打开”按钮,在“打开”对话框中选择一个项目文件(*.PJX)。(2)命令:MODIFYPROJECT[项目文件名]化学化工学院VisualFoxPro课程没有最好,只有更好4.1创建项目创建项目的方法化学化工学院VisualFoxPro课程没有最好,只有更好4.2.1数据库的设计思想1.设计步骤(1)分析数据需求,确定数据库要存储哪些信息。(2)确定需要的数据表。(3)确定所需字段,即每个表中要存储的信息(表的结构)。(4)确定关系,即各表之间的数据应该如何进行连接。(5)改进设计2.设计过程(1)明确设计目的(2)确定需要的数据表(3)确定表中需要的字段(4)确定表间关系(5)优化设计化学化工学院VisualFoxPro课程没有最好,只有更好4.2.2数据库的创建数据库(.DBC)存储了所包含的表和表之间的关系,以及依赖于表的视图、连接和存储过程等信息。把表放入数据库中可以减少数据的冗余,保护数据的完整性。1.建立数据库(1)项目管理器:“新建:数据库”(2)菜单:“文件|新建:数据库”(3)命令:CREATEDATABASE数据库名2.在项目中添加数据库方法是:在项目管理器中选定“数据库”项,单击“添加”按钮,在“打开”对话框中选择需要添加的数据库文件。化学化工学院VisualFoxPro课程没有最好,只有更好4.2.2数据库的创建选择“数据库”项单击“新建”按钮利用项目管理器建立数据库化学化工学院VisualFoxPro课程没有最好,只有更好4.2.3数据库的基本操作1.打开数据库(1)项目管理器:选定要打开的数据库,单击“打开”按钮。(2)菜单:选择“文件|打开”命令(3)命令①打开数据库文件OPENDATABASE[数据库文件名]②打开数据库文件所对应的数据库设计器MODIFYDATABASE[数据库文件名]化学化工学院VisualFoxPro课程没有最好,只有更好4.2.3数据库的基本操作2.关闭数据库(1)项目管理器:选定要关闭的数据库,单击“关闭”按钮。(2)命令:CLOSEDATABASES3.删除数据库(1)项目管理器:选定要删除的数据库,单击“移去”按钮,在对话框中选择“移去”命令,将从项目中移去选定的库文件;选择“删除”命令,则将选定的库文件从磁盘上删除。(2)命令:DELETEDATABABE数据库文件名化学化工学院VisualFoxPro课程没有最好,只有更好4.3创建数据表1.数据表和数据库表(Table)是处理数据和建立关系型数据库及应用程序的基本元素。数据库(DATABASE)是表的集合。2.数据表的类型(1)自由表:不属于任何数据库而独立存在的表(2)数据库表:属于某一数据库的表使用项目管理器中的“移去”/“添加”命令,可以在数据库表和自由表之间相互转换。3.数据表的结构形式上是一组相关联的数据按行和列排列的二维表格,用来描述一个实体。表中的每一列称为一个字段,每一行称为一条记录。化学化工学院VisualFoxPro课程没有最好,只有更好4.3.1基本概念定义字段为每个字段指定名称、数据类型和宽度,它们决定了表中的数据是如何被标识和保存的。(1)字段名以字母或汉字开头,由字母、汉字、数字或下划线组成,不能包含空格。数据库表字段名最长为128个字符,自由表字段名最长为10个字符。(2)字段类型决定了存储在字段中的值的数据类型,有13种:字符型(C)、货币型(Y)、数值型(N)、浮点型(F)、日期型(D)、日期时间型(T)、双精度型(B)、整型(I)、逻辑型(L)、备注型(M)、通用型(G)、字符型(二进制)、备注型(二进制)。化学化工学院VisualFoxPro课程没有最好,只有更好4.3.1基本概念(3)字段宽度指能够容纳存储数据的长度,字符型字段不得大于254个字节;浮点型和数值型字段的宽度为整数位和小数位的和再加1(小数点占一位),最多20位。(4)小数位若字段的类型是数值型(N)和浮点型(F),还需给出小数位数。小数位数不能大于9,双精度型数据的小数位数不能大于18。(5)使用空值在建立数据表时,可以指定字段是否接受空值(NULL)。输入数据即给每个字段赋值。化学化工学院VisualFoxPro课程没有最好,只有更好4.3.2自由表的建立1.定义表结构利用“表设计器”创建表的结构。打开表设计器有以下几种方法。(1)菜单:选择“文件|新建”命令。(2)命令:Create表文件名(3)项目管理器:在“数据”选项卡中选择“自由表”,单击“新建”命令。定义表结构就是设置表的字段属性,包括字段名、数据类型、字段宽度和小数位数等。化学化工学院VisualFoxPro课程没有最好,只有更好打开表设计器的方法4.3.2自由表的建立化学化工学院VisualFoxPro课程没有最好,只有更好4.3.2自由表的建立2.输入记录选择“显示”菜单下的“浏览”或“编辑”命令,打开“浏览”或“编辑”窗口。(1)一般数据的输入字符型、数值型、逻辑型、日期型等字段类型可直接在浏览窗口或编辑窗口中输入数据。(2)备注型字段数据的输入双击名为“memo”的备注字段标志,进入备注窗口,输入文本内容。(3)通用型字段数据的输入双击名为“gen”的通用字段标志,进入通用型字段的输入编辑窗口。选择“编辑|插入对象”命令,打开“插入对象”对话框,插入OLE对象。要删除备注字段或通用字段的内容,可双击字段名,打开编辑窗口,选择“编辑|清除”命令。化学化工学院VisualFoxPro课程没有最好,只有更好4.3.3数据库表的建立1.在数据库中建立新表(1)项目管理器:在“数据”选项卡中,单击“数据库”项前的“+”号,展开该数据项;然后选定“表”,再单击“新建”按钮。使用项目管理器创建的表自动包含在项目文件中。(2)当数据库处于打开状态时,用建立自由表的方法创建的新表将包含在该数据库中。2.将自由表添加到数据库(1)项目管理器:在“数据”选项卡中展开”数据库“项,选择“表”项,再单击“添加”按钮。(2)命令:ADDTABLE数据表文件名化学化工学院VisualFoxPro课程没有最好,只有更好4.3.3数据库表的建立数据库中的表只能属于一个数据库文件,如果向当前数据库中添加的表已属于其它数据库,则需要先从其它数据库中移去该数据表,然后才能将它添加到当前数据库中。3.从数据库中移去数据表(1)项目管理器:选中要移去的表,单击“移去”按钮,在提示对话框,选择“移去”。若选择“删除”,则不仅从数据库中移去该表,同时也从磁盘上删除了该表。(2)命令:REMOVETABLE数据表文件名化学化工学院VisualFoxPro课程没有最好,只有更好移去数据库表时的提示框4.3.3数据库表的建立化学化工学院VisualFoxPro课程没有最好,只有更好4.4.1数据表的浏览1.打开数据表(1)菜单:选择“文件|打开”命令。(2)命令:USE[表文件名]2.浏览与显示表结构(1)浏览表结构①项目管理器:选定要浏览的表,单击“修改”按钮,打开表设计器。②菜单:选择“文件|打开”命令,打开要浏览的数据表;然后选择“显示|表设计器”命令,打开表设计器。(2)显示表结构(主窗口)命令:LIST|DISPLAYSTRUCTURE化学化工学院VisualFoxPro课程没有最好,只有更好4.4.1数据表的浏览3.浏览与显示记录(1)在浏览窗口中浏览记录①项目管理器:选定要浏览的表,单击“浏览”按钮。对于备注型字段或通用型字段内容,可以在浏览窗口中双击相应的字段标志(“Memo”或“Gen”),打开编辑窗口浏览。②菜单:选择“文件|打开”命令,打开要浏览的数据表。然后从“显示”菜单中选择“浏览”或“编辑”命令,打开浏览窗口。③命令:BROWSE化学化工学院VisualFoxPro课程没有最好,只有更好4.4.1数据表的浏览(2)在浏览窗口中有选择地浏览记录①菜单:打开浏览窗口,选择“表|属性”命令,打开“工作区属性”对话框。在“数据过滤器”中输入筛选条件,可以只显示满足筛选条件的记录。删除筛选表达式,可恢复显示所有记录。在“工作区属性”对话框的“允许访问”栏中,选中“字段筛选指定的字段”选项,单击“字段筛选”按钮,打开“字段选择器”对话框,选择要显示的字段,可以只显示选定的字段内容。若在“允许访问”栏内选择“工作区中的所有字段”选项,可取消对字段访问的限制,恢复显示所有字段。化学化工学院VisualFoxPro课程没有最好,只有更好“工作区属性”对话框:设置数据过滤器输入筛选条件4.4.1数据表的浏览化学化工学院VisualFoxPro课程没有最好,只有更好“工作区属性”对话框:设置字段筛选4.4.1数据表的浏览化学化工学院VisualFoxPro课程没有最好,只有更好4.4.1数据表的浏览②命令设置数据过滤器:SETFILTERTO[条件表达式]设置字段过滤器:SETFIELDSTOALL|字段名表(3)显示记录(主窗口)命令:LIST|DISPLAY[范围][FIELDS字段名表][WHILE条件][FOR条件]例如,要显示“学生”表中所有女生的学号、姓名和所在系的信息,可使用以下命令:USEE:\VFP6\DATA\学生.DBF&&打开学生表LISTFIELDS学号,姓名,系别FOR性别=”女”化学化工学院VisualFoxPro课程没有最好,只有更好4.4.2记录的定位1.记录指针记录指针存放的是记录号。向表中录入数据时,系统会按照录入次序为记录加上记录号。数据表刚打开时,记录指针总是指向首记录;通过移动记录指针可以指定当前要操作的记录。数据表文件的逻辑结构首记录(TOP)第2条记录文件起始标识(BOF)第n-1条记录尾记录(Bottom)文件结束标识(EOF)…………记录指针化学化工学院VisualFoxPro课程没有最好,只有更好4.4.2记录的定位4.移动记录指针(1)菜单:打开浏览窗口,选择“表|转到记录”命令。化学化工学院VisualFoxPro课程没有最好,只有更好4.4.2记录的定位(2)命令绝对移动:GO记录号|TOP|BOTTOM功能:将记录指针定位在指定记录号的记录上。TOP表示第一条记录,BOTTOM表示最后一条记录。相对移动:SKIP[+|-][算术表达式]功能:将记录指针从当前位置向前或向后移动若干条记录位置。条件定位:LOCATE[范围]FOR条件[WHILE条件]功能:查找满足条件的第一条记录。说明:使用CONTINUE命令可继续查找下一条满足条件的记录。化学化工学院VisualFoxPro课程没有最好,只有更好4.4.2记录的定位例如,USEE:\VFP6\DATA\学生GOTOP&&指向首记录GOBOTTOM&&指向最后一条记录GO3&&指向第3条记录SKIP5&&指向第8条记录SKIP–5&&指向第3条记录*将记录指针定位在学生表中第一条性别为男的记录上LOCATEFOR性别=”男”CONTINUE&&继续查找下一个满足条件的记录化学化工学院VisualFoxPro课程没有最好,只有更好4.5.1修改表结构在表设计器中可以修改表结构。1.项目管理器:选定要修改的表,单击“修改”按钮。(1)修改已有的字段(2)增加新字段(3)删除字段(4)改变字段顺序4.菜单:选择“文件|打开”、“显示|表设计器”4.命令:ModifyStructure修改字段属性后,VFP将按新的属性改写整个.dbf文件,可能造成数据丢失