1、第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作1本章内容简介本章内容简介 本章介绍数据库与数据表的设计、创建、使用及表属性的设置。本章介绍数据库与数据表的设计、创建、使用及表属性的设置。学习目标学习目标 理解关系型数据库保存数据的特点,重点掌握数据库中表间的联系,学理解关系型数据库保存数据的特点,重点掌握数据库中表间的联系,学习数据库与数据表的设计、建立与使用的方法,学会在习数据库与数据表的设计、建立与使用的方法,学会在Visual FoxProVisual FoxPro中操作中操作数据库与数据表。数据库与数据表。通过对本章学习,理论上要求能深入地理解关系型数据通过对本
2、章学习,理论上要求能深入地理解关系型数据 库的特点,掌握设库的特点,掌握设计数据库表的方法,理解索引的功能和数据完整性的意义。计数据库表的方法,理解索引的功能和数据完整性的意义。学习切入点及方法学习切入点及方法 以数据管理的需求分析为切入点,通过分析数据库的表间联系来加深对以数据管理的需求分析为切入点,通过分析数据库的表间联系来加深对关系型数据库的理解,多上机练习,掌握数据库与数据表的操作方法。关系型数据库的理解,多上机练习,掌握数据库与数据表的操作方法。建议学时建议学时 课堂讲授课堂讲授8 8 10 10学时,上机学时,上机15 15 20 20学时。另外学生在课后应有预习、复习学时。另外学
3、生在课后应有预习、复习及练习设计各种不同的数据库的时间。及练习设计各种不同的数据库的时间。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作23.1 设计数据库设计数据库3.2 数据库的创建和操作数据库的创建和操作3.3 数据表的创建数据表的创建3.4 数据表的基本操作数据表的基本操作3.5 索引索引3.6 数据完整性数据完整性第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作3Visual FoxPro是一个关系数据库管理系统。是一个关系数据库管理系统。关系型数据库管理系统以表的形式管理所有的数据。关系型数据库管理系统以表的形式管理所有的数据。数据库:
4、指存储在外存上的有结构的数据集合。在在Visual FoxPro中,数据库用于存储数据库表的属中,数据库用于存储数据库表的属性,组织、关联表和视图,创建存储过程。性,组织、关联表和视图,创建存储过程。在在Visual FoxPro中,表分为数据库表和自由表两类。中,表分为数据库表和自由表两类。属于某一数据库的表称为数据库表;属于某一数据库的表称为数据库表;不属于任何数据库而独立存在的表称为自由表。不属于任何数据库而独立存在的表称为自由表。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作4n设计数据库一般包括以下几个基本过程:设计数据库一般包括以下几个基本过程:1.分析数据
5、需求:确定需要数据库保存那些信息。分析数据需求:确定需要数据库保存那些信息。2.确定需要的表:按不同的主题将信息分配到不同的数据表中。确定需要的表:按不同的主题将信息分配到不同的数据表中。3.确定所需字段:确定每个表中要保存哪些信息。确定所需字段:确定每个表中要保存哪些信息。4.确定表间联系:分析数据库中的表间联系。确定表间联系:分析数据库中的表间联系。5.完善设计:对设计进一步分析,查找错误,对设计方案进一步完善。完善设计:对设计进一步分析,查找错误,对设计方案进一步完善。在数据库应用系统中,数据库的设计是一项非常重要的工作,数据库性能在数据库应用系统中,数据库的设计是一项非常重要的工作,数
6、据库性能的优劣将直接影响到最终应用系统的性能。经过长期摸索,人们提出了数据库的优劣将直接影响到最终应用系统的性能。经过长期摸索,人们提出了数据库设计方法以及各种设计准则和规程,这就是设计方法以及各种设计准则和规程,这就是规范化设计方案。规范化设计方案。3.1设计数据库设计数据库确定所需字段包括以下几个方面:确定所需字段包括以下几个方面:1.字段唯一性字段唯一性 2.字段无关性字段无关性3.使用主关键字使用主关键字 4.外部关键字外部关键字5.收集所需的全部信息收集所需的全部信息 6.以最小的逻辑单位存储信息以最小的逻辑单位存储信息第三章 数据库、表及其操作2023-9-20第三章 数据库、表及
7、其操作5设计数据库3.1.1 分析数据需求分析数据需求 数据库设计的第一步是明确数据库的使用目的。需要从数据数据库设计的第一步是明确数据库的使用目的。需要从数据库中得到哪些信息,数据库是作什么用途。明确目的之后,才可库中得到哪些信息,数据库是作什么用途。明确目的之后,才可以确定需要保存哪些主题的信息(表),以及每个主题需要保存以确定需要保存哪些主题的信息(表),以及每个主题需要保存哪些信息(字段),这些主题之间的关系如何。哪些信息(字段),这些主题之间的关系如何。3.1.2 确定数据库表确定数据库表 在关系型数据库中,每一个关系都是一个二维表。在一个数在关系型数据库中,每一个关系都是一个二维表
8、。在一个数据库中可以有若干个关联的二维表(关系)。据库中可以有若干个关联的二维表(关系)。3.1.3 确定所需字段确定所需字段 字段:是表中最小的数据单位,决定了表中要保存的信息类型。字段:是表中最小的数据单位,决定了表中要保存的信息类型。为了保证数据的不多余性且不遗漏信息,在确定表中所需字段为了保证数据的不多余性且不遗漏信息,在确定表中所需字段时应考虑时应考虑字段的唯一性、无关性及主关键字和外部关键字字段的唯一性、无关性及主关键字和外部关键字等要求。等要求。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作63.1.4 确定表间联系确定表间联系 Visual FoxPro
9、将表间的联系归结为将表间的联系归结为3种:种:一对一、一对多和多对多。一对一、一对多和多对多。3.1.4.1 一对一联系一对一联系 如果如果A表的一个记录在表的一个记录在B表中只能对应一个记录,而表中只能对应一个记录,而B表中的一个记录在表中的一个记录在A表中也只能有一个记录与之对应,则两表之间就是表中也只能有一个记录与之对应,则两表之间就是一对一的联系一对一的联系。例如:一个单位人事部的职工表和财务部的工资表就是一对一的联系。例如:一个单位人事部的职工表和财务部的工资表就是一对一的联系。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作73.1.4 确定表间联系确定表间联
10、系3.1.4.2 一对多联系一对多联系 如果对于如果对于A表中的任意一个记录,在表中的任意一个记录,在B表中可以有多个记录与之对应,表中可以有多个记录与之对应,但反过来但反过来B表中的任意记录,在表中的任意记录,在A表中只有一个记录与之对应,则两表之间表中只有一个记录与之对应,则两表之间就是一对多的联系。就是一对多的联系。在一对多联系中,位于在一对多联系中,位于“一一”端的表称为端的表称为父表父表,和父表关联的那个表为,和父表关联的那个表为子表子表。父表也称为。父表也称为主表主表或或主控表主控表,子表又称为,子表又称为相关表相关表或或受控表受控表。在一对一或一对多联系中,位于在一对一或一对多联
11、系中,位于“一一”端的表中用于建立联系的字段必端的表中用于建立联系的字段必须是须是主关键字主关键字字段,而位于字段,而位于“多多”端的表中用于建立联系的字段是端的表中用于建立联系的字段是外部关键外部关键字字字段。字段。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作83.1.4 确定表间联系确定表间联系3.1.4.2 一对多联系一对多联系 例如学校里的班级和学生:一个班级有多个学生,而一个学生只能在例如学校里的班级和学生:一个班级有多个学生,而一个学生只能在一个班级里,所以班级和学生之间就是一对多的联系。班级表和学生表通一个班级里,所以班级和学生之间就是一对多的联系。班级
12、表和学生表通过编号建立起了一对多联系。过编号建立起了一对多联系。一对多关系示意图一对多关系示意图第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作93.1.4 确定表间联系确定表间联系3.1.4.3 多对多联系多对多联系 如果如果A表的一个记录在表的一个记录在B表中可以对应多个记录,同样表中可以对应多个记录,同样B表中的一个记录表中的一个记录在在A表中也可以对应多个记录,则两表之间就是多对多的联系。表中也可以对应多个记录,则两表之间就是多对多的联系。在设计数据库时,应将多对多联系分解成两个一对多联系,其方法就在设计数据库时,应将多对多联系分解成两个一对多联系,其方法就是在具
13、有多对多联系的两个表之间创建第三个表。是在具有多对多联系的两个表之间创建第三个表。用于分解多对多联系的表称为用于分解多对多联系的表称为“纽带表纽带表”。因为它在两表之间起着纽带。因为它在两表之间起着纽带的作用,可以把两个表的的作用,可以把两个表的主关键字主关键字都放在这个纽带表中。都放在这个纽带表中。纽带表可以只包含它所链接的两个表的纽带表可以只包含它所链接的两个表的主关键字,主关键字,也可以包含其它信也可以包含其它信息。在纽带表中,两个字段连在一起就能使每个记录具有唯一值。息。在纽带表中,两个字段连在一起就能使每个记录具有唯一值。第三章 数据库、表及其操作2023-9-20第三章 数据库、表
14、及其操作103.1.4 确定表间联系确定表间联系3.1.4.3 多对多联系多对多联系 例如学校里的课程和学生:一门课程有多个学生学习,而一个学生也要例如学校里的课程和学生:一门课程有多个学生学习,而一个学生也要学习多门课程,所以课程和学生之间就是多对多的联系。学习多门课程,所以课程和学生之间就是多对多的联系。因为学生学习的每门课程都有相应的成绩,可以通过成绩将课程和学生因为学生学习的每门课程都有相应的成绩,可以通过成绩将课程和学生联系起来。联系起来。“成绩成绩”表就是表就是“学生学生”表和表和“课程课程”表之间的表之间的纽带表纽带表。多对多关系的分解多对多关系的分解第三章 数据库、表及其操作2
15、023-9-20第三章 数据库、表及其操作113.1.4 确定表间联系确定表间联系3.1.4.3 多对多联系多对多联系多对多关系分解成两个一对多关系的分解示意图多对多关系分解成两个一对多关系的分解示意图第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作123.1.5 完善数据库设计完善数据库设计 在试验最初的数据库时,很可能会发现需要改进的地方。在试验最初的数据库时,很可能会发现需要改进的地方。是否遗忘了字段?是否有需要的信息没有包括进去?如果是,是否遗忘了字段?是否有需要的信息没有包括进去?如果是,是否属于已创建的表?如果不在创建的表中,需要另外创建一个表。是否属于已创建
16、的表?如果不在创建的表中,需要另外创建一个表。是否为每个表选择了合适的主关键字?在使用主关键字查找记录是否为每个表选择了合适的主关键字?在使用主关键字查找记录时,它是否很容易记忆和输入?要确保主关键字值不会出现重复。时,它是否很容易记忆和输入?要确保主关键字值不会出现重复。是否在某个表中重复输入了同样的信息?如果是,需要考虑将是否在某个表中重复输入了同样的信息?如果是,需要考虑将此表分成两个一对多联系的表。此表分成两个一对多联系的表。是否有字段很多、记录却很少的表,而且许多记录中的字段值为是否有字段很多、记录却很少的表,而且许多记录中的字段值为空?如果是,要考虑重新设计该表,使它的字段减少,记
17、录增多。空?如果是,要考虑重新设计该表,使它的字段减少,记录增多。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作133.1.6 示例数据库:示例数据库:“世界杯世界杯”数据需求:数据需求:存放各届足球世界杯举办的时间、地点、参赛队以及冠军、存放各届足球世界杯举办的时间、地点、参赛队以及冠军、最佳球员、最佳射手归属等方面的信息。最佳球员、最佳射手归属等方面的信息。可以查出每届的参赛队成绩、每届的冠军、最佳球员、最佳可以查出每届的参赛队成绩、每届的冠军、最佳球员、最佳射手的信息;以及每个参赛队参赛次数、参赛成绩等信息。射手的信息;以及每个参赛队参赛次数、参赛成绩等信息。设计
18、要求:设计要求:数据表信息如下:数据表信息如下:“基本信息基本信息”各届世界杯的基本信息,如:举办的时间、地点、举办国、各届世界杯的基本信息,如:举办的时间、地点、举办国、是否点球决以及冠军得主等。是否点球决以及冠军得主等。“参赛队参赛队”参赛队的有关信息。包括参赛队名称,所属的地区(在参赛队的有关信息。包括参赛队名称,所属的地区(在哪个洲)等。哪个洲)等。“参赛成绩参赛成绩”各个参赛队的在历届世界杯中的比赛成绩。各个参赛队的在历届世界杯中的比赛成绩。“最佳球员最佳球员”历届世界杯所评选的最佳球员的信息。历届世界杯所评选的最佳球员的信息。“最佳射手最佳射手”历届世界杯所评选的最佳射手的信息。历
19、届世界杯所评选的最佳射手的信息。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作14字段及主关键字:字段及主关键字:届次、届次、日期、举办国、队数、冠军、点球决胜、日期、举办国、队数、冠军、点球决胜、举办背景、照片。举办背景、照片。参赛队、参赛队、地区、备注。地区、备注。届次、参赛队、届次、参赛队、成绩。成绩。届次、届次、姓名、国籍。姓名、国籍。“基本信息基本信息”“参赛队参赛队”“参赛成绩参赛成绩”“最佳球员最佳球员”“最佳射手最佳射手”届次、届次、姓名、国籍、进球数。姓名、国籍、进球数。3.1.6 示例数据库:示例数据库:“世界杯世界杯”第三章 数据库、表及其操作20
20、23-9-20第三章 数据库、表及其操作15世界杯数据库中各表间关系世界杯数据库中各表间关系表间关系:表间关系:3.1.6 示例数据库:示例数据库:“世界杯世界杯”第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作16创建数据库的常用方法有以下创建数据库的常用方法有以下3 3种:种:1.1.在在“项目管理器项目管理器”中创建数据库;中创建数据库;2.2.使用使用“文件文件”菜单的菜单的“新建新建”命令创建数据库;命令创建数据库;3.3.在在“命令命令”窗口中输入创建数据库的命令。窗口中输入创建数据库的命令。Visual FoxProVisual FoxPro数据库文件的扩展
21、名是数据库文件的扩展名是.DBC.DBC。建立。建立.DBC.DBC文件的文件的同同时,时,自动建立自动建立.DCT.DCT (备注)和(备注)和.DCX.DCX(索引)文件。(索引)文件。3.2 数据库的建立和操作数据库的建立和操作3.2.1 创建数据库创建数据库第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作17 例如,在项目管理器中创建数据库。例如,在项目管理器中创建数据库。在前面已创建的在前面已创建的“世界杯世界杯”项目中创建数据库的操作步骤如下:项目中创建数据库的操作步骤如下:在在“世界杯世界杯”项目中选择项目中选择“数据数据”选项,选择选项,选择“数据库数据库
22、”,单击,单击“新建新建”按钮,打开按钮,打开“新建数据库新建数据库”对话框。对话框。在在“新建数据库新建数据库”对话框中单击对话框中单击“新建数据库新建数据库”按钮按钮,打开,打开“创建创建”对对话框。话框。在在“创建创建”对话框的对话框的“数据库名数据库名”文本框中输入文本框中输入“世界杯世界杯”作为数作为数据库据库文件的名称;选择保存数据库文件的文件夹文件的名称;选择保存数据库文件的文件夹“D:世界杯世界杯”;保存类型为默;保存类型为默认的认的“数据库(数据库(*.DBC)”。单击单击“保存保存”按钮,打开按钮,打开“数据库设计器数据库设计器”对话框。对话框。3.2 数据库的建立和操作数
23、据库的建立和操作3.2.1 创建数据库创建数据库第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作183.2.2 操作数据库操作数据库3.2.2.1 在项目中添加在项目中添加/移出数据库移出数据库3.2.2.2 打开打开/关闭数据库关闭数据库3.2.2.3 打开数据库设计器打开数据库设计器“数据库设计器数据库设计器”窗口是一个带有工具栏的设窗口是一个带有工具栏的设计窗口。计窗口。“数据库设计器数据库设计器”工具栏一般随工具栏一般随“数数据库设计器据库设计器”窗口同时打开,如果窗口同时打开,如果“数据库设数据库设计器计器”工具栏没有打开,可选工具栏没有打开,可选“显示显示”菜
24、单下菜单下的的“工具栏工具栏”命令,在命令,在“工具栏工具栏”对话框中选对话框中选中中“数据库设计器数据库设计器”工具栏将其打开。工具栏将其打开。“数据库设计器”和“数据库设计器”工具栏3.2.2.4 给数据库添加注释给数据库添加注释 3.2.2.5 使用多个数据库使用多个数据库 3.2.2.6 数据库错误数据库错误 第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作193.2.2.7 操作数据库的常用命令操作数据库的常用命令 3.2.2 操作数据库操作数据库建立数据库:建立数据库:CREATE DATABASE 打开数据库:打开数据库:OPEN DATABASE 打开数据
25、库设计器:打开数据库设计器:MODIFY DATABASE 设置当前数据库:设置当前数据库:SET DATABASE TO 显示当前数据库结构:显示当前数据库结构:DISPLAY DATABASE 关闭数据库:关闭数据库:CLOSE DATABASE ALL删除数据库:删除数据库:DELETE DATABASE 第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作203.3 数据表的创建数据表的创建 前面建立的前面建立的“世界杯世界杯”数据库还是一个空数据库。数据库还是一个空数据库。在使用在使用“世界杯世界杯”数据库之前,需要先将前面为这个数据库数据库之前,需要先将前面为这个
26、数据库设计的的设计的的5个表:个表:“基本信息基本信息”、“参赛队参赛队”、“参赛成绩参赛成绩”、“最佳射手最佳射手”和和“最佳球员最佳球员”表建立起来。表建立起来。在在Visual FoxPro中,创建一个新表分为两个步骤:中,创建一个新表分为两个步骤:步骤一:步骤一:创建表的结构。创建表的结构。即说明表包含哪些字段,每个即说明表包含哪些字段,每个 字段的长度及数据类型等。字段的长度及数据类型等。步骤二:步骤二:输入记录。输入记录。即向表中输入数据。即向表中输入数据。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作213.3 数据表的创建数据表的创建3.3.1 建立表结
27、构建立表结构3.3.1.1 表的特征表的特征 表可存储若干条记录。表可存储若干条记录。每条记录可以有若干个字段,而且每条记录的字段结构相同,每条记录可以有若干个字段,而且每条记录的字段结构相同,也就是具有相同的字段名、字段类型和字段顺序。也就是具有相同的字段名、字段类型和字段顺序。字段可以是不同的类型,以便存储不同类型的数据。字段可以是不同的类型,以便存储不同类型的数据。记录中每个字段的顺序与存储的数据无关。记录中每个字段的顺序与存储的数据无关。每条记录在表中的顺序与存储的数据无关。每条记录在表中的顺序与存储的数据无关。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作22
28、3.3 数据表的创建数据表的创建3.3.1 建立表结构建立表结构3.3.1.2 设计字段属性设计字段属性 一个表中的所有字段组成了表一个表中的所有字段组成了表的结构,字段属性决定了表的结构。的结构,字段属性决定了表的结构。字段属性包括:字段字段属性包括:字段名称、类名称、类型、宽度、小数位数及是否允许为型、宽度、小数位数及是否允许为空。空。字段类型说明字段类型说明第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作233.3 数据表的创建数据表的创建3.3.1 建立表结构建立表结构3.3.1.3 创建数据库表创建数据库表 可以使用以下可以使用以下3种方法启动数据库表的创建:种
29、方法启动数据库表的创建:方法一:方法一:在在“项目管理器项目管理器”中选择中选择“数据库数据库”的的“表表”选项,单击选项,单击“新建新建”按钮,即可创建属于该数据库的数据库表。按钮,即可创建属于该数据库的数据库表。方法二:方法二:在在“数据库设计器数据库设计器”中,从中,从“数据库数据库”菜单中选择菜单中选择“新建新建表表”命令或单击命令或单击“数据库设计器数据库设计器”工具栏上的工具栏上的“新建表新建表”按钮。按钮。方法三:方法三:选择选择“文件文件”菜单中的菜单中的“打开打开”命令打开数据库,然后再命令打开数据库,然后再选择选择“文件文件”菜单中的菜单中的“新建新建”命令来创建表,此时创
30、建的新命令来创建表,此时创建的新表自动成为当前数据库中的数据库表。表自动成为当前数据库中的数据库表。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作243.3 数据表的创建数据表的创建3.3.1 建立表结构建立表结构3.3.1.3 创建数据库表创建数据库表 采用前述采用前述3种方法,都将进入创建方种方法,都将进入创建方法选择框,可以选择表向导或表设计器法选择框,可以选择表向导或表设计器来创建数据库表。来创建数据库表。下面将分别采用表设计器和表向导下面将分别采用表设计器和表向导 来创建世界杯数据库中的来创建世界杯数据库中的4个数据库表,而个数据库表,而“基本信息基本信息”表
31、,可以从自由表转为数据库表。表,可以从自由表转为数据库表。为方便管理,在为方便管理,在“D:世界杯世界杯”下创建一个名为下创建一个名为“表表”的文件的文件夹,用于存放所有创建的表。保存类型为夹,用于存放所有创建的表。保存类型为“表表/DBF(*.DBF)”,将创建的表保存为将创建的表保存为.DBF文件。文件。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作253.3 数据表的创建数据表的创建3.3.1 建立表结构建立表结构3.3.1.3 创建数据库表创建数据库表 “世界杯世界杯”数据库中的数据库中的5个表个表 表结构创建完成后,表结构创建完成后,将得到右图所示的项目将得到
32、右图所示的项目管理器窗口,显示世界管理器窗口,显示世界杯数据库中的杯数据库中的5个数据表。个数据表。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作263.3 数据表的创建数据表的创建3.3.2 记录的输入和删除记录的输入和删除3.3.2.2 浏览窗口的使用浏览窗口的使用1.浏览记录浏览记录 滚动条、滚动条、Tab键、键、Shift+Tab键、键、PageUp键、键、PageDown键键 当前记录:记录指针当前记录:记录指针查看备注型或通用型字段:双击该字段。查看备注型或通用型字段:双击该字段。2.改变列宽和行高改变列宽和行高3.调整字段顺序调整字段顺序 在浏览窗口改变列
33、宽和列的排列顺序不会影响字段的实际结构。在浏览窗口改变列宽和列的排列顺序不会影响字段的实际结构。4.打开或关闭网格线打开或关闭网格线 选择选择“显示显示”菜单中的菜单中的“网格线网格线”命令可显示或隐藏浏览窗口中的网格命令可显示或隐藏浏览窗口中的网格线。线。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作273.3 数据表的创建数据表的创建3.3.2 记录的输入和删除记录的输入和删除5.切换显示方式切换显示方式两种显示方式:浏览方式和编辑方式两种显示方式:浏览方式和编辑方式第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作283.3 数据表的创建数据表
34、的创建3.3.2 记录的输入和删除记录的输入和删除6.拆分浏览窗口拆分浏览窗口 将鼠标指向窗口左下角的拆分条,鼠标指针变为左右箭头对接的形将鼠标指向窗口左下角的拆分条,鼠标指针变为左右箭头对接的形状,将拆分条拖到所需的位置。状,将拆分条拖到所需的位置。调整拆分窗口的大小,只需向左或向右拖动拆分条即可。调整拆分窗口的大小,只需向左或向右拖动拆分条即可。默认情况下,两个窗口是链接的。取消默认情况下,两个窗口是链接的。取消“表表”菜单中菜单中“链接分区链接分区”的选中状态,可以中断两个窗口之间的联系,使它们的功能相对独立。的选中状态,可以中断两个窗口之间的联系,使它们的功能相对独立。拆分拆分“浏览浏
35、览”窗口可以查看同一表中的两个不同区域或者分别用窗口可以查看同一表中的两个不同区域或者分别用浏浏览览和和编辑编辑方式查看同一记录。方式查看同一记录。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作293.3 数据表的创建数据表的创建3.3.2 记录的输入和删除记录的输入和删除3.3.2.3 追加记录追加记录 利用其他表中已有的相同内容,可以快速给新表追加记录。利用其他表中已有的相同内容,可以快速给新表追加记录。1.追加源表中的所有记录追加源表中的所有记录 将需要追加记录的表在浏览窗口中打开。将需要追加记录的表在浏览窗口中打开。选择选择“表表”菜单下菜单下“追加记录追加记录
36、”命令。命令。2.有选择的追加记录和字段有选择的追加记录和字段 在在“追加来源追加来源”对话框中单击对话框中单击“选项选项”按钮,打开按钮,打开“追加来源选项追加来源选项”对对话框。话框。如只想追加第如只想追加第8届世界杯的记录,表达式为:届次届世界杯的记录,表达式为:届次=”08”(因届次为查找方便定义成字符型,字段变量的值应加上英文双引号)。(因届次为查找方便定义成字符型,字段变量的值应加上英文双引号)。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作303.3 数据表的创建数据表的创建3.3.2 记录的输入和删除记录的输入和删除3.3.2.1 在浏览窗口中输入记录在
37、浏览窗口中输入记录 在在“项目管理器项目管理器”中选择表,单击中选择表,单击“浏览浏览”按钮即可打开按钮即可打开“浏览浏览”窗口。窗口。打开打开“浏览浏览”窗口后,选择窗口后,选择“显示显示”菜单下的菜单下的“追加方式追加方式”命令命令,即可在即可在“浏览浏览”窗口中输入数据。在输入记录的字段值时,只能输入数窗口中输入数据。在输入记录的字段值时,只能输入数据类型有效的值。据类型有效的值。备注型字段备注型字段和和通用型字段通用型字段的内容不能直接在的内容不能直接在“浏览浏览”窗口中输入。窗口中输入。双击双击该字段,打开专门的备注型字段或通用型字段输入窗口,即可在其该字段,打开专门的备注型字段或通
38、用型字段输入窗口,即可在其中输入备注型字段或通用型字段的内容。中输入备注型字段或通用型字段的内容。输入完所有的记录后,单击浏览窗口右上角的关闭按钮。输入完所有的记录后,单击浏览窗口右上角的关闭按钮。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作313.3 数据表的创建数据表的创建3.3.2 记录的输入和删除记录的输入和删除3.3.2.4 修改记录内容修改记录内容 在在“浏览浏览”窗口中修改表中字段的内容,只需找到记录中要修改的字段窗口中修改表中字段的内容,只需找到记录中要修改的字段所在的单元格,输入正确的内容即可。所在的单元格,输入正确的内容即可。编辑编辑“备注型备注型
39、”字段,可在字段,可在“浏览浏览”窗口中双击该字段。这时会打开一窗口中双击该字段。这时会打开一个个“编辑编辑”窗口,其中显示了窗口,其中显示了“备注型备注型”字段的内容。字段的内容。通过双击通过双击“浏览浏览”窗口中的窗口中的“通用型通用型”字段,可以编辑这个对象。字段,可以编辑这个对象。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作323.3 数据表的创建数据表的创建3.3.2 记录的输入和删除记录的输入和删除3.3.2.5 删除记录删除记录 在在Visual FoxPro中删除记录的过程,分为两大步骤:中删除记录的过程,分为两大步骤:第一步:对要删除的记录作删除标记
40、,又称为逻辑删除。第一步:对要删除的记录作删除标记,又称为逻辑删除。第二步:彻底删除,又称为物理删除。第二步:彻底删除,又称为物理删除。在浏览窗口中,记录前的小方块就是记录的删除标记条。在浏览窗口中,记录前的小方块就是记录的删除标记条。记录删除标记条变成了黑色,表示记录已被作了删除标记。记录删除标记条变成了黑色,表示记录已被作了删除标记。此时系统就不能对记录进行任何操作,但记录仍然保存在表中。此时系统就不能对记录进行任何操作,但记录仍然保存在表中。对已作了删除标记的记录,用户既可以将其彻底删除,也对已作了删除标记的记录,用户既可以将其彻底删除,也可以将其恢复。可以将其恢复。第三章 数据库、表及
41、其操作2023-9-20第三章 数据库、表及其操作333.3 数据表的创建数据表的创建3.3.2 记录的输入和删除记录的输入和删除3.3.2.5 删除记录删除记录 条件删除:条件删除:使用使用“删除删除”对话框进行条件删对话框进行条件删除。除。打开打开“浏览浏览”窗口。窗口。选择选择“表表”下下“删除记录删除记录”,出现,出现“删除删除”对话框。对话框。在在“作用范围作用范围”列表框中选择操作范围:列表框中选择操作范围:All:全部记录。:全部记录。Next:从当前记录开始的若干个记录。:从当前记录开始的若干个记录。Record:特指某个记录。:特指某个记录。Rest:从当前记录开始直到最后一
42、个记录。:从当前记录开始直到最后一个记录。“删除删除”对话框对话框 1.作删除标记作删除标记 逐一删除:逐一删除:在浏览窗口中,用鼠标单击记录前的删除标记条,使其变在浏览窗口中,用鼠标单击记录前的删除标记条,使其变黑,就给该记录加上了删除标记。黑,就给该记录加上了删除标记。选择选择“For”或或“While”构造逻辑表达式来设置删除记录需要满足的条构造逻辑表达式来设置删除记录需要满足的条件件。单击单击“删除删除”,符合条件的记录打上删除标记。,符合条件的记录打上删除标记。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作343.3 数据表的创建数据表的创建3.3.2 记录的
43、输入和删除记录的输入和删除3.3.2.5 删除记录删除记录 2.彻底删除彻底删除 若要将已作了删除标记的记录真正地从表中删除,从若要将已作了删除标记的记录真正地从表中删除,从“表表”菜单中选菜单中选择择“彻底删除彻底删除”命令,在弹出的命令,在弹出的“移去已删除记录移去已删除记录”对话框中单击对话框中单击“是是”按钮按钮也可以在也可以在“命令命令”窗口使用窗口使用 PACK 命令。命令。3.删除全部记录删除全部记录 如果想删除表中的所有记录,只留下表的结构,可使用如果想删除表中的所有记录,只留下表的结构,可使用 ZAP 命令。命令。在在“命令命令”窗口中输入窗口中输入“ZAP”命令将彻底删除表
44、中的所有记录。命令将彻底删除表中的所有记录。注意:此命令破坏性极大,应慎用。注意:此命令破坏性极大,应慎用。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作353.3 数据表的创建数据表的创建3.3.2 记录的输入和删除记录的输入和删除3.3.2.6 还原记录还原记录 标记记录并不等于删除记录。可以撤销删除标记,恢复成原来的状态。标记记录并不等于删除记录。可以撤销删除标记,恢复成原来的状态。逐一恢复:逐一恢复:用鼠标单击记录前的删除标记,使其恢复为白色,取消删除用鼠标单击记录前的删除标记,使其恢复为白色,取消删除标记。标记。条件恢复:条件恢复:“表表”菜单中的菜单中的“恢
45、复记录恢复记录”命令。操作和命令。操作和“删除记录删除记录”命命令相似。令相似。注意:执行注意:执行“彻底删除彻底删除”命令后,带有删除标记的记录被从磁盘上彻底命令后,带有删除标记的记录被从磁盘上彻底删除。被彻底删除的记录不能再用删除。被彻底删除的记录不能再用“恢复记录恢复记录”命令恢复。命令恢复。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作363.4 数据表的基本操作数据表的基本操作3.4.1 在数据库设计器中操作表在数据库设计器中操作表3.4.1.1 打开打开/关闭表关闭表 1 打开表打开表 方法一:在方法一:在“项目管理器项目管理器”窗口中选定要打开的表,单击窗
46、口中选定要打开的表,单击“浏览浏览”按按钮,钮,则会打开该表并在则会打开该表并在“浏览浏览”窗口中显示出来。窗口中显示出来。方法二:从方法二:从“文件文件”菜单中选择菜单中选择“打开打开”命令或直接单击工具栏上的命令或直接单击工具栏上的“打开打开”按钮,然后在按钮,然后在“打开打开”对话框中选择要打开的表将其打对话框中选择要打开的表将其打开。开。方法三:在方法三:在“命令命令”窗口输入窗口输入“USE”命令。命令。例如,要打开例如,要打开“基本信息基本信息”表,在表,在命令窗口命令窗口中输入以下命令:中输入以下命令:USE 基本信息基本信息 2 关闭表关闭表 在在“命令命令”窗口输入不带窗口输
47、入不带参数的参数的“USE”命令即可。命令即可。第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作373.4 数据表的基本操作数据表的基本操作3.4.1 在数据库设计器中操作表在数据库设计器中操作表3.4.1.2 在在“数据库设计器数据库设计器”中查看表中查看表1.展开或折叠表展开或折叠表2.重排数据库的表重排数据库的表 3.在数据库中查找表或视图在数据库中查找表或视图4.选择显示的对象选择显示的对象世界杯数据库中的表世界杯数据库中的表第三章 数据库、表及其操作2023-9-20第三章 数据库、表及其操作383.4 数据表的基本操作数据表的基本操作3.4.1 在数据库设计器
48、中操作表在数据库设计器中操作表3.4.1.3 数据库表和自由表数据库表和自由表 Visual FoxPro中的数据表可以有两种存在状态:中的数据表可以有两种存在状态:自由表自由表(即没有和任(即没有和任何数据库关联的何数据库关联的.DBF文件)和文件)和数据库表数据库表(即与数据库关联的(即与数据库关联的.DBF文件)。文件)。数据库表和自由表可以互相转换:当用户将数据库表从一个数据库中移数据库表和自由表可以互相转换:当用户将数据库表从一个数据库中移出,数据库表便成了自由表;反之,如将自由表加入到某一个数据库中,自出,数据库表便成了自由表;反之,如将自由表加入到某一个数据库中,自由表便成了数据
49、库表。由表便成了数据库表。数据库表只能属于一个数据库,数据库表只能属于一个数据库,如想将一个数据库中的表移到其他数据如想将一个数据库中的表移到其他数据库,必须先将该表从数据库中移出变为自由表,再将其加入到另一数据库中。库,必须先将该表从数据库中移出变为自由表,再将其加入到另一数据库中。数据库表和自由表相比,具有一些自由表所没有的属性,如主关键字、数据库表和自由表相比,具有一些自由表所没有的属性,如主关键字、触发器、默认值、表间联系等。将表组合到数据库内,可以使它们协同工作。触发器、默认值、表间联系等。将表组合到数据库内,可以使它们协同工作。第三章 数据库、表及其操作2023-9-20第三章 数
50、据库、表及其操作393.4 数据表的基本操作数据表的基本操作3.4.1 在数据库设计器中操作表在数据库设计器中操作表3.4.1.4 在数据库设计器中添加、移出或删除表在数据库设计器中添加、移出或删除表 1.添加数据库表添加数据库表 2.移出或删除数据库表移出或删除数据库表添加、移去或删除数据库表的操作也可以直接在项目管理器中进行。添加、移去或删除数据库表的操作也可以直接在项目管理器中进行。1.在在“项目管理器项目管理器”窗口中添加数据库表窗口中添加数据库表2.在在“项目管理器项目管理器”窗口中移出或删除数据库表窗口中移出或删除数据库表3.4.1.5 在在“项目管理器项目管理器”中添加、移出或删