第5章数据库的基本操作ppt课件_第1页
第5章数据库的基本操作ppt课件_第2页
第5章数据库的基本操作ppt课件_第3页
第5章数据库的基本操作ppt课件_第4页
第5章数据库的基本操作ppt课件_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.,第章,数据库的基本操作,.,5.1数据库的创建、打开、修改与删除,5.1.1使用菜单操作方式5.1.2使用命令操作方式,.,5.1.1使用菜单操作方式,1创建数据库例1:新建一个学生成绩管理数据库,文件名为CJGL,保存在D:XSCJGLDB文件夹下。,.,2打开数据库,例2:打开D:XSCJGLDBCJGL.DBC数据库文件。,.,3修改数据库,当打开一个数据库文件时,其数据库设计器同时处于激活状态,可通过“数据库”菜单或快捷菜单中的命令对该数据库进行添加表、删除表或设置关系参照完整性等操作,具体内容将在后面介绍。,.,4删除数据库,例3:将例1中创建在D:XSCJGLDB文件夹下的数据库文件CJGL删除。,若出现图5.6所示的错误提示时,表示要删除的文件正在使用,应先行关闭数据库,再执行删除操作。关闭数据库的方法:在VFP的命令窗口中执行命令CLOSEDATABASESALL,,.,5.1.2使用命令操作方式,1以命令方式建立数据库格式:CREATEDATABASE|?例4:新建一个学生成绩管理数据库,文件名为CJGL,保存在D:XSCJGLDB文件夹下。操作:如下图5.8所示,在命令窗口中输入CREATE命令,按下Enter键。,.,2以命令方式打开数据库,格式:OPENDATABASE|?EXCLUSIVE|SHAREDNOUPDATEVALIDATE例5:以独占和只读方式打开存放在D:XSCJGLDB文件下的数据库文件CJGL.DBC。操作:在命令窗口中,执行下面的命令即可。OPENDATABASED:XSCJGLDBCJGLEXCLUSIVENOUPDATE,.,3以命令方式设置当前数据库,设置当前数据库,可使用下面的SET命令。如SETDATABASETOCJGL,表示将CJGL.DBC设置为当前数据库。格式:SETDATABASETO功能:指定已打开的某一数据库为当前数据库。说明:如果省略数据库名,将取消当前数据库的设置,即所有打开的数据库均不为当前数据库。,.,4以命令方式关闭数据库,格式:CLOSEDATABASESALL功能:关闭当前数据库和它包含的表;若没有当前数据库,将关闭所有工作区中打开的自由表和索引;若命令中包含ALL选项,将关闭所有打开的数据库及其包含的表,并关闭相关的索引文件和格式文件。,.,5以命令方式修改数据库,格式:MODIFYDATABASE|?功能:激活数据库设计器。说明:如果省略数据库名或使用?号,将会弹出“打开”对话框以指定数据库。例如,修改数据库CJGL.DBC,可使用下面的命令:MODIFYDATABASECJGL.DBC,.,6以命令方式删除数据库,格式:DELETEDATABASEDELETETABLES功能:将指定的数据库文件从磁盘上删除。说明:如果命令中包含DELETETABLES可选项,则指定在删除数据库的同时,将该数据库中的表文件也删除;否则,只删除指定数据库,并将其包含的表变为自由表。例如:DELETEDATABASECJGL表示将名为CJGL的数据库从磁盘上删除,该数据库中所包含的表则变为自由表。DELETEDATABASECJGLDELETETABLES表示将名为CJGL的数据库及其所包含的表一同从磁盘上删除。,.,5.2数据库与表,5.2.1数据库、表与自由表1数据库执行下面的两条命令,将弹出图5.10所示的窗口:USECJGL.DBC&打开数据库文件CJGL.DBC,扩展名.DBC不能省略BROWSE&浏览表内容,.,2表与自由表,表是基本的数据组织单位,对数据管理的核心是对表的管理,表是按一定结构组织起来的。根据表是否属于数据库,可将表分为数据库表和自由表。通常将数据库表简称为表。,.,3数据库与表,.,5.2.2在数据库中建立表,例6:在已创建的D:XSCJGLDBCJGL.DBC数据库中建立学生信息表XSXI.DBF(表的结构参见第四章),要求存储在D:XSCJGLDBTABLES文件夹下。,.,5.2.3向数据库添加自由表,例7:将自由表KCXI.DBF添加到CJGL.DBC数据库中。,.,5.2.4将数据库表删除或移去,1移去表例8:将XSXI.DBF表文件从CJGL.DBC数据库移去。,.,2将表删除,例9:将KCXI.DBF表文件从CJGL.DBC数据库删除。,.,5.2.5设置“表名”,例10:将CJGL.DBC数据库中的XSXI.DBF“表名”设置为“学生信息表”。,.,5.2.6设置表的索引,1使用表设计器建立索引例11:对学生成绩管理数据库CJGL.DBC中的“课程信息表”建立一个结构复合索引文件,对于学分大于2的记录按“课程号”升序排列,索引标识为“KCH”,类型为主索引。,.,.,.,例12:对“成绩信息表”建立一个结构复合索引文件,其中包括三个索引标识:,(1)记录按“学号”排列,学号相同时按“课程号”升序排列,索引标识为XHKCH的候选索引;(2)记录按“学号”升序排列,索引标识为XH的普通索引;(3)记录按“课程号”降序排列,索引标识为KCH的变通索引,.,.,2使用命令建立索引,格式:INDEXONTO|TAGOFFORCOMPACTASCENDINGDESCENDINGUNIQUE|CANDIDATEADDITIVE,.,例12:对学生信息表XSXI.DBF建立一个结构复合索引文件,其中包括三个索引标识:(1)记录按学号升序排列,索引标识为XH的候选索引;(2)对于所有女学生按班级降序排列,索引标识为BJ的普通索引(3)记录按系别排列,系别相同时按班级升序排列,索引标识为XBBJ惟一索引。命令如下:USEXSXI&打开学生信息表XSXI.DBFINDEXON学号TAGXHCANDIDATE&建立结构复合索引文件XSXI.CDX,索引标识为XH的候选索引INDEXON班级TAGBJDESCENDINGFOR性别=”女”&建立索引标识为BJ的普通索引,该索引标识追加到XSXI.CDXINDEXONALLTRIM(系别)+ALLTRIM(班级)TAGXBBJUNIQUE&建立索引标识为XBBJ的惟一索引,该索引标识追加到XSXI.CDX文件,.,.,3索引的使用,(1)索引文件的打开与关闭格式:SETINDEXTO?ADDITIVE功能:打开当前表的一个或多个索引文件。这里的索引文件类型指的是单索引文件或非结构化复合索引文件。,.,(2)设置主控索引,格式:SETORDERTO|TAGASCENDING|DESCENDING功能:指定表的主控索引文件或标识。,.,例13:在上例建立的结构复合索引文件XSXI.CDX中包含XH,BJ,XBBJ三个索引标识(对应的索引号依次为1,2,3),请依次设置为主控索引,最后取消主控索引,同时观察输出结果。USEXSXISETORDERTOTAGXH&设置索引标识XH为主控索引LIST&查看结果SETORDERTO2&设置索引标识BJ为主控索引LISTSETORDERTOXBBJ&设置索引标识XBBJ为主控索引LISTSETORDERTO&取消主控索引LIST,.,(3)删除索引,格式:DELETEALLTAG功能:删除打开的结构复合索引文件中的索引项。说明:DELETEALL表示删除所有的索引项,即删除了结构复合索引文件USEXSXIDELETETAGXH,BJ&删除结构复合索引文件XSXI.CDX中的XH,BJ索引项。DELETEALL&删除结构复合索引文件XSXI.CDX,.,5.2.7建立表间关系,(1)多表操作SELECT命令格式:SECLECT工作区号别名功能:激活指定工作区说明:(1)VFP最多可同时打开32767个工作区,每个区只能打开一个表。因此,用户可同时使用多个表中的数据,但是当前工作区只有一个。(2)工作区编号由1到32767,其中前十个工作区中指定的别名是从A到J。(3)当打开一个表时,系统将该表名默认为该工作区的别名,如USEXSXI.DBFIN2(在2号工作区打开XSXI.DBF),SELECT2与SELECTXSXI功能相同。(4)在打开一个表时定义其别名,如:SELECT3USEXSXIALIAS学生信息表此时XSXI.DBF的别名为“学生信息表”。(5)工作区号或别名用来指定工作区。如果指定工作区号为0,则激活尚未使用的编号最小的工作区。,.,例如:SELECTA&打开别名为A的工作区USEXSXI&在A工作区打开表XSXI.DBFSELECTB&打开别名为B的工作区USECJXI&在B工作区打开表CJXI.DBF?”学号:”+A.学号,”姓名:”+A.姓名&当前工作区为B,引用A工作区中XSXI.DBF的首记录?“学号:”+学号,”课程号:”+课程号,”成绩:“+STR(成绩,3)&显示当前工作区中CJXI.DBF的首记录注意:在访问非当前工作区中打开表的字段时,应使用下面的格式别名.字段名或者别名-字段名,.,(2)使用命令建立临时关系,格式:SETRELATIONTOINTO,INTO.,INTOADDITIVE功能:创建单个父表与单个或多个子表之间的关系,各关系之间用逗号分隔。,.,例14:按学号相等,建立学生信息表XSXI.DBF与成绩信息表CJXI.DBF的临时关系。SELECTAUSECJXI&在1号工作区打开成绩信息表INDEXON学号TAGXH&按关联字段,为表建立普通索引SELECTBUSEXSXI&在2号工作区打开学生信息表SETRELATIONTO学号INTOA&按学号相等建立当前表与成绩信息表的一对多关系接下来,执行下面的命令:SELECTABROWSE&浏览成绩信息表SELECTBBROWSE&浏览学生信息表,.,例15:建立CJXI.DBF、XSXI.DBF和KCXI.DBF三表间的临时关系。要求能够同时显示学号,姓名,课程名,成绩的信息。第一步:在1号区打开XSXI.DBF;按“学号”建立候选索引(如果该索引已经存在,将其设置为主控索引)第二步:在2号区打开KCXI.DBF;按“课程号”建立建立候选索引(如果该索引已经存在,将其设置为主控索引)第三步:在3号区打开CJXI.DBF;建立CJXI.DBF与XSXI.DBF的多对一关系;建立CJXI.DBF与KCXI.DBF的多对一关系;,.,具体操作如下:SELECT1USEXSXIINDEXON学号TAGXHCANDIDATESELECT2USEKCXIINDEXON课程号TAGKCHCANDIDATESELECT3USECJXISETRELATIONTO学号intoASETRELATIONTO课程号intoBADDITIVELOCATEfor学号=2003303010104?”学号:”+A.学号,”姓名:”+A.姓名,”课程名:”+B.课程名,”成绩:“+STR(成绩,3)CONTINUE?”学号:”+A.学号,”姓名:”+A.姓名,”课程名:”+B.课程名,”成绩:“+STR(成绩,3),.,.,例16:按学号相等,(1)建立学生信息表XSXI.DBF对成绩信息表CJXI.DBF的关联,(2)建立学生信息表对成绩信息表的“一对多”关系。使用“数据工作期”窗口完成。,.,2永久关系,与前面的临时关系不同的是永久关系(也称永久性关联)。自由表和数据库表之间都可以建立临时关系,但是永久关系只是数据库表间的关系,它保存在数据库文件中。,.,例17:在成绩管理数据库CJGL.DBC中,建立学生信息表XSXI.DBF、课程信息表KCXI.DBF和成绩信息表CJXI.DBF间的永久关系。,.,5.3关系完整性的设置,5.3.1实体完整性,.,5.3.2用户定义完整性,1字段级约束规则设置字段属性和字段约束规则,其目的是为了保证字段级数据的正确性。在表设计器中的“字段”选项卡中,可以实现对表中每个字段属性和规则的设置,具体包括:(1)字段类型、宽度等属性(2)“显示”规则(3)“字段有效性”规则(4)“字段注释”属性(5)“匹配字段类型到类”属性。,.,例18:对于课程信息表KCXI.DBF,设置其“课程号”字段的约束规则。设置结果如图5.53所示。,.,2记录级约束规则,例19:在成绩信息表中,当某一课程的成绩大于或等于60分时就没有补考成绩。,.,3表级约束规则,表级约束规则可通过表设计器中的“表”选项卡中的“触发器”选项组来设置。以下是“触发器”选项组的简要功能。插入触发器:指定在插入记录时,对数据库所进行的指定操作。更新触发器:指定在更新记录时,对数据库所进行的指定操作。删除触发器:指定在删除记录时,对数据库所进行的指定操作。,.,例20:在向成绩信息表输入信息的过程中,要求实现以下功能:每当所输入的成绩60时,则在补考信息表中记录这个学生的学号、课程号和成绩。使用插入触发器实现此操作。,.,5.3.3参照完整性,参照完整性主要是用来控制数据的一致性,尤其是用来协调不同数据库表的主关键字和外部关键字之间的关系。参照完整性与表的永久关系有关,即在表的永久关系基础上设置参照完整性规则。,.,例21:为成绩管理数据库中的学生信息表、课程信息表和成绩信息表设置参照完整性约束,具体要求

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论