VFP数据库与表的创建及使用课件.pptx
《VFP数据库与表的创建及使用课件.pptx》由会员分享,可在线阅读,更多相关《VFP数据库与表的创建及使用课件.pptx(60页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2023/5/291第第3 3章章 数据库与表的创建和使用数据库与表的创建和使用 信息系统的基础是数据库。设计一个完善、高效、结构优化的数据库,是创建信息系统过程中必不可少的重要环节。在VFP中,表是数据的容器表是数据的容器,系统使用表以行和列的形式存储数据,这些行和列就是记录和字段;数据库是表的容器数据库是表的容器,它联合、组织以及使用表和视图提供的结构和操作环境。在VFP中,构建数据库也包含创建表。但要注意的是,数据库数据库和表表均以文件形式存储在磁盘上,其中数据库文件扩展名为.dbc、表文件扩展名为.dbf,只是表可以属于数据库管理。2023/5/292本章要点本章要点数据库概述数据库的
2、创建、打开与使用表的创建与使用永久性关系与参照完整性有关数据库及其对象的常用函数2023/5/2933.1 3.1 数据库概述数据库概述确定建立数据库的目的,进行数据需求分析。确定需要的各种表,即将信息分为若干个独立的主题,每个主题都将是数据库中的一个表。确定所需字段,也就是将在表中保存的信息。确定表之间的关系,形象而又直观地反映现实世界中各实体间的真正关系。改进设计、优化设计。3.1.1 数据库设计的过程 数据库的概念设计数据库的概念设计数据库的逻辑设计数据库的逻辑设计2023/5/2943.1 3.1 数据库概述数据库概述3.1.2 数据库的组成 1.表表(Table)属于某一数据库的表称
3、为“数据库表”。与自由表相比,数据库表具有许多扩展功能和管理特性。表与数据库之间的相关性是通过表文件与库文件之间的双向链接(前链和后链)实现的。前链是保存在数据库文件中的表文件的路径和文件名信息;后链是存放在表文件中的数据库文件的路径和文件名信息。数据库文件数据库文件数据库文件数据库文件前链前链前链前链前链前链前链前链后链后链表文件表文件后链后链表文件表文件后链后链表文件表文件后链后链表文件表文件2023/5/2952.视图视图(View)视图是从分散在相关表中的数据通过链接条件收集在一起的“虚表”。视图兼有表和查询的特点。3.连接连接(Connection)连接是保存在数据库中的一个定义,它
4、指定了数据源的名称。这里所说的数据源是指远程数据源,一个远程数据源通常是一个远程数据库服务器或文件,并且已为它在本地安装了ODBC驱动程序和设置了ODBC数据源名称。4.存储过程存储过程(Stored Procedure)存储过程是在数据库数据上执行特定操作并储存在数据库文件中的程序代码。在数据库打开时会自动加载到内存中。2023/5/296表中字段的标题、注释、默认值、输入掩码和显示格式,以及字段在表单中使用的默认控件类。表的主索引关键字数据库表之间的永久性关系长表名和表注释字段级和记录级有效性规则存储过程插入、更新和删除事件的触发器3.1 3.1 数据库概述数据库概述3.1.3 数据字典
5、数据字典是指存储在数据库中用于描述所管理的表和对象的数据,即关于数据的数据(元数据元数据)。数据字典可创建和指定如下内容:2023/5/297界面操作方式创建数据库用项目管理器创建用菜单命令或工具栏创建命令方式创建数据库CREATE DATABASE DatabaseName|?数据库设计器与“数据库”菜单3.2 3.2 数据库的创建、打开与使用数据库的创建、打开与使用 在VFP中,每创建一个数据库都将在磁盘上产生三个文件:数据库文件数据库文件(.dbc)、关联的数据库备注数据库备注文件文件(.dct)、关联的数据库索引文件数据库索引文件(.dcx)。3.2.1 数据库的创建2023/5/29
6、8新建的数据库,保存后自动以独占方式打开;打开数据库中的表,系统会自动打开相应的数据库;在项目管理器中选择一个数据库并单击“修改”按钮;OPEN DATABASE DatabaseName EXCLUSIVE|SHAREDNOUPDATEVALIDATE打开多个数据库可重复进行数据库打开操作即可,系统默认最后一个打开的数据库为当前数据库。根据需要可用SET DATABASE TO命令将另一个被打开的数据库设为当前数据库或在“常用”工具栏“数据库”下拉列表中选择一个已打开的数据库作为当前数据库。3.2.2 数据库的打开与关闭1.打开数据库使用数据库前必须打开数据库2023/5/2992.检查数据
7、库的有效性 在使用命令打开数据库时若使用了VALIDATE关键字,则系统会检查数据库的有效性;也可在打开数据库后用VALIDATE DATABASE命令检查数据库的有效性和更新链接。VALIDATE DATABASE RECOVER TO PRINTER|TO FILE FileName【注】RECOVER用于说明更新链接,缺省时仅检查数据库的有效性TO FILE用于说明检查结果信息的去向,缺省时在VFP主窗口显示;VALIDATE DATABASE命令只能处理以独占方式打开的当前数据库。2023/5/2910在项目管理器中选择要关闭的数据库后单击“关闭”按钮;使用CLOSE DATABASE
8、命令关闭当前数据库;使用CLOSE DATABASE ALL关闭所有打开的数据库;关闭(退出)Visual FoxPro系统。3.关闭数据库【注】在关闭数据库时,从属于该数据库的表同时被关闭(如果表已被打开);使用CLOSE DATABASE命令可关闭当前数据库和表,若没有打开的数据库,则关闭所有工作区内所有打开的自由表、索引,并将当前工作区设为1。2023/5/2911用Windows操作系统删除;非正常删除用DELETE FILE命令删除;非正常删除在项目管理器中通过“移去”操作进行删除。正常删除,这样才能删除数据库中所包含的表的链接信息,数据库表将自动变成自由表。否则,只能用命令FREE
9、 TABLE 强行解除数据库与表间的链接,将表变成自由表。4.删除数据库 删除数据库意味着删除存储在数据库中的一切数据,包括存储过程、视图、表之间的关系、数据字典等。2023/5/2912VFP中的表(Table)是指存放在磁盘文件中的一张二维表,通常用来描述一个实体。表中的一列称为字段(Field),字段规定了数据的特征。表中的一行称为记录(Record),记录是字段值的集合。表的记录必须用一个公共结构来存储,这个结构就是表结构。表分为数据库表(简称“表”)与自由表两种类型。表文件名队要遵守Windows中的约定外,不可使用AJ中的单个字母作为文件名,且最好不要包含空格字符。3.3 3.3
10、表的创建与使用表的创建与使用2023/5/2913字段名字段名:用以在表中标识该字段。字段的数据类型字段的数据类型:表中每个字段都有特定的数据类型(参见课本P.76表3-1)字段的宽度字段的宽度:是指该字段所能容纳数据的最大字节数。有一些数据类型的宽度是固定的。小数位数小数位数:对于数值型、浮点型和双精度型的字段,可以指定其小数的位数。如数据的整数部分不为0,则整个宽度至少应比小数位数大2,如是纯小数,则整个宽度只要比小数位数大1。空值支持(空值支持(NULLNULL):通过使用空值(NULL),就有了一个判定某个字段是否具有一个值的办法。3.3.1 表结构概述3.3 3.3 表的创建与使用表
11、的创建与使用2023/5/2914用“表设计器”创建表结构项目中的表:项目自由表新建新表保存(表向导另存为保存)非项目中的表:新建新建文件保存(向导另存为保存)3.3.2 创建和修改表结构【注注】在在“表设计器表设计器”中创建结构完成后,会出现一中创建结构完成后,会出现一对话框,问你是否立即输入数据。如果要立即输入数对话框,问你是否立即输入数据。如果要立即输入数据,可单击据,可单击“是是”按钮,否则单击按钮,否则单击“否否”按钮。创建按钮。创建表结构后,在磁盘上会生成扩展名为表结构后,在磁盘上会生成扩展名为.DBF.DBF和和.FPT.FPT的两的两个文件。个文件。用“表设计器”修改表结构项目
12、表修改或用命令MODIFY STRUCTURE表设计器2023/5/2915字段的标题和注释标题:浏览表时代表字段的标签,但引用字段时必须使用其字段名。注释:字段的说明信息,在项目管理器中选择一个字段时,在窗口下部将显示该注释。字段的显示属性格式(Format):用于指定输入和显示时的格式(对输入字段值的整体约束)。P.79表3-2输入掩码(InputMask):用于指定字段中输入数据的格式(对输入字段的每位约束)。P.79表3-33.3.3 字段属性与表属性1.字段的扩展属性2023/5/2916默认值为字段所指定的最初的值。设定默认值时必须是一个与字段类型相同的表达式。如果字段设置为允许N
13、ull,则字段默认值可设置为“Null”,否则字段的默认值不可设置为“Null”。如果用户未指定字段的默认值且字段不允许为空值,则系统按下表所述的方式设置字段的默认值。字段数据类型默认值字符型长度与字段宽度相等的空串数值型、整型、双精度型、浮点型、货币型0逻辑型.F.备注型、通用型(无)日期型、日期时间型空的日期2023/5/2917字段的有效性规则和有效性信息字段有效性规则:用来控制输入到字段中的数据的取值范围。该规则是一个包含当前字段的逻辑表达式,如果输入的值不满足规则要求(即逻辑表达式的值为.F.)则拒绝该字段值并显示一个消息框。字段有效性信息:也称字段有效性说明,是一个字符型表达式,通
14、常与字段的有效性规则配合使用,用于指定在不满足规则要求时所显示的消息框中的说明信息。字段的默认控件类作用是指定使用“表单向导”生成表单或从数据环境中将字段拖放到表单上时,与该字段相应的控件类。2023/5/2918显示打开显示打开 用菜单等界面操作方法或USE命令直接打开表隐式打开隐式打开 指在执行某些操作时系统会自动打开相应的表。如在项目管理器窗口中选择一个表后单击“修改”或“浏览”按钮时,会自动打开表;在执行SELECT-SQL语句进行查询时,也会自动打开数据源表等。3.3.4 表的打开与关闭 在VFP中,表使用前必须打开。表的打开可以是显式打开,也可以是隐式打开。2023/5/2919概
15、念 在打开一张表时,必须为该表指定一个“工作区”。它是用以标志一张打开的表的区域。编号132767,前10个也可用AJ工作区中表的别名USE 表文件名 ALIAS 别名函数ALIAS(工作区号)可得到指定工作区的表别名。函数SELECT(别名)可测试指定表别名的工作区号。当前工作区 在“数据工作期”中设置当前工作区命令:SELECT 工作区号|别名3.3.4 表的打开与关闭1.工作区2023/5/2920【注】操作非当前工作区中的表的方法:一是把非当前工作区的表选为当前工作区(用SELECT命令);二是在命令中强行指定工作区(用IN 工作区号|别名)如:GO TOP IN js。SELECT
16、0 指将未被使用的编号最小的工作区设为当前工作区2.数据工作期窗口 数据工作期窗口是当前数据动态工作环境的一种表示。数据工作期窗口是当前数据动态工作环境的一种表示。VFPVFP启动后,系统自动生成一个数据工作期,称为启动后,系统自动生成一个数据工作期,称为“默认工作期默认工作期”。数据工作期窗口的打开方法:。数据工作期窗口的打开方法:窗口窗口数据工作期数据工作期常用工具栏上的常用工具栏上的“数据工作期窗口数据工作期窗口”按钮按钮2023/5/2921界面方式文件打开 数据工作期打开项目管理器修改或浏览在命令窗口中用命令USE?打开“使用”窗口命令方式USE 表名 IN 别名|区号AGAINAL
17、IAS 表别名;NOUPDATE3.表的打开【注注】如如一一张张表表同同时时在在多多个个工工作作区区中中打打开开且且均均未未指指定定别别名名,则则在在第第一一次次打打开开的的工工作作区区中中,别别名名与与表表名名相同,其他工作区中用相同,其他工作区中用AJAJ以及以及W11W32767W11W32767表示。表示。2023/5/2922界面方式在数据工作期中关闭命令方式USE IN 别名|工作区关闭所有的表 CLOSE TABLES ALLCLOSE DATABASE ALLCLOSE ALL4.表的打开【注注注注】在在在在退退退退出出出出Visual Visual Visual Visual
18、 FoxProFoxProFoxProFoxPro系系系系统统统统时时时时,所所所所有有有有的的的的表表表表都都都都将将将将被关闭。被关闭。被关闭。被关闭。2023/5/2923设置独占与共享打开表的默认状态 工具选项数据 SET EXCLUSIVE ON默认“共享”打开 SET EXCLUSIVE OFF默认“独占”打开强行用一种方式打开表 在“打开”窗口中设置 USE 表名 SHARED|EXCLUSIVE5.表的独占与共享【注注】当当一一个个表表被被多多次次打打开开时时,只只能能以以第第一一次次打打开开方方式式为为准准。SET EXCLUSIVE的的设设置置并并不不能能改改变变已已经打开
19、表的状态。经打开表的状态。2023/5/2924表结构创建后立即输入记录在浏览窗口中追加记录菜单命令“表表”“追加新记录追加新记录”菜单命令“显示显示”“追加方式追加方式”使用INSERT-SQL命令追加记录INSERT INTO 表名(字段名1,字段名2,);VALUES(表达式1,表达式2,)举例:INSERT INTO xs(xh,xm,xb,xzydm);VALUES(050503017,高山,男,050301)3.3.5 记录的处理1.记录的输入【注注】VALUESVALUES后后面面括括号号中中的的具具体体记记录录的的值值要要和和INSERT INSERT INTOINTO后面的字
20、段名列表保持位置和类型上的一致。后面的字段名列表保持位置和类型上的一致。2023/5/2925使用使用APPEND与与APPEND FROM命令追加记录命令追加记录APPEND BLANKIN 工作区号|别名APPEND FROM 文件名FIELDS 字段列表FOR 条件;DELIMITED|XLS 其中,DELIMITED用于说明追加文件为文本文件;XLS用于说明追加文件为Excel文件,缺省时追加文件为表文件。该命令也可通过界面完成:“表表”“追加记录追加记录”备注型字段与通用型字段的数据输入备注型字段与通用型字段的数据输入备注型:浏览窗口中,备注型字段上显示memo表示无内容;Memo表
21、示有内容。备注型字段内容输入方法是光标定位到该字段上,按+或双击双击通用型:浏览窗口中,通用型字段上显示gen表示无内容;Gen表示有内容。通用型字段内容输入方法同上,然后再用菜单命令“编辑编辑”“插入对象插入对象”插入其内容。2023/5/2926界面菜单命令“显示显示”“浏览浏览”(编辑)命令BROWSE FIELDS 字段列表FOR 条件;RREEZE 字段名NOAPPEND;NODELETE NOMODIFYTITLE 表达式例:CLOSE TABLES ALL USE xs BROWSE FIELDS xh,xm FOR xb=女;NOMODIFY TITLE 女学生2.浏览窗口3.
22、记录的筛选(横向筛选横向筛选)界面 菜单命令“表表”“属性属性”“数据过滤器数据过滤器”命令SET FILTER TO 条件2023/5/2927界面菜单命令“表表”“属性”“字段筛选”命令SET FIELD TO 字段列表SET FIELD TO ALL列出所有字段(取消筛选)4.限制对字段的访问访问(纵向筛选纵向筛选)5.记录定位(1)记录指针表被打开后,有三个控制记录表被打开后,有三个控制记录的标志:的标志:开始标志开始标志、指针标志指针标志、结束标志结束标志。每当打开表文件时,每当打开表文件时,指针总是指向第一个记录指针总是指向第一个记录。文件头文件头(包含(包含表结构表结构等信息)等
23、信息)第第1 1条记录条记录第第2 2条记录条记录第第n n条记录条记录录开始标录开始标志志记录结束记录结束标志标志记录指记录指针针2023/5/2928【注】RECNO()测试当前记录指针的位置,开始标志用BOF()测试,结束标志用EOF()测试。打开表时记录指打开表时记录指打开表时记录指打开表时记录指针情况针情况针情况针情况如下表:表中记录情况表中记录情况BOF()BOF()值值RECNO()RECNO()值值EOF()EOF()值值无记录无记录.T.T.1 1.T.T.有记录有记录.F.F.1 1.F.F.记录指针的初始值总是1,不可能为0或负数,最大值是表中记录总数+1。2023/5/
24、2929界面操作表转到记录 在浏览窗口移动光标“记录号”:绝对定位“定位”:条件定位 范围选项有ALL、NEXT、RECORD n、REST5.记录定位(2)记录定位的实现2023/5/2930【注注注注】若定位时未找到相应记录,则指针指向若定位时未找到相应记录,则指针指向若定位时未找到相应记录,则指针指向若定位时未找到相应记录,则指针指向指定范围的结尾。指定范围的结尾。指定范围的结尾。指定范围的结尾。首记录首记录当前记录当前记录末记录末记录ALLNEXT nRESTRECORD nn2023/5/2931n 使用命令n 绝对定位:GOTO 记录号|TOP|BOTTOM IN 区号|别名n 相
25、对定位:SKIP nRecordsn 条件定位:LOCATE FOR 条件表达式 范围(2)记录定位的实现【注】若从第一条记录向上移动一条记录,记录指针指向开始标志,BOF()函数值为.T.,RECNO()值仍为1。若再执行SKIP-1命令,系统将显示出错信息“已到文件头”,此时记录指针仍然指向记录开始标志。若从最后一条记录向下移动一条记录,记录指针指向结束标志,EOF()函数值为.T.,RECNO()值为表记录数加1。若再执行SKIP命令,系统将显示出错信息“已到文件尾”,此时记录指针仍然指向记录结束标志。如果表有一个主控索引,SKIP命令将使记录指针移动到索引顺序决定的记录上。对于条件定位
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP 数据库 创建 使用 课件
限制150内