版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第7讲 自由表与数据库表VFP中的数据库是一个逻辑上的概念和手段,是一个容器,通过一组系统文件统一组织和管理相互关联的数据库表及相关的数据库对象。例如,将扩展名为DBF的数据库表文件组织在一起管理,使它们成为相互关联的数据集合。在建立VFP数据库时,相应的数据库名称实际是扩展名为DBC的文件名,与之相关的还会自动建立一个扩展名为DCT的数据库备注文件和一个扩展名为DCX的数据库索引文件,这三个文件是供VFP数据库管理系统管理数据库使用的,用户一般不能直接使用这些文件。一、数据库的基本操作1. 建立数据库1) 菜单法从“文件”菜单选择“新建”命令,在“新建”对话框建立数据库;2) 使用命令建立数
2、据库,命令格式是:CREATE DATABASE DatabaseName?2. 打开数据库1) 菜单法从“文件”菜单“打开”命令2) 命令方式命令格式:OPEN DATABASE 数据库名|?EXCLUSIVESHAREDNOUPDATEVALIDATE 独占方式 共享方式 只读方式 检查合法性说明: 此命令不会自动打开数据库设计器。常在程序中使用。 打开数据库时,表不会自动打开。 数据库不打开时,仍可使用USE 命令打开表。 同一时刻可以打开多个数据库,但在同一时刻只有一个当前数据库.指定当前数据库的命令是: SET DATABASE TO 也可以用“常用”工具栏中的按钮来选择当前数据库
3、SET DATABASE TO 使所有打开的数据库都不是当前数据库。3. 修改数据库(1)菜单法从“文件”菜单“打开”命令(自动打开数据库设计器)(2)命令方式(自动打开数据库设计器)命令格式:MODIFY DATABASE 数据库名|?NOWAITNOEDIT程序中使用禁止修改4. 删除数据库命令方式命令格式:DELETE DATABASE 数据库名|?DELETETABLESRECYCLE放入回收站同时删除包含的表 SET SAFETY ON |OFF用于设置在删除时是否给出提示信息。SET SAFETY ON 提示是否删除(系统默认)SET SAFETY OFF 不给出任何提示,直接删除
4、数据库文件二、建立数据库表1. 建立数据库表1) “数据库”菜单“新建表”命令;2) “数据库设计器”工具栏中“新建”按钮;3) 快捷菜单;4) “文件”菜单“新建”命令;5) 命令方式(数据库打开时)命令格式:CREATE 表文件名.DBF2. 自由表(1)数据库表与自由表自由表不属于数据库中的表就是自由表。自由表可以被移入数据库使之成为数据库表,数据库表也可以移出数据库成为自由表。自由表无法实现数据完整性,自由表不支持主索引,不能建立字段有效性规则,也不支持在表之间建立永久性联系。(2)将自由表添加到数据库 菜单法:“数据库”“添加表” 命令方式:ADD TABLE 表名/?NAME 长表
5、名例如 ADD TABLE TTT NAME 2001级学生军训表注意:一个表只能属于一个数据库。(3)从数据库中移出表 菜单法:在数据库设计器中选择要移出的表;“数据库”“移去”。 命令方式:REMOVE TABLE 表名|?DELETERECYCLE数据库表比自由表又有以下特征: 数据库表可以使用长文件名和长字段名 数据库表中的字段比自由表中的字段多四个特性 数据库表的索引比自由表多了一个索引 数据库表与表之间存在永久性关联 数据库表与表之间存在参照完整性3. 空值:就是缺值或还没有确定值,不能把它理解为任何意义的数据。4. 字段有效性规则字段有效性规则是一种对字段取值的约束。它包括“规则
6、”、“信息”和“默认值”“规则”是一个与字段有关的逻辑表达式,通过这个表达式对用户输入的值加以限制,信息是一个字符串表达式,用来给出错的提示信息,默认值是与字段类型一致的数据。字段有效性规则提供数据完整性检验域完整性检验。5. 显示组框1) 格式:输出格式2) 输入掩码:输入格式3) 标题:为字段加标题,用于显示、浏览等。4) 注释:为相应字段加说明文字。必须掌握 : 会将自由表添加到数据库表、建立表的索引和多表之间的联系 会将数据库表移出成为自由表 掌握如何设置数据库表的字段有效性规则 会设置数据的参照完整性规则(多个数据库表)三、索引4.2.4 索引 索引如同书的目录,通过目录,读者可以快
7、速找到所需要的内容,索引可以使用户快速找到表中的数据。VFP提供四种类型的索引。1. 索引的种类1) 主索引在指定字段或表达式中不允许出现重复值的索引。主索引主要用于主表或“被引用”表,用来在一个永久关系中建立参照完整性。只有数据库表可以创建主索引。一个表只能创建一个主索引,通常用表的主关键字作为主索引关键字。2) 候选索引 候选索引同主索引一样要求索引关键字或表达式不能有重复值。数据库表和自由表都可以建立候选索引,并且可以建立多个候选索引。3) 唯一索引为了与前期版本兼容而保留的一种索引。一个表中可以建立多个惟一索引,并且不要求索引字段值惟一。4) 普通索引普通索引可用来对记录排序和搜索记录
8、,它不要求索引字段或表达式的值惟一。此外,普通索引还可作为一对多永久关系中的“多方”索引的目的是为了提高查询数据的速度,但同时降低了更新数据的速度.因此,并不是建立的越多越好,要根据需要建立索引.索引文件有两种类型: 结构复合索引 非结构复合索引2. 建立索引1) 在表设计器中建立索引2) 用命令建立索引INDEX ON 索引表达式TO 文件名|TAGOF 文件名.CDXFOR COMPACT ASCENDING|DESCENDINGUNIQUE|CANDIDATE ADDITIVEINDEX ON 职工号 TO ZGIN ADDITIVE .IDXINDEX ON 职工号 TAG ZG .C
9、DX说明:项,它可以是字段名,或包含字段的表达式。 TO 文件名项,建立一个单独的索引,扩展名为IDX的文件。TAG 索引标识符中的索引标识符给出索引名。多个索引可以创建在一个索引文件中,这种索引称做结构复合索引,其文件名与相关的表同名,并具有CDX扩展名。COMPACT 选项是建立一个压缩的IDX文件,复合索引总是压缩的。ASCENDING|DESCENDING选项是说明建立升序或降序索引,默认升序。UNIQUE建立唯一索引CANDIDATE建立候选索引ADDITIVE说明现在建立索引时是否关闭以前的索引。例如 INDEX ON 上机成绩 TO SJIN &建立单索引,扩展名为.IDX IN
10、DEX ON 笔试成绩 TAG 笔试成绩 &建立结构复合索引结构复合索引的特点:l 在打开表时自动打开;l 在同一索引文件中能包含多个索引方案,或索引关键字;l 在添加、更改或删除记录时自动维护索引。 一般现在只使用结构复合压缩索引,而非结构索引多半是为了与以前版式本兼容。3. 使用索引1) 打开索引文件 非结构复合索引在使用前必须先打开。命令格式:SET INDEX TO 索引文件名表SET INDEX TO 职工号,性别LIST2) 设置当前有效索引命令:SET ORDER TO 索引序号|TAG 索引标识符ASCE|DESE3) 索引查找SEEK 表达式ORDER 索引序号|TAG 索引
11、标识符 ASCE|DESESEEK “S4”DISPSKIP4) 删除索引DELETE TAG ALLDELETE TAG 索引名四、实体完整性与主关键字 在数据库中数据完整性是指保证数据的正确的特性,数据完整性一般包括:实体完整性 域完整性 参照完整性1. 实体完整性:是保证表中记录惟一的特性,即在一个表中不允许有重复的记录。2. 域完整性:数据类型的定义属于域完整性的范畴。如定义字段的类型,宽度和取值范围、字段的有效性规则等。3. 参照完整性:参照完整性与表之间的联系有关,它的大概含义是:当插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正
12、确。(1)建立表之间的联系(2)设置参照完整性约束在建立参照完整性之前必须首先清理数据库(数据库清理数据库)。参照完整性规则包括更新规则、删除规则和插入规则例如 建立数据库表的联系和参照完整性规则二、按要求完成下列操作1. 建立一个名为“订货项目.PJX”的项目文件。2. 在“订货项目”的项目中,建立一个名为“订货管理.DBC”的数据库文件。3. 建立如下四张表,都属于“订货管理”数据库。仓库表:仓库号(字符型,3)城市(字符型,4)面积(数值型,3)仓库号城市面积WH1北京370WH2上海500WH3广州200WH4武汉400职工表:仓库号(字符型,3)职工号(字符型,2) 工资(数值型,4
13、)仓库号职工号工资WH2E11220WH1E31210WH2E41250WH3E61230WH1E71250 供应商表:供应商号(C,2)供应商名(C,12)地址(C,4)供应商号供应商名地址S3振华电子厂西安S4华通电子公司北京S6607厂郑州S7爱华电子厂北京订购单表:职工号(C,2)供应商号(C,2)订购单号(C,4)订购日期(D)职工号供应商号订购单号订购日期E3S7OR672001/06/23E1S4OR732001/07/28E7S4OR762001/05/25E6NullOR77NullE3S4OR792001/06/13E1NullOR80NullE3NullOR90NullE
14、3S3OR912001/07/134建立参照完整性步骤(1)在职工表上建立职工号的主索引,索引名为职工号。 在仓库表中建立仓库号主索引,索引名为仓库号。 在供应商表中建立供应商号的主索引,索引名为供应商号。 在订购单表中建立职工号的普通索引和供应商号的普通索引,索引名分别为职工号和供应商号。(2)建立永久联系。(3)建立参照完整性。定义删除规则为“级联”,更新规则和插入规则为“限制”。习题四一、 选择题1 打开一个数据库的命令是A)USE B)USE DATABASEC)OPEN D)OPEN DATABASE2VFP数据库文件是A)存放用户数据的文件 B)管理数据库对象的系统文件C)存放用户
15、数据和系统数据的文件 D)前三种说法都对3要为当前表所有职工增加100元工资,应该使用命令A)CHANGE 工资 WITH 工资+100B)REPLACE 工资 WITH 工资+100C)CHANGE ALL 工资 WITH 工资+100D)REPLACE ALL 工资 WITH 工资+1004以下关于自由表的叙述,正确的是A)全部是用以前版本FoxPro(FoxBASE)建立的表B)可以用VFP建立,但是不能把它添加到数据库中C)自由表可以添加到数据库中,数据库表也可以从数据库中移出成为自由表D)自由表可以添加到数据中,但数据库表不可以从数据库中移出成为自由表5VFP参照完整性规则不包括A)
16、更新规则 B)删除规则 C)查询规则 D)插入规则二、填空题1VFP的主索引和候选索引可以保证数据的 完整性。2数据库表之间的一对多联系通过主表的 索引和子表的 索引实现。3实现表之间临时联系的命令是 。4在定义字段有效性规则时,在规则框中输入的表达式类型是 。5在VFP中,最多同时允许打开 个数据库表和自由表。三、上机题1建立一个学生数据库,要求如下:(1)数据库名为“学生”(2)建立如下表:学生(学号 C7,姓名 C8,年龄 I)课程(课程号 C6,课程名 C14)成绩(学号 C7,课程号 C6,成绩 I)(3)建立如下索引在学生(学号)、课程(课程号)上建立主索引;在成绩(课程号)和成绩(学号)上建立普通索引。(4)建立学生和成绩之间的联系,课程和成绩之间的联系。 2将以上建立的数据库表移出数据库使之成为自由表。 3分别利用APPEND
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深圳证券交易所人员招聘笔试真题2024
- 彩铅盆景课件设计
- 辽宁省金太阳2026届高三12月联考思想政治卷(含答案详解)
- 2025年嘉睿招聘(派遣至市第四人民医院)备考题库有答案详解
- 2025年中医知识竞赛试题及答案(50题)
- 2025年凉山彝族自治州普格县公安局公开招聘警务辅助人员的备考题库及一套完整答案详解
- 计算机行业专题报告:GPU%2bASIC渗透加速液冷市场规模再添增量
- 修房装修协议书
- 电影合同协议范本
- 粮食订货合同范本
- 国开2023年春《组织行为学》机考网考期末复习资料参考答案
- 肝血管瘤患者的护理查房
- 二次结构电气配管及预埋技术交底
- 电气安装工程监理控制要点
- 商场超市安全生产标准化管理体系方案资料汇编(2022-2023新标准实施模板)
- 沈阳市义务教育学校教学常规管理实施细则
- 化学突发中毒事件现状及应急处理课件
- YC/T 559-2018烟草特征性成分生物碱的测定气相色谱-质谱联用法和气相色谱-串联质谱法
- GB/T 4458.6-2002机械制图图样画法剖视图和断面图
- GB/T 40734-2021焊缝无损检测相控阵超声检测验收等级
- GB/T 2411-2008塑料和硬橡胶使用硬度计测定压痕硬度(邵氏硬度)
评论
0/150
提交评论