数据库表及其操作.ppt

上传人:牧羊曲112 文档编号:6296597 上传时间:2023-10-14 格式:PPT 页数:79 大小:665KB
返回 下载 相关 举报
数据库表及其操作.ppt_第1页
第1页 / 共79页
数据库表及其操作.ppt_第2页
第2页 / 共79页
数据库表及其操作.ppt_第3页
第3页 / 共79页
数据库表及其操作.ppt_第4页
第4页 / 共79页
数据库表及其操作.ppt_第5页
第5页 / 共79页
点击查看更多>>
资源描述

《数据库表及其操作.ppt》由会员分享,可在线阅读,更多相关《数据库表及其操作.ppt(79页珍藏版)》请在三一办公上搜索。

1、2023/10/14,第三章 数据库、表及其操作,1,本章内容简介 本章介绍数据库与数据表的设计、创建、使用及表属性的设置。学习目标 理解关系型数据库保存数据的特点,重点掌握数据库中表间的联系,学习数据库与数据表的设计、建立与使用的方法,学会在Visual FoxPro中操作数据库与数据表。通过对本章学习,理论上要求能深入地理解关系型数据 库的特点,掌握设计数据库表的方法,理解索引的功能和数据完整性的意义。学习切入点及方法 以数据管理的需求分析为切入点,通过分析数据库的表间联系来加深对关系型数据库的理解,多上机练习,掌握数据库与数据表的操作方法。建议学时 课堂讲授8 10学时,上机15 20学

2、时。另外学生在课后应有预习、复习及练习设计各种不同的数据库的时间。,2023/10/14,第三章 数据库、表及其操作,2,3.1 设计数据库3.2 数据库的创建和操作3.3 数据表的创建3.4 数据表的基本操作3.5 索引3.6 数据完整性,2023/10/14,第三章 数据库、表及其操作,3,Visual FoxPro是一个关系数据库管理系统。关系型数据库管理系统以表的形式管理所有的数据。数据库:指存储在外存上的有结构的数据集合。在Visual FoxPro中,数据库用于存储数据库表的属性,组织、关联表和视图,创建存储过程。,在Visual FoxPro中,表分为数据库表和自由表两类。属于某

3、一数据库的表称为数据库表;不属于任何数据库而独立存在的表称为自由表。,2023/10/14,第三章 数据库、表及其操作,4,设计数据库一般包括以下几个基本过程:1.分析数据需求:确定需要数据库保存那些信息。2.确定需要的表:按不同的主题将信息分配到不同的数据表中。3.确定所需字段:确定每个表中要保存哪些信息。4.确定表间联系:分析数据库中的表间联系。5.完善设计:对设计进一步分析,查找错误,对设计方案进一步完善。,在数据库应用系统中,数据库的设计是一项非常重要的工作,数据库性能的优劣将直接影响到最终应用系统的性能。经过长期摸索,人们提出了数据库设计方法以及各种设计准则和规程,这就是规范化设计方

4、案。,3.1设计数据库,2023/10/14,第三章 数据库、表及其操作,5,设计数据库,3.1.1 分析数据需求,数据库设计的第一步是明确数据库的使用目的。需要从数据库中得到哪些信息,数据库是作什么用途。明确目的之后,才可以确定需要保存哪些主题的信息(表),以及每个主题需要保存哪些信息(字段),这些主题之间的关系如何。,3.1.2 确定数据库表,在关系型数据库中,每一个关系都是一个二维表。在一个数据库中可以有若干个关联的二维表(关系)。,确定所需字段,字段:是表中最小的数据单位,决定了表中要保存的信息类型。为了保证数据的不多余性且不遗漏信息,在确定表中所需字段时应考虑字段的唯一性、无关性及主

5、关键字和外部关键字等要求。,2023/10/14,第三章 数据库、表及其操作,6,3.1.4 确定表间联系,Visual FoxPro将表间的联系归结为3种:一对一、一对多和多对多。,3.1.4.1 一对一联系,如果A表的一个记录在B表中只能对应一个记录,而B表中的一个记录在A表中也只能有一个记录与之对应,则两表之间就是一对一的联系。例如:一个单位人事部的职工表和财务部的工资表就是一对一的联系。,2023/10/14,第三章 数据库、表及其操作,7,3.1.4 确定表间联系,3.1.4.2 一对多联系,如果对于A表中的任意一个记录,在B表中可以有多个记录与之对应,但反过来B表中的任意记录,在A

6、表中只有一个记录与之对应,则两表之间就是一对多的联系。在一对多联系中,位于“一”端的表称为父表,和父表关联的那个表为子表。父表也称为主表或主控表,子表又称为相关表或受控表。在一对一或一对多联系中,位于“一”端的表中用于建立联系的字段必须是主关键字字段,而位于“多”端的表中用于建立联系的字段是外部关键字字段。,2023/10/14,第三章 数据库、表及其操作,8,3.1.4 确定表间联系,3.1.4.2 一对多联系,例如学校里的班级和学生:一个班级有多个学生,而一个学生只能在一个班级里,所以班级和学生之间就是一对多的联系。班级表和学生表通过编号建立起了一对多联系。,一对多关系示意图,2023/1

7、0/14,第三章 数据库、表及其操作,9,3.1.4 确定表间联系,3.1.4.3 多对多联系,如果A表的一个记录在B表中可以对应多个记录,同样B表中的一个记录在A表中也可以对应多个记录,则两表之间就是多对多的联系。在设计数据库时,应将多对多联系分解成两个一对多联系,其方法就是在具有多对多联系的两个表之间创建第三个表。,用于分解多对多联系的表称为“纽带表”。因为它在两表之间起着纽带的作用,可以把两个表的主关键字都放在这个纽带表中。,纽带表可以只包含它所链接的两个表的主关键字,也可以包含其它信息。在纽带表中,两个字段连在一起就能使每个记录具有唯一值。,2023/10/14,第三章 数据库、表及其

8、操作,10,3.1.4 确定表间联系,3.1.4.3 多对多联系,例如学校里的课程和学生:一门课程有多个学生学习,而一个学生也要学习多门课程,所以课程和学生之间就是多对多的联系。,因为学生学习的每门课程都有相应的成绩,可以通过成绩将课程和学生联系起来。“成绩”表就是“学生”表和“课程”表之间的纽带表。,多对多关系的分解,2023/10/14,第三章 数据库、表及其操作,11,3.1.4 确定表间联系,3.1.4.3 多对多联系,多对多关系分解成两个一对多关系的分解示意图,2023/10/14,第三章 数据库、表及其操作,12,3.1.5 完善数据库设计,在试验最初的数据库时,很可能会发现需要改

9、进的地方。是否遗忘了字段?是否有需要的信息没有包括进去?如果是,是否属于已创建的表?如果不在创建的表中,需要另外创建一个表。是否为每个表选择了合适的主关键字?在使用主关键字查找记录时,它是否很容易记忆和输入?要确保主关键字值不会出现重复。是否在某个表中重复输入了同样的信息?如果是,需要考虑将此表分成两个一对多联系的表。是否有字段很多、记录却很少的表,而且许多记录中的字段值为空?如果是,要考虑重新设计该表,使它的字段减少,记录增多。,2023/10/14,第三章 数据库、表及其操作,13,3.1.6 示例数据库:“世界杯”,数据需求:,存放各届足球世界杯举办的时间、地点、参赛队以及冠军、最佳球员

10、、最佳射手归属等方面的信息。,可以查出每届的参赛队成绩、每届的冠军、最佳球员、最佳射手的信息;以及每个参赛队参赛次数、参赛成绩等信息。,设计要求:,数据表信息如下:,2023/10/14,第三章 数据库、表及其操作,14,字段及主关键字:,届次、日期、举办国、队数、冠军、点球决胜、举办背景、照片。,参赛队、地区、备注。,届次、参赛队、成绩。,届次、姓名、国籍。,“基本信息”,“参赛队”,“参赛成绩”,“最佳球员”,“最佳射手”,届次、姓名、国籍、进球数。,3.1.6 示例数据库:“世界杯”,2023/10/14,第三章 数据库、表及其操作,15,世界杯数据库中各表间关系,表间关系:,3.1.6

11、 示例数据库:“世界杯”,2023/10/14,第三章 数据库、表及其操作,16,创建数据库的常用方法有以下3种:1.在“项目管理器”中创建数据库;2.使用“文件”菜单的“新建”命令创建数据库;3.在“命令”窗口中输入创建数据库的命令。Visual FoxPro数据库文件的扩展名是.DBC。建立.DBC文件的同时,自动建立.DCT(备注)和.DCX(索引)文件。,3.2 数据库的建立和操作,3.2.1 创建数据库,2023/10/14,第三章 数据库、表及其操作,17,例如,在项目管理器中创建数据库。在前面已创建的“世界杯”项目中创建数据库的操作步骤如下:在“世界杯”项目中选择“数据”选项,选

12、择“数据库”,单击“新建”按钮,打开“新建数据库”对话框。在“新建数据库”对话框中单击“新建数据库”按钮,打开“创建”对话框。在“创建”对话框的“数据库名”文本框中输入“世界杯”作为数据库文件的名称;选择保存数据库文件的文件夹“D:世界杯”;保存类型为默认的“数据库(*.DBC)”。单击“保存”按钮,打开“数据库设计器”对话框。,3.2 数据库的建立和操作,3.2.1 创建数据库,2023/10/14,第三章 数据库、表及其操作,18,3.2.2 操作数据库,3.2.2.1 在项目中添加/移出数据库,3.2.2.2 打开/关闭数据库,3.2.2.3 打开数据库设计器,“数据库设计器”窗口是一个

13、带有工具栏的设计窗口。“数据库设计器”工具栏一般随“数据库设计器”窗口同时打开,如果“数据库设计器”工具栏没有打开,可选“显示”菜单下的“工具栏”命令,在“工具栏”对话框中选中“数据库设计器”工具栏将其打开。,“数据库设计器”和“数据库设计器”工具栏,3.2.2.4 给数据库添加注释,3.2.2.5 使用多个数据库,3.2.2.6 数据库错误,2023/10/14,第三章 数据库、表及其操作,19,3.2.2.7 操作数据库的常用命令,3.2.2 操作数据库,建立数据库:CREATE DATABASE 打开数据库:OPEN DATABASE 打开数据库设计器:MODIFY DATABASE 设

14、置当前数据库:SET DATABASE TO 显示当前数据库结构:DISPLAY DATABASE 关闭数据库:CLOSE DATABASE ALL删除数据库:DELETE DATABASE,2023/10/14,第三章 数据库、表及其操作,20,3.3 数据表的创建,前面建立的“世界杯”数据库还是一个空数据库。在使用“世界杯”数据库之前,需要先将前面为这个数据库设计的的5个表:“基本信息”、“参赛队”、“参赛成绩”、“最佳射手”和“最佳球员”表建立起来。,在Visual FoxPro中,创建一个新表分为两个步骤:步骤一:创建表的结构。即说明表包含哪些字段,每个 字段的长度及数据类型等。步骤二

15、:输入记录。即向表中输入数据。,2023/10/14,第三章 数据库、表及其操作,21,3.3 数据表的创建,3.3.1 建立表结构,3.3.1.1 表的特征,表可存储若干条记录。每条记录可以有若干个字段,而且每条记录的字段结构相同,也就是具有相同的字段名、字段类型和字段顺序。字段可以是不同的类型,以便存储不同类型的数据。记录中每个字段的顺序与存储的数据无关。每条记录在表中的顺序与存储的数据无关。,2023/10/14,第三章 数据库、表及其操作,22,3.3 数据表的创建,3.3.1 建立表结构,3.3.1.2 设计字段属性,一个表中的所有字段组成了表的结构,字段属性决定了表的结构。字段属性

16、包括:字段名称、类型、宽度、小数位数及是否允许为空。,字段类型说明,2023/10/14,第三章 数据库、表及其操作,23,3.3 数据表的创建,3.3.1 建立表结构,3.3.1.3 创建数据库表,可以使用以下3种方法启动数据库表的创建:方法一:在“项目管理器”中选择“数据库”的“表”选项,单击“新建”按钮,即可创建属于该数据库的数据库表。方法二:在“数据库设计器”中,从“数据库”菜单中选择“新建表”命令或单击“数据库设计器”工具栏上的“新建表”按钮。方法三:选择“文件”菜单中的“打开”命令打开数据库,然后再选择“文件”菜单中的“新建”命令来创建表,此时创建的新表自动成为当前数据库中的数据库

17、表。,2023/10/14,第三章 数据库、表及其操作,24,3.3 数据表的创建,3.3.1 建立表结构,3.3.1.3 创建数据库表,采用前述3种方法,都将进入创建方法选择框,可以选择表向导或表设计器来创建数据库表。,下面将分别采用表设计器和表向导 来创建世界杯数据库中的4个数据库表,而“基本信息”表,可以从自由表转为数据库表。,为方便管理,在“D:世界杯”下创建一个名为“表”的文件夹,用于存放所有创建的表。保存类型为“表/DBF(*.DBF)”,将创建的表保存为.DBF文件。,2023/10/14,第三章 数据库、表及其操作,25,3.3 数据表的创建,3.3.1 建立表结构,3.3.1

18、.3 创建数据库表,“世界杯”数据库中的5个表,表结构创建完成后,将得到右图所示的项目管理器窗口,显示世界杯数据库中的5个数据表。,2023/10/14,第三章 数据库、表及其操作,26,3.3 数据表的创建,3.3.2 记录的输入和删除,3.3.2.2 浏览窗口的使用,1.浏览记录 滚动条、Tab键、Shift+Tab键、PageUp键、PageDown键 当前记录:记录指针查看备注型或通用型字段:双击该字段。2.改变列宽和行高3.调整字段顺序 在浏览窗口改变列宽和列的排列顺序不会影响字段的实际结构。4.打开或关闭网格线 选择“显示”菜单中的“网格线”命令可显示或隐藏浏览窗口中的网格线。,2

19、023/10/14,第三章 数据库、表及其操作,27,3.3 数据表的创建,3.3.2 记录的输入和删除,5.切换显示方式,两种显示方式:浏览方式和编辑方式,2023/10/14,第三章 数据库、表及其操作,28,3.3 数据表的创建,3.3.2 记录的输入和删除,6.拆分浏览窗口 将鼠标指向窗口左下角的拆分条,鼠标指针变为左右箭头对接的形状,将拆分条拖到所需的位置。调整拆分窗口的大小,只需向左或向右拖动拆分条即可。默认情况下,两个窗口是链接的。取消“表”菜单中“链接分区”的选中状态,可以中断两个窗口之间的联系,使它们的功能相对独立。拆分“浏览”窗口可以查看同一表中的两个不同区域或者分别用浏览

20、和编辑方式查看同一记录。,2023/10/14,第三章 数据库、表及其操作,29,3.3 数据表的创建,3.3.2 记录的输入和删除,3.3.2.3 追加记录,利用其他表中已有的相同内容,可以快速给新表追加记录。,1.追加源表中的所有记录 将需要追加记录的表在浏览窗口中打开。选择“表”菜单下“追加记录”命令。2.有选择的追加记录和字段 在“追加来源”对话框中单击“选项”按钮,打开“追加来源选项”对话框。如只想追加第8届世界杯的记录,表达式为:届次=”08”(因届次为查找方便定义成字符型,字段变量的值应加上英文双引号)。,2023/10/14,第三章 数据库、表及其操作,30,3.3 数据表的创

21、建,3.3.2 记录的输入和删除,3.3.2.1 在浏览窗口中输入记录,在“项目管理器”中选择表,单击“浏览”按钮即可打开“浏览”窗口。打开“浏览”窗口后,选择“显示”菜单下的“追加方式”命令,即可在“浏览”窗口中输入数据。在输入记录的字段值时,只能输入数据类型有效的值。备注型字段和通用型字段的内容不能直接在“浏览”窗口中输入。双击该字段,打开专门的备注型字段或通用型字段输入窗口,即可在其中输入备注型字段或通用型字段的内容。输入完所有的记录后,单击浏览窗口右上角的关闭按钮。,2023/10/14,第三章 数据库、表及其操作,31,3.3 数据表的创建,3.3.2 记录的输入和删除,3.3.2.

22、4 修改记录内容,在“浏览”窗口中修改表中字段的内容,只需找到记录中要修改的字段所在的单元格,输入正确的内容即可。编辑“备注型”字段,可在“浏览”窗口中双击该字段。这时会打开一个“编辑”窗口,其中显示了“备注型”字段的内容。通过双击“浏览”窗口中的“通用型”字段,可以编辑这个对象。,2023/10/14,第三章 数据库、表及其操作,32,3.3 数据表的创建,3.3.2 记录的输入和删除,3.3.2.5 删除记录,在Visual FoxPro中删除记录的过程,分为两大步骤:第一步:对要删除的记录作删除标记,又称为逻辑删除。第二步:彻底删除,又称为物理删除。,在浏览窗口中,记录前的小方块就是记录

23、的删除标记条。记录删除标记条变成了黑色,表示记录已被作了删除标记。此时系统就不能对记录进行任何操作,但记录仍然保存在表中。对已作了删除标记的记录,用户既可以将其彻底删除,也可以将其恢复。,2023/10/14,第三章 数据库、表及其操作,33,3.3 数据表的创建,3.3.2 记录的输入和删除,3.3.2.5 删除记录,条件删除:使用“删除”对话框进行条件删除。打开“浏览”窗口。选择“表”下“删除记录”,出现“删除”对话框。在“作用范围”列表框中选择操作范围:All:全部记录。Next:从当前记录开始的若干个记录。Record:特指某个记录。Rest:从当前记录开始直到最后一个记录。,“删除”

24、对话框,1.作删除标记 逐一删除:在浏览窗口中,用鼠标单击记录前的删除标记条,使其变黑,就给该记录加上了删除标记。,选择“For”或“While”构造逻辑表达式来设置删除记录需要满足的条件。单击“删除”,符合条件的记录打上删除标记。,2023/10/14,第三章 数据库、表及其操作,34,3.3 数据表的创建,3.3.2 记录的输入和删除,3.3.2.5 删除记录,2.彻底删除 若要将已作了删除标记的记录真正地从表中删除,从“表”菜单中选择“彻底删除”命令,在弹出的“移去已删除记录”对话框中单击“是”按钮也可以在“命令”窗口使用 PACK 命令。3.删除全部记录 如果想删除表中的所有记录,只留

25、下表的结构,可使用 ZAP 命令。在“命令”窗口中输入“ZAP”命令将彻底删除表中的所有记录。注意:此命令破坏性极大,应慎用。,2023/10/14,第三章 数据库、表及其操作,35,3.3 数据表的创建,3.3.2 记录的输入和删除,3.3.2.6 还原记录,标记记录并不等于删除记录。可以撤销删除标记,恢复成原来的状态。逐一恢复:用鼠标单击记录前的删除标记,使其恢复为白色,取消删除标记。条件恢复:“表”菜单中的“恢复记录”命令。操作和“删除记录”命令相似。注意:执行“彻底删除”命令后,带有删除标记的记录被从磁盘上彻底删除。被彻底删除的记录不能再用“恢复记录”命令恢复。,2023/10/14,

26、第三章 数据库、表及其操作,36,3.4 数据表的基本操作,3.4.1 在数据库设计器中操作表,3.4.1.1 打开/关闭表,1 打开表 方法一:在“项目管理器”窗口中选定要打开的表,单击“浏览”按钮,则会打开该表并在“浏览”窗口中显示出来。方法二:从“文件”菜单中选择“打开”命令或直接单击工具栏上的“打开”按钮,然后在“打开”对话框中选择要打开的表将其打开。方法三:在“命令”窗口输入“USE”命令。例如,要打开“基本信息”表,在命令窗口中输入以下命令:USE 基本信息 2 关闭表 在“命令”窗口输入不带参数的“USE”命令即可。,2023/10/14,第三章 数据库、表及其操作,37,3.4

27、 数据表的基本操作,3.4.1 在数据库设计器中操作表,3.4.1.2 在“数据库设计器”中查看表,1.展开或折叠表2.重排数据库的表 3.在数据库中查找表或视图4.选择显示的对象,世界杯数据库中的表,2023/10/14,第三章 数据库、表及其操作,38,3.4 数据表的基本操作,3.4.1 在数据库设计器中操作表,3.4.1.3 数据库表和自由表,Visual FoxPro中的数据表可以有两种存在状态:自由表(即没有和任何数据库关联的.DBF文件)和数据库表(即与数据库关联的.DBF文件)。数据库表和自由表可以互相转换:当用户将数据库表从一个数据库中移出,数据库表便成了自由表;反之,如将自

28、由表加入到某一个数据库中,自由表便成了数据库表。数据库表只能属于一个数据库,如想将一个数据库中的表移到其他数据库,必须先将该表从数据库中移出变为自由表,再将其加入到另一数据库中。数据库表和自由表相比,具有一些自由表所没有的属性,如主关键字、触发器、默认值、表间联系等。将表组合到数据库内,可以使它们协同工作。,2023/10/14,第三章 数据库、表及其操作,39,3.4 数据表的基本操作,3.4.1 在数据库设计器中操作表,3.4.1.4 在数据库设计器中添加、移出或删除表,1.添加数据库表 2.移出或删除数据库表,添加、移去或删除数据库表的操作也可以直接在项目管理器中进行。1.在“项目管理器

29、”窗口中添加数据库表2.在“项目管理器”窗口中移出或删除数据库表,3.4.1.5 在“项目管理器”中添加、移出或删除表,2023/10/14,第三章 数据库、表及其操作,40,3.4 数据表的基本操作,3.4.2 设置数据库表属性,3.4.2.1 查看或修改表结构,在“项目管理器”窗口的“数据”选项卡中选择需要查看或修改结构的表,单击“修改”按钮,打开“表设计器”对话框。在“表设计器”中可以查看或改变已有表的结构,如增加或删除字段、改变字段的数据类型及宽度等。,注意:在将字段宽度值改小时,超出字段宽度的字符会自动丢失,如果字段是数值型则会溢出,这时在表的浏览窗口中看到的是几个“*”号,并且丢失

30、的字符或数字不能通过将字段长度改为原有长度而得到恢复。改变字段的数据类型也可能导致数据的丢失。,2023/10/14,第三章 数据库、表及其操作,41,3.4 数据表的基本操作,3.4.2 设置数据库表属性,3.4.2.2 设置数据库表的属性,数据库表的表设计器比自由表的表设计器多了一些选项:在数据库表的表设计器 的“字段”选项卡的下部,有“显示”、“字段有效性”、“字段注释”和“匹配字段类型到类”4个输入区域。数据库表具有自由表所没有的一些属于数据字典的属性,例如长字段名和长表名、掩码、默认值、字段级和记录级规则及触发器等。属性被作为数据库的一部分保存起来,如果表被从数据库中移出,则原来拥有

31、的这些属性都将失去。,2023/10/14,第三章 数据库、表及其操作,42,3.4 数据表的基本操作,3.4.2 设置数据库表属性,3.4.2.2 设置数据库表的属性,1.设置字段的显示属性 格式 规定字段显示时的样式。格式决定了字段的显示风格。例如,将系统日期格式设置为年/月/日,年为四位,在表设计器中设置“基本信息”表的“日期”格式为D,则在浏览窗口中显示日期为yyyy/mm/dd格式。输入掩码 指定字段输入值的格式。使用输入掩码可屏蔽非法输入,减少人为的数据输入错误,提高输入工作效率,保证输入的字段数据格式统一、有效。标题 指定显示代表字段的标题。最多可包含128个字符。字段的注释 在

32、“项目管理器”中选择了这个字段时,在“项目管理器”的底部显示该字段的注释文本。,2023/10/14,第三章 数据库、表及其操作,43,3.4 数据表的基本操作,3.4.2 设置数据库表属性,3.4.2.2 设置数据库表的属性,2.输入字段的默认值 例如,在输入“参赛队”表中数据时,如果当前正在输入非洲的球队,可将地区默认值设置为“非洲”。3.表名和表注释 表名 指定正在创建或修改的表的名称。但并不是文件名。表注释 在表注释区可以输入对表的注释。与字段注释一样,在选定一个表时,在“项目管理器”窗口底部显示表的注释文本。,2023/10/14,第三章 数据库、表及其操作,44,3.4.3 数据过

33、滤和字段筛选,3.4.3.1 定位记录,在打开的表中只有一条记录是“当前记录”。在浏览窗口,当前记录前有一个黑三角标志。,1.用“查找”命令查看数据 2.用“转到记录”命令查看数据,“转到记录”子菜单,“定位记录”对话框,3.4 数据表的基本操作,2023/10/14,第三章 数据库、表及其操作,45,3.4.3 数据过滤和字段筛选,3.4.3.2 数据过滤与字段筛选,若有多个记录都符合定位的条件,使用“定位”命令只能定位表中的第一个符合条件的记录,若想同时查出所有记录,则需使用数据过滤功能。,1.记录过滤,例如,想在“浏览”窗口中只显示第17届和18届的世界杯的基本信息。,“工作区属性”对话

34、框,3.4 数据表的基本操作,2023/10/14,第三章 数据库、表及其操作,46,3.4.3.2 数据过滤与字段筛选,2.字段筛选,例如,在“浏览”窗口中显示“基本信息”表中的“届次”,“举办国”和“冠军”字段。,“字段选择器”对话框,3.4 数据表的基本操作,3.4.3 数据过滤和字段筛选,2023/10/14,第三章 数据库、表及其操作,47,3.4.4 工作区与多表操作,3.4.4.1 工作区和工作期的概念,1.工作区 工作区:是一个编号的区域,用来标识一个打开的表。最多可以有32767个工作区。在每个工作区中只能同时打开一个表,在工作区中打开表时,原来在该工作区中打开的表自动关闭。

35、,选择工作区使用SELECT 命令:SELECT 工作区标识可以是032767的编号,也可以是表的别名。如果执SELECT 命令中的“工作区标识”为0时,表示选择了空闲的最小号工作区。如果打开了多个工作区,则当前工作区是指最后执行SELECT命令所选择的工作区。,3.4 数据表的基本操作,2023/10/14,第三章 数据库、表及其操作,48,3.4.4.1 工作区和工作期的概念,2.数据工作期,“数据工作期”是当前动态工作环境的一种表示,每个数据工作期包含有自己的一组工作区,这些工作区含有打开的表、表索引和联系。,3.在“数据工作期”窗口查看工作区 从“窗口”菜单选择“数据工作期”命令,或在

36、“命令”窗口中输入 SET 命令,打开“数据工作期”窗口,并显示在当前数据工作期中的工作区中打开的表的别名。,“数据工作期”窗口,3.4 数据表的基本操作,3.4.4 工作区与多表操作,2023/10/14,第三章 数据库、表及其操作,49,3.4.4.2 在工作区中打开/关闭表,1.在工作区中打开表 在“数据工作期”窗口中单击“打开”按钮,在“打开”对话框中选择要打开的表及打开的方式(是否以“独占”的方式打开)。2.在工作区中关闭表在“数据工作期”窗口中选定要关闭的表别名,然后单击“关闭”按钮。或使用SELECT 命令选择工作区后再用USE命令打开或关闭当前工作区中的表。当在同一工作区中打开

37、其他表时,自动关闭原工作区中已打开的表。,3.4 数据表的基本操作,3.4.4 工作区与多表操作,2023/10/14,第三章 数据库、表及其操作,50,3.4.4.3 使用表别名,1.创建用户自定义别名 例如,可以使用以下命令打开表文件“基本信息.dbf”,指定别名“JBXX”:SELECT 0 USE 基本信息 ALIAS JBXX 2.使用Visual FoxPro指定的别名 在前 10 个工作区中指定的默认别名是工作区字母 A J,在工作区 11 32767 中指定的别名是 W11 W32767。,别名是指定给一个表或表达式的另一个名称,通常用来缩短在代码中引用的名称。表的别名是用来引

38、用工作区中打开的表的。当打开一个表时,自动将表名作为默认的别名。也可以另外指定一个别名。,3.4 数据表的基本操作,3.4.4 工作区与多表操作,2023/10/14,第三章 数据库、表及其操作,51,3.4.4.3 使用表别名,3.使用别名选择工作区 如果执行了下面两条命令:SELECT 1 USE 基本信息 ALIAS JBXX,则下面三条命令是等价的:SELECT 1SELECT ASELECT JBXX,4.引用在其他工作区中打开的表 在别名后加上点号分隔符“.”或“-”操作符,然后再加字段名,可以引用其他工作区中的字段。例如,访问其他工作区中打开的“基本信息”表的“冠军”字段:基本信

39、息.冠军 如果要引用的表是用别名打开的,则也可以使用别名。例如:JBXX.举办国,3.4 数据表的基本操作,3.4.4 工作区与多表操作,2023/10/14,第三章 数据库、表及其操作,52,3.4.5 操作表的常用命令,建立与修改、打开与关闭表的命令,(1)建立数据表:CREATE(2)打开数据表:USE IN|(3)关闭数据表:USE IN|(4)关闭所有工作区中的数据表:CLOSE TABLES ALL(5)关闭所有打开的文件:CLOSE ALL(6)打开表设计器(显示/修改表结构):MODIFY STRUCTURE(7)打开“浏览”窗口(显示/修改表记录):BROWSE FIELDS

40、,3.4 数据表的基本操作,2023/10/14,第三章 数据库、表及其操作,53,3.4.5 操作表的常用命令,3.4.5.2 显示表结构与表记录的命令,(1)显示表结构 DISPLAY|LIST STRUCTURE TO PRINTER PROMPT|TO FILE(2)显示表记录 DISPLAY|LIST FIELDS FOR WHILE TO PRINTER PROMPT|TO FILE 当“范围”省略时,DISPLAY命令默认为当前记录,而LIST默认为全部记录。,3.4 数据表的基本操作,2023/10/14,第三章 数据库、表及其操作,54,3.4.5 操作表的常用命令,3.4.

41、5.3 更新、添加与删除表记录命令,(1)交互式修改记录 EDIT|CHANGE FOR WHILE(2)直接修改记录 REPLACE WITH,字段名2 WITH表达式2.范围 FOR|WHILE(3)在表的末尾追加(空白)记录:APPEND BLANK(4)利用已有文件追加记录 APPEND FROM FIELDS FOR SDF(5)在当前记录之后(之前)插入(空白)记录:INSERT BEFORE BLANK(6)删除记录(删除标记):DELETE 范围 FOR WHILE(7)恢复记录(去删除标记):RECALL 范围 FOR WHILE(8)从磁盘上删除表中有删除标记的记录:PAC

42、K(9)从磁盘上删除表中所有的记录:ZAP注意:如果在表上建立了主索引或候选索引,则不能用以上的APPEND或INSERT命令插入记录,必须使用SQL的INSERT命令。,3.4 数据表的基本操作,2023/10/14,第三章 数据库、表及其操作,55,3.4.5 操作表的常用命令,3.4.5.4 查找与定位、过滤与筛选及移动记录指针的命令,(1)查找(定位)记录 LOCATE FOR 范围 WHILE(2)继续查找(满足LOCATE条件的)下一记录 CONTINUE(3)过滤记录 SET FILTER TO(4)筛选字段 SET FIELDS TO|ALL(5)定位记录指针 GO|GOTO|

43、BOTTOM|TOP(6)移动记录指针 SKIP 数值表达式,3.4 数据表的基本操作,2023/10/14,第三章 数据库、表及其操作,56,3.4.5 操作表的常用命令,3.4.5.5 其他命令,(1)复制表文件的结构:COPY STRUCTURE TO FIELDS(2)复制表文件:COPY TO 范围 FOR WHILE FIELDS(3)将表文件复制成文本文件:COPY TO TYPE DELIMITED(4)文件复制命令:COPY FILE TO(5)将表的结构复制成记录内容:COPY STRUCTURE EXTENDED TO FIELDS(6)选择当前工作区:SELECT|(7

44、)物理排序:SORT TO ON/A|/D/C,/A|/D/C.ASCENDING|DESCENDING FIELDS FOR(8)显示文件内容:TYPE TO PRINTER PROMPT|TO FILE(9)设置是否以独占的方式打开数据表:SET EXCLUSIVE ON|OFF,3.4 数据表的基本操作,2023/10/14,第三章 数据库、表及其操作,57,3.4.5 操作表的常用命令,3.4.5.6 使用命令对表中记录排序,所谓“排序”,就是指定记录排列的先后顺序。建表时,输入到新表的记录按照输入顺序存储,在浏览表时,记录按输入的顺序出现。SORT TO ON/A|/D/C,/A|/

45、D/C.ASCENDING|DESCENDING FIELDS FOR/A|/D:/A按升序排列,/D按降序排列,默认为按升序排列;/C:排序时不区分大小写字母,默认区分大小写;ASCENDING|DESCENDING:除了用/A|/D说明升序或降序的字段外,其他参与排序的字段的排序方式,默认为按升序排列;例如,要将“基本信息”表生成一个按届次降序排序的新表:SORT ON 届次/D TO JBXX1 排序后并不改变原表的顺序,但可以生成一个排过序的新表。,3.4 数据表的基本操作,2023/10/14,第三章 数据库、表及其操作,58,Visual FoxPro表中的索引是一个记录号的列表,

46、它指向待处理的记录,并确定了记录的处理顺序。表索引存储了一组记录指针。索引并不改变表中所存储数据的顺序,只改变Visual FoxPro读取每条记录的顺序。用户可以用索引快速显示、查询或者打印记录,还可以选择记录、控制重复字段的输入并支持表间的联系操作。索引对于数据库内表之间创建关联至关重要。在数据库中要建立各表之间的联系,就要正确合理地建立所有表中的索引。,3.5 索引,3.5.1 索引的概念,2023/10/14,第三章 数据库、表及其操作,59,3.5.1.1 索引文件的类型,1.结构复合索引文件 扩展名为.CDX。结构复合索引文件具有与表相同的文件名,当打开与它同名的表时也自动打开该结

47、构复合索引文件,关闭的同时自动关闭它。当在表中进行记录的添加、修改和删除时,系统会自动对结构复合索引文件中的全部索引记录进行维护。2.单独索引文件 只包含单个索引项,扩展名为.IDX,其主文件名称不能和相关表同名,而且该文件不会随着表的打开而自动打开。3.非结构复合索引文件 包含多个索引项,扩展名为.CDX。必须用命令打开,只有在该文件打开时,系统才能维护索引标记。可以看作是多个.IDX文件的组合。结构复合索引文件是在数据库中最普遍也最重要的一种索引文件。以下讨论的是.CDX结构复合索引文件。,3.5 索引,3.5.1 索引的概念,2023/10/14,第三章 数据库、表及其操作,60,3.5

48、.1.2 索引的类型,3.5 索引,3.5.1 索引的概念,四种索引类型:主索引、候选索引、普通索引和唯一索引。1.主索引 不允许在索引关键字中出现重复值的索引。对于每一个表只能建立一个主索引。自由表没有主索引。2.候选索引 在索引关键字中不允许出现重复值的索引,作为主索引的候选者出现,一个表可以创建多个候选索引。3.唯一索引 唯一索引无法防止重复值记录的建立。但在唯一索引中,只在索引文件中保存第一次出现的索引值。4.普通索引 除上述三种索引之外的索引就是普通索引。索引关键字段和表达式允许重复值出现,可用普通索引进行表中记录的排序或搜索。,2023/10/14,第三章 数据库、表及其操作,61

49、,3.5.2.1 使用“表设计器”创建或修改索引,3.5 索引,3.5.2 创建索引,1.创建单字段普通索引 2.创建复合字段索引,“表设计器”对话框的“索引”选项卡,2023/10/14,第三章 数据库、表及其操作,62,3.5.2.1 使用表设计器创建或修改索引,3.5 索引,3.5.2 创建索引,3.筛选记录 通过在“表设计器”对话框的“索引”选项卡中的“筛选”框中输入一个筛选表达式,可以控制哪些记录可包含在索引中。4.修改、删除或插入索引 在“表设计器”对话框的“索引”选项卡中可以对表中的索引进行修改。修改:鼠标单击欲修改处,然后加以修改。删除:选择欲删除的索引,单击“删除”按钮。插入

50、:选择欲插入的索引所在的位置,单击“插入”按钮,然后输入或选择索引名、类型和索引表达式。在“表设计器”对话框中设置好索引后,只要关闭“表设计器”对话框,系统便会在表文件的保存目录中自动创建一个扩展名为.CDX的结构复合索引文件。,2023/10/14,第三章 数据库、表及其操作,63,3.5.2.1 使用“表设计器”对话框创建或修改索引,3.5 索引,3.5.2 创建索引,“世界杯”数据库表,在“表设计器”对话框中设置各表的索引。“基本信息”表:“届次”为主关键字,设置为主索引,“日期”设置为候选索引(因为每届的举办时间没有重复值),“举办国”设置为普通索引以方便以举办国为线索进行查询;“参赛

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号