第三章 有关数据库及其对象的常用函数.ppt
《第三章 有关数据库及其对象的常用函数.ppt》由会员分享,可在线阅读,更多相关《第三章 有关数据库及其对象的常用函数.ppt(114页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、新编Visual FoxPro 教程江南大学太湖学院机电系计算机教研室江南大学太湖学院机电系计算机教研室 20112011年年2 2月月江苏省普通高校江苏省普通高校计算机计算机等级考试指定教材等级考试指定教材江南大学太湖学院机电系计算机教研室江南大学太湖学院机电系计算机教研室 第第3章章 数据库与表的创建和使用数据库与表的创建和使用3.1 数据库概述数据库概述3.2 数据库的创建、打开和使用数据库的创建、打开和使用3.3 表的创建和使用表的创建和使用3.4 永久性关系与参照完整性永久性关系与参照完整性3.5有关数据库及其对象的常用函数有关数据库及其对象的常用函数第第3章章 数据库与表的创建和使
2、用数据库与表的创建和使用3.1 数据库概述数据库概述n数据库是一个容器,是许多相关的数据库表及数据库是一个容器,是许多相关的数据库表及其关系的集合。其关系的集合。n例如,一个教学管理信息系统中将涉及到教师、例如,一个教学管理信息系统中将涉及到教师、课程、任课、学生、成绩、系以及专业等实体,课程、任课、学生、成绩、系以及专业等实体,可分别用二维表来表示(可分别用二维表来表示(如图所示如图所示)。)。n数据库中的表并不是彼此独立的,借助于一个数据库中的表并不是彼此独立的,借助于一个公共的字段可以将两张表联系起来,这就建立公共的字段可以将两张表联系起来,这就建立了一种了一种“关系关系”。3.1 数据
3、库概述数据库概述n一、数据库设计的步骤:一、数据库设计的步骤:n1、确定建立数据库的目的,进行数据的需求分析、确定建立数据库的目的,进行数据的需求分析n2、确定需要的各种表、确定需要的各种表n3、确定表的字段、确定表的字段n4、确定表之间的关系、确定表之间的关系n5、设计的优化、设计的优化二、二、VFP数据库的组成数据库的组成数据库表数据库表视图视图连接连接存储过程存储过程3.1 数据库概述数据库概述二、二、VFP数据库的组成数据库的组成1、数据库表、数据库表 数据库表与数据库之间的相关性是通过它们之间的数据库表与数据库之间的相关性是通过它们之间的双向链接双向链接实现的。实现的。n前链前链保存
4、在数据库文件中保存在数据库文件中 存储有关表文件的路径和文件名信息存储有关表文件的路径和文件名信息 指向库表指向库表 n后链后链存放在一张表的表头中存放在一张表的表头中 存储有关库文件的路径和文件信息存储有关库文件的路径和文件信息 指向拥有该表的数据库指向拥有该表的数据库 3.1 数据库概述数据库概述二、二、VFP数据库的组成数据库的组成2、视图(、视图(View)n视图是一种视图是一种“虚表虚表”类型,其数据来源于一类型,其数据来源于一张或多张表。张或多张表。n视图兼有表和查询的特点。视图兼有表和查询的特点。n视图可以分为本地视图和远程视图。详细内视图可以分为本地视图和远程视图。详细内容将在
5、下一章介绍。容将在下一章介绍。3.1 数据库概述数据库概述二、二、VFP数据库的组成数据库的组成3、连接(、连接(Connection)n连接是保存在数据库中的一个定义,它制定连接是保存在数据库中的一个定义,它制定了数据源的名称。了数据源的名称。nODBC:开放式数据互连开放式数据互连n连接远程数据源的方法连接远程数据源的方法直接访问在机器上注册的直接访问在机器上注册的ODBC数据源数据源用用“连接设计器连接设计器”设计自定义连接设计自定义连接3.1 数据库概述数据库概述二、二、VFP数据库的组成数据库的组成4、存储过程、存储过程 n存储过程是保存在数据库中的过程代码的地方存储过程是保存在数据
6、库中的过程代码的地方n保存用户自定义函数和过程。保存用户自定义函数和过程。n保存保存参照完整性代码。参照完整性代码。n打开数据库时,它们便被加载到内存中打开数据库时,它们便被加载到内存中。n创创建、修改或移去存建、修改或移去存储过储过程的方法:程的方法:“项项目管理器目管理器”“数据数据库设计库设计器器”MODIFY PROCEDUREMODIFY PROCEDURE 3.1 数据库概述数据库概述三、三、VFP数据字典概述数据字典概述n数据字典是指存储在数据库中用于描述所管理数据字典是指存储在数据库中用于描述所管理的表和对象的数据,即关于数据的数据。这些的表和对象的数据,即关于数据的数据。这些
7、数据称为数据称为元数据元数据。n每个数据库都带有一个数据库字典。每个数据库都带有一个数据库字典。n数据库表可以享受到数据字典的各种功能。数据库表可以享受到数据字典的各种功能。n使用数据字典,可以创建字段级规则和记录级使用数据字典,可以创建字段级规则和记录级规则,保证主关键字字段内容的唯一性。规则,保证主关键字字段内容的唯一性。n如果不用数据字典,也可通过编程实现上述功如果不用数据字典,也可通过编程实现上述功能。能。3.1 数据库概述数据库概述数据字典可创建、指定的内容数据字典可创建、指定的内容n表中字段的标题、注释、默认值、输入掩码和显示表中字段的标题、注释、默认值、输入掩码和显示格式,以及表
8、单中使用的默认控件类等。格式,以及表单中使用的默认控件类等。n表的主索引关键字。表的主索引关键字。n数据库表之间的永久性关系。数据库表之间的永久性关系。n长表名和表注释。长表名和表注释。n字段级和记录级有效性规则。字段级和记录级有效性规则。n存储过程。存储过程。n插入、更新和删除事件的触发器。插入、更新和删除事件的触发器。3.1 数据库概述数据库概述n一、数据库的创建一、数据库的创建n每创建一个新的数据库都将生成三个文件:每创建一个新的数据库都将生成三个文件:数据库文件(数据库文件(.dbc)关联的数据库备注文件(关联的数据库备注文件(.dct)关联的数据库索引文件(关联的数据库索引文件(.d
9、cx)n数据库文件并不在物理上包含任何附属对象,数据库文件并不在物理上包含任何附属对象,仅存储指向表文件的仅存储指向表文件的路径指针路径指针。3.2 数据库的创建、打开和使用数据库的创建、打开和使用一、一、数据库的创建数据库的创建n创建创建数据库数据库可以采用下述方法之一可以采用下述方法之一。使用使用“项目管理器项目管理器”使用使用“文件文件”菜单中的菜单中的“新建新建”命令命令使用命令使用命令 CREATE DATABASE 数据库数据库|?3.2 数据库的创建、打开和使用数据库的创建、打开和使用二、二、数据库的使用数据库的使用1、打开数据库打开数据库2、设置当前数据库设置当前数据库3、检查
10、数据库的有效性检查数据库的有效性4、关闭数据库关闭数据库5、删除数据库删除数据库3.2 数据库的创建、打开和使用数据库的创建、打开和使用1、打开数据库、打开数据库 使用菜单使用菜单n “文件文件”/“打开打开”/指定数据库文件名指定数据库文件名使用使用Open Database命令命令 n格式:格式:Open Database Databasename Exclusive|Shared Noupdate n说明说明:Exclusive:指定以指定以独占方式独占方式打开数据库。打开数据库。Shared:指定以共享方式打开数据库。指定以共享方式打开数据库。Noupdate:以只读方式打开数据库以只
11、读方式打开数据库。3.2 数据库的创建、打开和使用数据库的创建、打开和使用1、打开数据库、打开数据库 n数据库可以同时打开多个数据库可以同时打开多个OPEN DATABASE db1OPEN DATABASE db1OPEN DATABASE db2OPEN DATABASE db2OPEN DATABASE db3OPEN DATABASE db33.2 数据库的创建、打开和使用数据库的创建、打开和使用2、设置当前数据库、设置当前数据库 n所有打开的数据库中,只有一个是所有打开的数据库中,只有一个是当前数据当前数据库库。n在打开数据库时,在打开数据库时,最后一个打开最后一个打开的数据库是的数
12、据库是当前数据库。当前数据库。n将其他数据库设置为当前数据库将其他数据库设置为当前数据库“常用常用”工具栏的数据库下拉列表工具栏的数据库下拉列表SET DATABASE TOSET DATABASE TO 数据库名数据库名 3.2 数据库的创建、打开和使用数据库的创建、打开和使用3、检查数据库的有效性、检查数据库的有效性 n如果数据库和表文件的双向链接被破坏后,如果数据库和表文件的双向链接被破坏后,可重新链接,更新相对路径信息以反映文件可重新链接,更新相对路径信息以反映文件的新位置。的新位置。n重建链接重建链接用用VALID DATABASE RECOVERVALID DATABASE REC
13、OVER命令命令打开表,系统显示打开表,系统显示“打开打开”对话框进行重对话框进行重新定位新定位只能处理以独占只能处理以独占方式打开的当前方式打开的当前数据库数据库3.2 数据库的创建、打开和使用数据库的创建、打开和使用4、关闭数据库、关闭数据库 n从从“项目管理器项目管理器”窗口中,选定要关闭的数窗口中,选定要关闭的数据库并选择据库并选择“关闭关闭”按钮。按钮。3.2 数据库的创建、打开和使用数据库的创建、打开和使用4、关闭数据库、关闭数据库 n使用命令使用命令CLOSE DATABASECLOSE DATABASE:关闭当前数据库关闭当前数据库CLOSE DATABASE ALLCLOSE
14、 DATABASE ALL:关闭所有数据库关闭所有数据库CLOSE ALLCLOSE ALL:关闭所有数据库、表、索引及设计关闭所有数据库、表、索引及设计器器关关闭闭已打开的数据已打开的数据库库jxsjjxsjSET DATABASE TO SET DATABASE TO jxsjjxsjCLOSE DATABASECLOSE DATABASE3.2 数据库的创建、打开和使用数据库的创建、打开和使用5、删除数据库、删除数据库 n删除数据库意味着将删除存储在该数据库中删除数据库意味着将删除存储在该数据库中的一切信息。如:的一切信息。如:存储过程、视图、表之间存储过程、视图、表之间的关系、数据库表
15、的扩展属性等。的关系、数据库表的扩展属性等。n使用使用“项目管理器项目管理器”删除一个数据库的方法删除一个数据库的方法在在“项目管理器项目管理器”中选择待删除的数据库名;中选择待删除的数据库名;单击单击“项目管理器项目管理器”窗口的窗口的“移去移去”按钮,在接按钮,在接下去的提示中选择删除。下去的提示中选择删除。3.2 数据库的创建、打开和使用数据库的创建、打开和使用n表表:是指存储在磁盘文件中的二维表,一张二维:是指存储在磁盘文件中的二维表,一张二维 表保存为表保存为13个个表文件。表文件。(.DBF/.FPT/.CDX)(表、表备注、复合索引)(表、表备注、复合索引)n在在VFP中表分为两
16、种类型:中表分为两种类型:属于某一数据库的表称为属于某一数据库的表称为“数据库表数据库表”;不属于任何数据库而独立存在的表称为不属于任何数据库而独立存在的表称为“自由表自由表”。3.3 表的创建与使用表的创建与使用n字段(字段(Field):表中的一列,规定了数据的特征。表中的一列,规定了数据的特征。每张表最多可以有每张表最多可以有255个字段。个字段。n记录记录(Record):表的一行,多个字段的集合。表的一行,多个字段的集合。注意:注意:表文件名除必须遵守表文件名除必须遵守Windows系统对文件名系统对文件名的约定外,不可用的约定外,不可用AJ中的单个字母作文件名。中的单个字母作文件名
17、。3.3 表的创建与使用表的创建与使用一、表结构概述一、表结构概述n1、表结构(、表结构(Structure):存储表记录的一个公存储表记录的一个公共结构,主要指表的字段及其属性。共结构,主要指表的字段及其属性。n2、字段名:字段名:用以标识一个字段的名字。字段名用以标识一个字段的名字。字段名一般要与其对应的实体的属性名相同或相近,以一般要与其对应的实体的属性名相同或相近,以便于记忆。便于记忆。字段名可以是以字母开头的字母数字字段名可以是以字母开头的字母数字串,也可以是汉字。串,也可以是汉字。n3、字段的数据类型:字段的数据类型:说明字段是什么类型的数说明字段是什么类型的数据。据。不同数据类型
18、的表示和运算的方法不一样。不同数据类型的表示和运算的方法不一样。见下表:见下表:3.3 表的创建与使用表的创建与使用 数据类型数据类型字母字母表示表示宽度宽度 说说 明明示示 例例字符型字符型(Character)C254字母、汉字、符号字母、汉字、符号XH、XM货币型货币型(Currency)Y8货币单位货币单位教师的工资教师的工资数值型数值型(Numeric)N20整数或小数整数或小数考试成绩考试成绩浮点型浮点型(Float)F5(3)(3)日期型日期型 浏览教师表中浏览教师表中1971年以后出生的教师信息。年以后出生的教师信息。USE js Browse for csrqctod(“19
19、71/12/31”)或或 Browse for year(csrq)1971(4)逻辑型逻辑型 浏览课程表中所有必修课的课程信息。浏览课程表中所有必修课的课程信息。USE kc Browse for bxk 注意括号中字注意括号中字注意括号中字注意括号中字符串的表示法。符串的表示法。符串的表示法。符串的表示法。3.3 表的创建与使用表的创建与使用 浏览课程表中所有非必修课的课程信息。浏览课程表中所有非必修课的课程信息。USE kc Browse for .not.bxk 用用FIELDS 子句指定在浏览窗口中出现的字段。子句指定在浏览窗口中出现的字段。例:例:浏览浏览XS表中所有男同学的表中所
20、有男同学的xh,xm,xb信息,并信息,并指定不修改记录,浏览窗口的标题为指定不修改记录,浏览窗口的标题为“男学生男学生”。USE XS BROWSE FIELDS xh,xm,xb FOR xb=男男;NOMODIFY TITLE“男学生男学生”3.3 表的创建与使用表的创建与使用五、记录的处理五、记录的处理 3 3、记录的定位、记录的定位、记录的定位、记录的定位n记录的指针记录的指针:每个记录都按顺序有个每个记录都按顺序有个“记录号记录号”系统在打开一个表文件后将自动生成三个控制标志:系统在打开一个表文件后将自动生成三个控制标志:记录开始标志记录开始标志、记录指针标志记录指针标志、记录结束
21、标志记录结束标志。记录开始标志记录开始标志记录开始标志记录开始标志 记录指针记录指针记录结束标志记录结束标志记录结束标志记录结束标志文件头(含表结构等信息)第1号记录第2号记录第n号记录当前记录当前记录当前记录当前记录 BOF()RECNO()EOF()3.3 表的创建与使用表的创建与使用n记录指针是记录指针是VFP系统内部的一个指示器,在表中系统内部的一个指示器,在表中指向记录。每当打开一个表文件时,指针总是指指向记录。每当打开一个表文件时,指针总是指向向第第1条记录条记录。n测试当前记录用函数测试当前记录用函数RECNO()。其最小值为其最小值为1,最大值最大值为为RECCOUNT()+1
22、,RECCOUNT()是表是表记录总数。记录总数。n打开表时记录指针情况:打开表时记录指针情况:表中无记录:表中无记录:BOF()=.T.EOF()=.T.RECNO()=1表中有记录:表中有记录:BOF()=.F.EOF()=.F.RECNO()=1 3.3 表的创建与使用表的创建与使用n记录的定位记录的定位 (非当前工作区用非当前工作区用:IN)记录指针的记录指针的绝对定位绝对定位:把指针移动到指定的位置。把指针移动到指定的位置。GO/GOTO n:当当n大于记录总数时将拒绝移动。大于记录总数时将拒绝移动。GO TOP&记录指针移动到第一条记录记录指针移动到第一条记录GO BOTTOM&记
23、录指针移动到最后一条记录记录指针移动到最后一条记录GOTO 6&记录指针移动到记录号为记录指针移动到记录号为6的记录上的记录上记录指针的记录指针的相对定位相对定位:把指针从当前位置开始,相对把指针从当前位置开始,相对于当前记录向前或向后移动若干条记录。于当前记录向前或向后移动若干条记录。SKIP n:n0向文件尾方向;向文件尾方向;n29用用SQL命令命令时,不需要时,不需要先用先用USE命命令打开表。令打开表。3.3 表的创建与使用表的创建与使用n删除记录分两步删除记录分两步n做删除标记做删除标记n彻底删除带标记的记录彻底删除带标记的记录五、记录的处理五、记录的处理 5 5、记录的删除记录的
24、删除记录的删除记录的删除3.3 表的创建与使用表的创建与使用n界面方式删除界面方式删除n对少量的记录直接在浏览窗口中删除对少量的记录直接在浏览窗口中删除n在某一范围内删除一组符合特定条件的记录在某一范围内删除一组符合特定条件的记录“表表”菜单中的菜单中的“删除记录删除记录”命令项命令项n“表表”“恢复记录恢复记录”n“表表”“彻底删除彻底删除”五、记录的处理五、记录的处理 5 5、记录的删除记录的删除记录的删除记录的删除3.3 表的创建与使用表的创建与使用n用命令方式删除用命令方式删除nDELETE命令命令(加注删除标记(加注删除标记)DELETE 范围范围 FOR 条件表达式条件表达式IN
25、工作区工作区|别名别名 例:为例:为js表中所有年龄超过表中所有年龄超过60岁的教师的记录加注删岁的教师的记录加注删除标记。除标记。USE JS DELETE FOR YEAR(DATE()-YEAR(csrq)60 注注:此命令无范围和条件时仅修改当前记录此命令无范围和条件时仅修改当前记录nDELETE-SQL(加注删除标记)加注删除标记)DELETE FROM 表名表名 WHERE 条件表达式条件表达式 DELETE FROM JS WHERE;(DATE()-csrq)/365603.3 表的创建与使用表的创建与使用n恢复删除:恢复删除:nRECALL 范围范围 FOR 条件表达式条件表
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三章 有关数据库及其对象的常用函数 第三 有关 数据库 及其 对象 常用 函数
限制150内