版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,第五章 数据库的创建与操作,第一节 数据库的建立与基本操作,第三节 多表操作,第二节 在数据库中操作表,第四节 数据的完整性,2,返 回,第一节 数据库的创建与基本操作,VFP的数据库是一个逻辑概念。它是一个容器或框架,可以存放一系列数据库对象,如:表、视图等。 数据库文件的扩展名为dbc,同时会自动建立扩展名为dct的数据库备注文件和一个扩展名为dcx的数据库索引文件。 刚建立的数据库只是定义了一个空的数据库。必须在数据库中建立数据表后,才能存放和操作数据。 必须强调,在建立数据库之前,首先要完成数据库的设计。我们已经设计了教学管理系统的数据库: 一、 数据库的建立 有三种方法可以建立数
2、据库: (1)在项目管理器中建立数据库(最重要和简单、实用) (2)通过“新建”对话框建立数据库 (3)使用命令建立数据库,3,1. 在项目管理器中建立数据库 要求首先建立项目并打开项目管理器。此时建立的数据库属于这个项目。 具体方法通过操作实例: 假定项目为:管理(gl) 数据库名:学生管理(xsgl) 2. 通过“新建”对话框建立数据库 此时建立的数据库不属于“项目”。 3. 使用命令交互建立数据库 格式:Create Database |? 【例5.1】用命令方式创建学生管理数据库xsgl。 Set defa to e:sy CREATE DATABASE xsgl,4,二、 数据库的基
3、本操作 1. 打开数据库 格式:Open Database |? ExclusiveShared Exclusive:独占性打开Shared:共享性打开 【例5.2】用命令方式打开学生管理数据库XSGL。 解 在命令窗口中输入如下命令: OPEN DATABASE xsgl,5,2. 修改数据库 命令格式:Modify Database NOEDIT 【例5.3】用命令方式打开学生管理数据库xsgl的设计器。 解 在命令窗口中输入如下命令: MODIFY DATABASE xsgl 3. 关闭数据库: 命令格式:Close Database ALL 4. 删除数据库 命令格式:Delete D
4、atabase |? DELETE TABLESRECYCLE,6,第二节 在数据库中创建操作表,一、 在数据库中新建表 在数据库打开的情况下,新建的表为数据库表。 1、字段的显示属性 (1)格式:控制字段在浏览窗口、表单、报表等显示时的样式。 (2)输入掩码:控制输入该字段的数据的格式。 (3)标题:把英文字段名显示为汉字。 2、字段有效性 (1)规则:限制该字段的数据的有效范围。 (2)信息:不符合规则时显示的信息。 (3)默认值:系统预置的值。 (4)字段注释:增加可读性。,7,二、 向数据库导入自由表 在项目管理器中选择数据库,再单击数据库下的表,单击“添加”,在弹出的窗口中选择要添加
5、的表的名称,单击“确认”。 也可用命令方式,先打开数据库及数据库设计器,然后单击工具栏中的“添加表”按钮,选择某一个表即可。如向XSGL数据库中添加成绩表。 OPEN DATABASE XSGL MODIFY DATABASE 然后单击工具栏中的“添加表”按钮,选择cj表即可。 三、 从数据库中移出表 依次选择【数据】【数据库】展开【表】,从列表中选择要移出的表,单击【移出】,系统会显示一个对话框,选择【移出】即可(如果选择【删除】,则直接从磁盘彻底删除该表)。移出的表不在项目管理器中,但仍在其文件夹中。,8,一、 工作区的概念 在实际工作中,有时需要同时打开几个表。Visual FoxPro
6、允许同时最多打开32767个表进行操作。这就需要引进工作区的概念。 所谓工作区就是在内存中开辟的一块区域,用于存放被打开的表。系统最多可以开设32767个工作区,这些工作区分别用数字132767来标识,称为工作区号,前十个工作区还可以使用字母AJ来标识,称为工作区的别名。工作区还可用在该区打开的表名来标识(也称为工作区的别名)。系统默认的工作区为1 区,用户可以使用工作区的选择命令选择工作区,当前被选中的工作区称为当前工作区,在当前工作区被打开的表称为“当前表”。只有“当前表”的相关信息显示在状态行并可以被方便的使用。,第三节 多表操作,9,二、 工作区的选择和互访 1 、 选择工作区的命令
7、格式: SELECT / 功能:选择指定的工作区为当前工作区。 说明: l每一个工作区某一时刻仅可以打开一个表文件。 l当使用SELECT 0时表示选择当前未使用的最小工作区。 l可以使用SELECT( )函数测定当前的工作区号。 命令USE IN ALIAS也能在指定工作区打开表,但不改变当前工作区。 【例5.4】分别在1,2工作区打开学生情况表(XSQK)、成绩表(CJ)、二个表,并选择当前工作区为1区。.,10,Select 1 Use xsqk Select 2 Use cj Select 1 2 、 工作区的互访 在当前工作区中使用其它工作区中表的数据,一定要在当前工作区表的字段名前
8、加上别名和连接符。 格式1:别名.字段名 格式2:别名-字段名 【例5.5】分别在1,2工作区打开学生情况表(XSQK)、成绩表(CJ)二个表,并选择当前工作区为1区,用DISPLAY显示两个工作区中当前记录的学号。 USE CJ IN 2 USE XSQK IN 1 DISPLAY A.xh,b-xh,11,三、 表的关联操作 所谓表的关联就是利用公共字段或关键字将两个或多个表连接在一起,可以同时对这几个表进行操作,如同操作一个表那样方便。 根据表中的记录对应的数量关系,关联可分为一对一的关联、一对多的关联和多对一的关联。其中的处于前方的表称为“父表”(或主表),另一方称为“子表”。 根据表
9、的关联存续的时间长短,又可分为“永久关联”和“临时关联”。永久关联只能在数据库表之间建立且数据库中可以看到的实际联系,而临时关联不要求是数据库表。建立永久关联主要用于保证数据的完整性,建立临时关联主要用于多表查询的连接操作。 建立关联的方法有多种,下面分别介绍。,返 回,12,在Visual FoxPro中可以通过表的关联来实现一个表的记录指针移动时,另一个表的指针也随之移动。此时我们把第一个表称为主动表(父表),第二个表称为被动表(子表)。一般主动表为多表,被动表为一表,建立的关联为“多对一”关联。 1. 建立表之间的临时关联的命令 格式: SET RELATION TO INTO /, I
10、NTO / ADDITIVE 功能:以当前表为主动表与其他一个或多个被动表建立关联。 说明: l主动表与被动表以公有字段建立关联,此时要求被动表(子表)必须以此关键字建立索引,并且将其设定为主控索引。 l 一个主动表可以同时与多个被动表建立关联,如果指定了ADDITIVE,则保留以前建立的关联,否则删除以前建立的关联。当建立多个关联时,主动表的指针移动时,其他所有被动表的记录指针也随之移动。,返 回,13,【例5.6】分别在1,2工作区打开学生情况表(XSQK)、成绩表(CJ)二个表,并按学号为关键字建立两表之间的关联,用DISPLAY显示学号为“0901100210”成绩信息。 USE xs
11、qk IN 1 index on xh tag xh USE cj IN 2 index on xh tag xh SET RELATION TO xh INTO a DISPLAY a.xh,a.xm,b.kcdm,b.cj FOR xh= 0901100210 2. 撤消关联的命令 格式: SET RELATION TO 或 SET RELATION OFF INTO | 功能:撤销以当前表为主动表与其他一个或多个被动表建立的关联。,返 回,14,一、在数据库中建立永久关联 建立永久关联的表必须是数据库表,并且已经按关联的关键字建立了索引。永久关联是在数据库设计器中建立的。 【例5.7】已
12、知学生管理系统的数据库xsgl中的表xsqk.dbf以“xh”为主关键字建立了主索引,表Cj.dbf以“xh”建立了普通索引。试为这两个表建立永久关联。 解: 第一步:用系统“文件”菜单的“打开”命令,打开数据库xsgl。(也可以在项目管理器中打开) 第二步:在xsqk的框中找到主索引“xh”,用鼠标将其拖动至CJ框中的索引“xh”上,放开鼠标。即可建立两个表的永久关联。,返 回,第四节 数据的完整性,15,二、 数据的完整性 数据的完整性就是指保证数据库中数据正确的特性。完整性控制的主要目的在于防止不正确的数据进入数据库,在对数据库操作时一般通过3类完整性规则来保证数据库中数据的正确性,这就
13、是“实体完整性”、“域完整性”和“参照完整性”。 1. 实体完整性 实体完整性是指表中不允许出现重复的记录。在Visual FoxPro中我们可以利用主关键字或候选关键字的特性来保证表中不出现重复的记录。 2. 域完整性 域完整性是指限制表中字段取值的有效性规则。例如,在创建表时用户定义字段的类型、宽度等都属于域完整性的范畴。除此之外,Visual FoxPro还在表设计器中提供了“字段有效性”规则和“显示”规则来进一步保证域的完整性。 【例5.8】 修改CJ的结构,设置“成绩”字段的有效值在0100分之间,如果输入的分数值不在此范围时,给出出错信息:“分数输入错误!”,返 回,16,3. 参照完整性 参照完整性是指当插入、更新和删除一个表中的数据时,需要参照引用另一个表中的数据,借以检查数据操作是否正确。 因参照完整性属于表间操作规则,且与表的联系有关,因此在Visual FoxPro中为了建立参照完整性,必须首先建立表之间的联系(或称为关系),然后才可以设置参照完整性规则。 (1)建立表之间的关联 表之间的关联可以用“数据库设计器”来建立。,返 回,17,(2)设置参照完整性规则 【例5.9】以学生管理系统的数据库xsgl中已经建立
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年应收账款质押借款合同
- 2024厨房食材配送与溯源服务合同
- 2024年文化旅游项目投资与合作合同
- 2024年房产交易合同卖方答辩
- 2024年工程承包合同工程量清单
- 2024年房屋维修装修合同
- 2024年新品代理协议:产品销售权独家授权
- 2024年房产买卖合同(预售)
- 2024年合作经营合同:共担风险共创未来
- DB 4106T 4-2019规模猪场伪狂犬病净化技术规范
- 2024年全国高考Ⅰ卷英语试题及答案
- 期刊编辑的学术期刊编辑规范考核试卷
- T-CCSAS014-2022《化工企业承包商安全管理指南》
- 电梯安全总监和安全员的任命文件
- 2024年安徽省普通高中学业水平选择性考试 历史试卷
- 电子商务师职业技能等级证书培训方案
- JBT 14615-2024 内燃机 活塞运动组件 清洁度限值及测定方法(正式版)
- DL5009.2-2013电力建设安全工作规程第2部分:电力线路
- 理智与情感:爱情的心理文化之旅智慧树知到期末考试答案章节答案2024年昆明理工大学
- GA/T 2097-2023执法办案管理场所信息应用技术要求
- GB 20052-2024电力变压器能效限定值及能效等级
评论
0/150
提交评论