数据库的创建与维护.docx
- 文档编号:10255926
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:49
- 大小:36.98KB
数据库的创建与维护.docx
《数据库的创建与维护.docx》由会员分享,可在线阅读,更多相关《数据库的创建与维护.docx(49页珍藏版)》请在冰豆网上搜索。
数据库的创建与维护
章节
第二章数据库的创建与维护
教学
目的
要求
通过对第一章的学习,使学生对数据库的设计过程有个全面的了解,并掌握创建数据库的方法、向数据库中添加表的方法、创建数据库表的方法以及对字段属性的设置,掌握自由表的创建方法以及表结构的修改。
教学
重点
难点
教学重点:
1.掌握创建数据库,并向其中添加表的方法。
2.掌握数据库表以及自由表的创建方法。
3.学会设置字段属性。
4.学会修改数据库表以及自由表的结构。
教学难点:
1.理解自由表与数据库表的区别。
2.表结构的修改。
拟留
作业
与
实训
作业:
1.创建一个学生管理数据库。
2.在数据库下创建一个表1。
3.创建一个表2,并把它添加到数据库中。
4.对表1的结构进行修改。
5.创建一个自由表3。
6.对表3的结构进行修改。
7.向表中输入记录。
实训:
完成实训大纲中实训项目三
小结
通过本章学习:
1.学生在理论方面掌握了数据库设计的一般过程以及数据库的相关知识,并掌握了大纲规定对数据库的创建,以及在数据库下创建和添加表的操作;
2.掌握了创建自由表的操作,并能够把它添加到数据库中;
3.基本掌握了对表结构的修改,并能够完成向表中数据记录的操作;
4.在理论上掌握了自由表与数据库表的区别,在操作中也能够区分自
由表和数据库表的设计器。
教学主要内容
教学方法
时间分配
【学习目标】
知识点:
1.数据库的基础知识
2.数据库的创建
3.数据库的打开与关闭
4.数据库的删除
●技能点:
1.创建数据库。
2.打开与关闭数据库。
3.删除数据库。
第一节数据库的基本知识
一、数据库的基础概念
数据:
是描述事物的符号。
不仅包括各种文字或字符组成的文本形式的数据,而且包括图形、图像、动画、影像、声音等多媒体数据。
数据处理:
将数据转换成信息的过程,通过数据处理可以获得信息。
数据库:
是按一定方式把相关数据组织、存储在计算机中的数据集合,数据库不仅存放数据,而且还存放数据之间的联系。
数据库管理系统:
(DBMS):
是对数据库进行管理的软件系统。
简称为DBMS。
它的功能可概括为五个方面:
数据的组织和存贮、数据的查询、数据的增加删除和修改、数据的排序和索引、数据的统计和分析。
数据库应用系统:
(DBAS)是数据库系统资源开发的面向某一类实际应用的应用软件系统。
一个数据库应用系统由数据库和应用程序两部分组成。
数据库系统:
(DBS)通常所说的数据库系统是指引入了数据库后的计算机系统,除计算机硬件和操作系统外,主要由数据库、数据库管理系统以及用户组成。
数据库管理系统(DBMS)是指帮助用户建立、使用和管理数据库的软件系统。
二、数据库的特点
⏹数据的独立性强
⏹数据的冗余度小
⏹数据的高度共享
数据的结构化
三、数据模型
(1)基本概念
⏹实体:
客观存在并且可以相互区别的事物称为实体。
⏹实体集:
是具有相同类型及相同性质(或属性)的实体集合。
⏹属性:
是实体集中每个成员具有的描述性性质。
⏹联系:
实体之间的对应关系称为联系,它反映了现实事物之间的相互联系。
(2)实体之间的联系
⏹一对一的联系:
实体集A中的每一个实体,在实体集B中都有惟一的一个实体与之联系。
⏹一对多的联系:
实体集A中的每一个实体,在实体集B中都有n个实体与之联系。
⏹多对多的联系:
若实体集A中的每一个实体,在实体集B中都有n个实体与之联系,反之实体集B中的每一个实体,在实体集A中都有m个实体与之联系,则称之为实体A和实体B具有多对多的联系。
(3)数据模型简介
⏹层次模型:
即树型结构,树的节(点)是实体,树的枝是联系,从上到下为一对多的联系。
⏹网状模型:
用网型结构表示实体及其之间的联系的模型称为网状模型。
网状模型代表了多对多的联系。
⏹关系模型:
是以数学理论为基础构造的数据模型,它用二维表格来表示实体集中实体之间的联系。
四、关系数据库
1.基本概念
⏹关系与表
⏹属性与字段
⏹关系模式与表结构
⏹元组与记录
⏹域
⏹码与关键字
⏹关系模型与数据库
2.数据完整性
⏹实体完整性
⏹域完整性
⏹参照完整性
3.对关系数据库的要求
⏹关系中的每个属性必须是不可分割的数据单元。
⏹同一关系中不应有完全相同的属性名。
⏹关系中不应用完全相同的元组。
⏹元组和属性名与次序无关。
4.关系运算
⏹选择运算
⏹投影运算
⏹连接运算
5.关系运算的优化
⏹自然连接
⏹优化方法
第二节数据库及其建立
一、数据库的结构
VisualFoxPro是从dBASE、FoxBASE、FoxPro发展而来,在早期版本中都是直接建立、管理和使用扩展名为.dbf的数据库文件,这些数据库文件是彼此孤立的,没有一个完整的数据库概念和管理方法。
当发展到VisualFoxPro才引入数据库的概念,将扩展名为dbf的数据库文件组织在一起管理,是他们成为相互关联的集合。
在VisualFoxPro中数据库是一个逻辑上的概念和手段,通过一组系统文件将相互联系的数据库表及相关的数据库对象统一组织和管理。
因此。
VisualFoxPro中将dbf文件称做数据库表,简称表。
在建立VisualFoxPro数据库时,相应的数据库名称实际是扩展名为dbc的文件,与之相关的还会自动建立一个扩展名为dct的数据库备注文件和一个扩展名为dcx的数据库索引文件。
也即建立数据库之后,用户可以在磁盘上看到同名的三个文件:
dbc、dct、dcx。
在VisualFoxPro中,数据库(DataBase)与表(Table)是不同的两个实体,数据库文件是各项与数据库相关信息的汇集处,数据库可以管理表(Table)、视图(View)等数据实体,又提供了数据字典、各种数据保护及数据管理功能。
二、创建数据库
一般是先创建一个数据库,然后才创建内含于此数据库的各个表。
我们将示范如何创建一个名为“学生管理”的数据库,以及名为“学生”、“成绩”、“课程”的表。
常用方法有三种:
⏹在项目管理器中建立数据库
⏹通过“新建”对话框建立数据库
⏹使用命令建立数据库:
createdatabase<数据库文件名>
1.在项目管理器中建立数据库
在项目管理器中建立数据库,首先在“数据”选项卡中选择“数据库”,然后单击“新建”按钮并选择“新建数据库”,接着通过创建对话框提示用户输入数据库的名称,即扩展名为dbC的文件名。
例如,输入“学生管理”,即建立一个学生管理数据库,在创建对话框上有“保存”和“取消”等命令按钮,输入数据库名称后单击“保存”命令按钮则完成数据库的建立,并打开“数据库设计器”。
从“文件”菜单中单击“新建”命令,或者使用鼠标单击工具栏中的“新建”按钮,打开“新建”对话框。
2.通过“新建”对话框建立数据库
单击工具栏上的“新建”按钮或者选择“文件”菜单下的“新建”,打开“新建”对话框。
首先在“文件类型”组框中选择“数据库”,然后单击“新建文件”按钮建立数据库,后面的操作和步骤与在项目管理器中建立数据库相同。
3.使用命令交互建立数据库
建立数据库的命令是:
CREATEDATABASEpatabaseName
其中参数DatabaseName给出了要建立的数据库名称;如果不指定数据库名称或使用问号都会弹出创建对话框请用户输入数据库名称。
与前两种建立数据库的方法不同,使用命令建立数据库后不打开数据库设计器,只是数据库处打开状态,即紧接着的后续命令不必再使用OPENDATABASE命令来打开数据库。
三、打开数据库
常用方法有三种:
⏹在项目管理器中打开数据库
⏹通过“打开”对话框建立数据库
⏹使用命令建立数据库:
opendatabase<数据库文件名>
通常在VisualFoxPro开发环境下交互操作时使用前两种方法,在应用程序中使用命令的方法。
在项目管理器中选择了相应的数据库时,数据库将自动打开,所以此时用户可能没有打开数据库的感觉,但不必再手工执行打开数据库的操作。
单击工具栏上的“打开”按钮或者选择“文件”菜单下的“打开”,屏幕上显示“打开”对话框。
在“文件类型”下拉列表框中选择“数据库(.dbc)”,然后选择或在“文件名”文本框后输入数据库文件名,单击“确定”按钮打开数据库。
在“打开”对话框中还有“以只读方式打开”和“独占”复选框可供选择,它们的含义在稍后的命令方式中解释。
打开数据库的命令是OPENDATABASE,具体语法格式如下:
opendatabase<数据库文件名>[EXCLUSIVESHARED]
[NOUPDATE]
[VALIDATE]
其中各参数和选项的含义如下:
数据库文件名:
要打开的数据库名,可以缺省数据库文件扩展名dbc,如果不指定数据库名或使用问号“?
”,则显示“打开”对话框。
EXCLUSIVE:
以独占方式打开数据库,与在“打开”对话框中选择复选框“独占”等效,即不允许其他用户在同一时刻也使用该数据库。
SHARED:
以共享方式打开数据库,等效于在“打开”对话框中不选择复选框“独占”,即允许其他用户在同一时刻使用该数据库。
默认的打开方式由SETEXCLUSIVEON|OFF的设置值确定,系统原默认设置为ON。
NOUPDATE:
指定数据库按只读方式打开,等效于在“打开”对话框中选择复选框“以只读方式打开”,即不允许对数据库进行修改,默认的打开方式是读/写方式,即可修改。
VALIDATE:
指定VisualFoxPro检查在数据库中引用的对象是否合法,例如检查数据库中的表和索引是否可用,检查表的字段或索引的标记是否存在等。
四、修改数据库
VisualFoxPro在建立数据库时建立了扩展名分别为dbc、dot和dcx的三个文件,用户不能直接对这些文件进行修改。
在VisualFoxPro中修改数据库实际是打开数据库设计器,用户可以在数据库设计器中完成各种数据库对象的建立、修改和删除等操作。
数据库设计器是交互修改数据库对象的界面和工具,其中显示数据库中包含的全部表、视图和联系。
在“数据库设计器”窗口活动时,VisualFoxPro显示“数据库”菜单和“数据库设计器”工具栏。
在后续章节中将介绍使用数据库设计器完成各种数据库对象的建立、修改和删除等操作。
可以用以下三种方法打开数据库设计器:
·从项目管理器中打开数据库设计器;
·从“打开”对话框中打开数据库设计器;
·使用命令打开数据库设计器。
从项目管理器中打开数据库设计器的,首先展开数据库分支,然后选择要修改的数据库,最后单击“修改”按钮则在数据库设计器中打开相应的数据库。
从“打开”对话框中打开数据库则会自动打开数据库设计器。
打开数据库设计器的命令是MODIFYDATABASE,具体语法格式如下:
MODIFYDATABASE[DatabaseName][NOWAIT][NOEDIT]
其中各参数和选项的含义如下:
DatabaseName:
给出要修改的数据库名,如果使用问号“?
”或省略该参数则打开“打开”对话框。
NOWAIT:
该选项只在程序中使用,在交互使用的命令窗口中无效。
其作用是在数据库设计器打开后程序继续执行,即继续执行MODIFYDATABASENOWAIT之后的语句。
如果不使用该选项,在打开数据库设计器后,应用程序会暂停,直到数据库设计器关闭后应用程序才会继续执行。
NOEDIT:
使用该选项只是打开数据库设计器,而禁止对数据库进行修改。
五、删除数据库
在练习时或在开发过程中,如果一个数据库不再使用了随时都可以删除,一般可以在项目管理器中删除数据库,也可以用命令删除数据库。
从项目管理器中删除数据库比较简单,直接选择要删除的数据库,然后单击命令按钮“移去”,这时会出现提示对话框,这时可以选择:
移去:
从项目管理器中删除数据库,但并不从磁盘上删除相应的数据库文件;
删除:
从项目管理器中删除数据库,并从磁盘上删除相应的数据库文件;
取消:
取消当前的操作,即不进行删除数据库的操作。
VisualFoxPro的数据库文件并不真正含有数据库表或其他数据库对象,只是在数据库文件中登录了相关的条目信息,表、视图或其他数据库对象是独立存放在磁盘上的。
所以不管是“移去”还是“删除”操作,都没有删除数据库中的表等对象,要在删除数据库时同时删除表等对象,需要使用命令方式删除数据库。
删除数据库的命令是:
DELETEDATABASE,
具体命令格式如下:
DELETEDATABASEDatabaseName|?
[DELETETABLES][RECYCLE]
其中各参数和选项的含义如下:
DatabaseName:
给出要从磁盘上删除的数据库文件名,此时要删除的数据库必须处于关闭状态;如果使用问号“?
”,则会打开删除对话框请用户选择要删除的数据库文件。
DELETETABLES:
选择该选项则在删除数据库文件的同时从磁盘上删除该数据库所含的表(DBF文件)等。
RECYCLE:
选择该选项则将删除的数据库文件和表文件等放入Windows的回收站中,如果需要的话,还可以还原它们。
符。
10分钟
(略讲)
20分钟
(详讲)
20分钟
(详讲)
5分钟
(略讲)
15分钟
(详讲)
10分钟
(详讲)
5分钟
(略讲)
15分钟
(详讲)
教学主要内容
教学方法
时间分配
【学习目标】
知识点:
5.表的结构
6.在数据库中创建表
7.修改表结构
●技能点:
4.在数据库中创建表。
5.使用表设计器修改表结构。
第三节建立数据库表
一、表的结构
数据表就像一般的二维表一样,拥有列(Column)与行(Row)。
以数据库的专业术语来讲,每一列叫做一个字段(Field),字段有字段名和字段值的区别,所有字段名的集合构成了表的第一行(表头),叫做数据表的结构(Structure);所有字段值的集合分别构成了表的每一行,叫做表的数据记录(Record)。
事实上表结构与数据记录是表的两大组成部分,在表能够存放数据记录前,必须先定义表结构。
定义表结构的过程就是创建数据表的过程,它需要描述数据表将拥有的所有字段的名称、数据类型、宽度、小数位数以及能否接收NULL值等。
以下是字段名称、数据类型、宽度与小数位数的详细说明。
⏹字段名称
字段名即关系的属性名或表的列名。
一个表由若干列(字段)构成,每个列都必须有个惟一的名字——字段名,将来可以通过字段名直接引用表中的数据。
在中文VisualFoxPro中字段名可以是汉字或合法的西文标识符。
·自由表字段名最长为10个字符。
·数据库表字段名最长为128个字符。
.字段名必须以字母或汉字开头。
·字段名可以由字母、汉字、数字和下划线组成。
·字段名中不能包含空格。
⏹字段类型:
不同类型的数据在存储器中的存储方法是不同的,而且不同类型的数据所能进行的运算也是不同的。
事先定义好各字段的类型,不仅方便了VFP对数据的管理,而且能增加系统的可靠性。
例如,系统可拒绝一些不正确的操作。
VFP有13种字段类型,它们是字符型、货币型、数值型、浮点型、日期型、日期时间型、双精度型、整型、逻辑型、备注型、通用型、字符型(二进制)、备注型(二进制)。
字符型(C):
通常用于存储文本数据。
包括中文文字、字母、数字、空格、符号等,其中的数字一般不是用来进行数学计算的,如电话号码、姓名、地址字段都定义成字符型。
字符型数据的最大宽度最大为254B。
该数据的定界符为单引号、双引号或方括号。
数值型(N):
用来存储数值数据,包括0~9的任何数字、小数点和正负号,如考试成绩、身高、体重。
数值型数据的最大宽度为20B。
其值介于- 0.9999999999E+19~+0.9999999999E+20之间。
浮点型(F):
浮点型字段是等同于数值型字段,只是精度比数值型数据高。
浮点型数据的最大宽度为20B。
整型(I):
整型数据用于存取不包含小数部分的数值。
其值介于- 2,147,483,647~2,147,483,646之间。
该数据固定宽度为4B。
双精度型(B):
双精度型数据用于取代数值型数据,以便提供更高的数值精度。
双精度型数据固定宽度8B。
取值范围介于+/-4.940656458124E-324~+/-1.79769313486232E308之间。
货币型(Y):
用来存储一些金融数值-922337203685477.5807~+922337203685477.5807。
货币型数据固定宽度8B。
日期型字段(D):
这种字段用以存储日期数据。
通常采用美国格式{^mm/dd/yyyy},也可用VFP的命令改成其它设置,其中yyyy表示年号,占4个字节;mm表示月份,占两个字节;dd表示日期,占两个字节。
在表1–1中,“出生日期”字段就是日期型字段。
日期型字段取值介于{^1/1/100}到{^12/31/9999}之间。
固定宽度8B。
日期时间型(T):
日期时间数据用于存储日期和时间值,存储格式为{^mm/dd/yyyyhh:
mm:
ssAm/Pm},其中mm/dd/yyyy表示日期,含义同日期型数据;hh:
mm:
ss表示时间,固定宽度8B。
逻辑型(L):
逻辑型字段的宽度固定为1B。
这种字段只能取两种值 .T.(逻辑真)或者 .F.(逻辑假)。
备注型字段(M):
如果所要存储的文字数据超过254个字符而无法容纳于字符类型字段中,则必须采用备注类型字段。
如自传与文章等大量的文字数据。
事实上表中所有备注类型字段的数据都是另外存储在一个与表文件同名,但扩展名为.FPT的备注文件中。
备注字段的长度固定为4B。
通用型(G):
用于存放图片、电子表格、文件、声音、影片、统计分析图等数据。
通用类型的数据也存储在.FPT备注文件中。
通用型字段的长度固定为4B。
二进制字符型数据:
二进制字符型数据的使用方法和字符型数据类似,这种数据直接以二进制将字符存储在文件中,而不需要系统代码页的维护。
二进制备注型数据:
二进制备注型数据的使用方法和备注型数据类似,这种数据直接以二进制将数据存储在文件中,而不需要系统代码页的维护。
⏹小数位数
字段类型为数值或浮点型字段时应设置小数位数。
⏹字段宽度
字段的宽度是指字段中所能容纳的最大数据量。
若为字符型字段,则指的是所能输入的文本长度。
对于数值字段或浮点数字段,则要定义宽度和小数位数两个部分;字段宽度是定义数值的最多位数。
以数值-999999.99为例,其栏宽设置最少应为10,小数位数为2。
字符型字段的最大宽度:
254位。
货币型字段宽度固定为:
8位。
数值型/浮点型字段最大宽度为:
20位,小数最大为19位。
日期型/日期时间型/双精度型字段宽度固定为8位。
备注型/通用型/整型字段宽度固定为4位。
⏹空值
在“表设计器”的界面上可以看到字段有“NULL”选项,它表示是否允许字段为空值。
空值也是关系数据库中的一个重要概念,在数据库中可能会遇到尚未存储数据的字段,这时的空值与空(或空白)字符串、数值0(empty)等具有不同的含义,空值NULL就是缺值或还没有确定值,不能把它理解为任何意义的数据。
比如表示价格的一个字段值,空值表示没有定价,而数值0可能表示免费。
一个字段是否允许为空值与实际应用有关,比如作为关键字的字段是不允许为空值的,而那些在插入记录时允许暂缺的字段值往往允许为空值。
显而易见,结构定义的好坏直接影响一个表的使用和维护,一般在设计表时,最容易犯的错误有以下几项:
(1)将差距很大的数据主题集合在一个表内。
比方说,将学生基本数据与老师基本数据摆在同一个表中,或是将员工基本数据及客户基本数据存储在同一个表中。
(2)表中拥有一些无意义的字段。
由于设计者考虑不周常会定义一些不具实质效用的字段,导致这些字段内的数据内容经常是空白的。
比方说,在一个表中定义了电话号码与区号两个,而事实上区号与电话号码总是一起存储的,所以区号字段显然是多余的。
(3)表中拥有一些多余的字段。
比方说,一个学生成绩数据表除了拥有存放各科成绩的字段外,还拥有一个存放平均成绩的字段。
各科的平均成绩是二次数据,一般是在需要时临时计算。
又例如,在学生基本信息表中拥有存放出生日期的字段,又拥有存储学生年龄的字段。
(4)表中存在大量的冗余数据。
例如,需要将客户数据与订单数据分别存储在两个表中。
在设计订单数据表时,可能已经存储了客户的公司名称及住址数据,而客户数据表中又存储着客户的公司名称及住址数据。
这样一方面浪费了大量的存储空间,而且还会导致当一个表的信息变动而另一个表没有相应变动时,产生数据信息的不一致性。
二、在数据库中创建表
在关系数据库中将关系也称做表,在FoxBASE和早期的FoxPro中称做数据库文件。
一个数据库中的数据就是由表的集合构成的,一般一个表对应于磁盘上的一个扩展名为.dbf的文件,如果有备注或通用型字段则磁盘上还会有一个对应扩展名为.fpt的文件。
⏹使用表设计器建表
一、在打开的数据库设计器的空白处单击鼠标右键,会弹出一个菜单。
二、在弹出的菜单中单击“新建表”命令;或者直接用鼠标单击数据库设计器工具栏的“新建表”按钮,弹出“新建表”对话框。
在弹出的“新建表”对话框中选“新建表”按钮。
三、在弹出的“创建”对话框的“输入表名”文本输入框中,键入所要创建的表的名称,最后单击“保存”按钮。
用户需要在表设计器中依次输入或选择字段、类型和宽度等,这些是建立表所需要的最基本内容。
最后单击“确定”命令按钮则完成了对表时接立。
此时在数据库设计器中将显示新建立的表,同时会出现对话框提示是否立即输入记录。
如果选择“是”,则立刻可以输入记录;如果选择“否”,则暂时不输入记录。
例:
使用表设计器创建“学生”表。
表1“学生”表
学号
C(8)
姓名
C(8)
性别
C
(2)
出生日期
D(8)
院系
C(4)
备注
M
99035001
王晓丹
女
1984/10/09
中文
memo
99035002
季节
女
1986/05/12
中文
memo
99036002
胡文斌
男
1985/11/24
金融
memo
99036001
刘文如
男
1986/12/08
金融
memo
99036003
刘丹阳
男
1985/08/10
金融
memo
99037001
赵博
男
1985/11/05
建筑
memo
99037002
刘理
男
1984/08/18
建筑
memo
99037003
王美花
女
1986/12/09
建筑
memo
⏹使用“表向导”创建表
一、在打开的数据库设计器的空白处单击鼠标右键,会弹出一个菜单。
二、在弹出的菜单中单击“新建表”命令;或者直接用鼠标单击数据库设计器工具栏的“新建表”按钮,弹出“新建表”对话框。
在弹出的“新建表”对话框中选“表向导”按钮。
三、表向导”的步骤进行各项的设置。
例:
使用“表向导”创建“成绩”表。
学号
C(8)
课程编号
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 创建 维护
![提示](https://static.bdocx.com/images/bang_tan.gif)