第4章 数据库操作2014_第1页
第4章 数据库操作2014_第2页
第4章 数据库操作2014_第3页
第4章 数据库操作2014_第4页
第4章 数据库操作2014_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

第4章数据库操作4.2

数据库的创建和使用数据库的创建就是将数据库设计结果输入到计算机中去。4.2.1数据库的建立、打开与关闭1.数据库的建立(1)用界面建立数据库选择【文件】|【新建】|【数据库】,或选择常用工具栏上的【新建】按钮,打开创建对话框,如图4-1所示,在数据库名后的文本框中输入数据库名,选择【保存】按钮。

(2)用命令方式建立数据库在命令窗口中输入如下命令:命令格式:CREATEDATABASE[<数据库名>|?]命令功能:创建由数据库名指定的数据库,若选?或不带任何参数,执行此命令时则打开创建对话框,然后输入数据库名。4.2

数据库的创建和使用(3)在项目管理器窗口中创建数据库①在项目管理器中选择【数据】选项卡,如图4-2所示,然后选择【数据库】,选择【新建】按钮,打开【新建数据库】对话框。

②在【新建数据库】对话框中选择【新建数据库】按钮,打开【创建】对话框。③在【创建】对话框中,确定数据库的类型、名称和保存位置。其中数据库类型和保存位置是默认的,在【名称】输入框中输入数据库名【成绩管理】。④选择【保存】按钮。

4.2

数据库的创建和使用2.数据库的打开(1)用界面打开数据库①选择【文件】|【打开】。②选择打开文件类型【数据库】。③选择打开的方式,是【独占】还是【以只读方式打开】。④在列表框中,选择要打开的数据库名字,选择【确定】。

注:在VisualFoxPro中,打开某个对象是时要特别注意,必须注意先选择打开方式,是只读方式,还是独占,只读方式打开的对象不能修改,所以一般我们都选择独占方式打开对象。4.2

数据库的创建和使用(2)用命令打开数据库命令格式:

OPENDATABASE[<数据库名>|?][EXCLUSIVE|SHARED][NOUPDATE]命令功能:打开由数据库名指定的数据库。命令说明:①EXCLUSIVE:以独占方式打开数据库,所谓独占方式是指在同一时刻不允许其它用户使用数据库②SHARED:以共享方式打开数据库,与打开对话框中不选【独占】复选框是等效的,共享方式是指同一时刻允许其它用户使用数据库。③NOUPDATE:以只读方式打开数据库。选此子句不能对数据库作任何修改。

4.2

数据库的创建和使用(3)利用【项目管理器】打开数据库在【项目管理器】中选定要打开的数据库,选择【修改】按钮或【打开】按钮打开该数据库。4.2

数据库的创建和使用3.数据库的关闭(1)在【项目管理器】中选定要关闭的数据库,然后选择【关闭】按钮;(2)选择【文件】|【关闭】菜单项,关闭正在使用的数据库。(3)命令方式关闭数据库命令格式:

CLOSEDATABASE[ALL]。命令功能:关闭当前数据库及所有表。若选ALL子句,关闭所有打开的数据库和表。(4)选择数据库设计器窗口中的【关闭】按钮。

4.2

数据库的创建和使用4.2.2数据库的修改与删除1.数据库的修改在建立数据库时数据库系统会同时产生*.dbc,*.dct,*.dcx三个关联文件,由于不能对这三个文件直接进行修改,因此采用的修改方法是:打开数据库设计器。命令格式:

MODIFYDATABASE[<数据库名>|?]命令功能:打开数据库设计器,让用户能够交互地修改当前使用的数据库。在修改数据库之前必须以独占方式打开数据库。命令说明:

(1)选?:显示打开对话框,可选要修改的数据库或输入数据库名。若省略[<数据库名>|?]子句与选?效果一样。

4.2

数据库的创建和使用2.删除数据库命令格式:

DELETEDATABASE<数据库名>[DELETETABLES][RECYCLE]命令功能:删除由数据库名指定的数据库,从磁盘上删除数据库,要求数据库必须是关闭状态。命令说明:选[RECYCLE]子句是将删除的数据库放入Windows回收站中。【例4.1】在命令窗口中依次输入以下命令,观察执行的结果的变换,比较各个命令的功能。

CREATEDATABASE成绩管理

CLOSEDATABASEALL OPENDATABASE成绩管理

CLOSEDATABASE MODIFYDATA成绩管理

CLOSEDATABASE DELETEDATABASE成绩管理4.3

数据库中的表数据库中最重要的对象就是表,换句话说表是数据库的基础。数据库中表有两个来源,一个来源是在数据库中建表,另一个来源是将自由表添加到数据库中。

4.3.1数据库和表的操作

1.在数据库中建表

(1)用界面创建数据库表在打开数据库的前提下,选择【数据库】|【新建表】。

(2)用命令创建数据库表在打开数据库的前提下,用CREATE或CREATETABLE语句建表即可。【例4.2】建立一个成绩管理数据库,在该数据库中创建一个xuesheng

表,表结构为(学号C(8),姓名C(8),性别C(2),出生日期D,专业C(10),入学成绩N(7,2),贷款否L)。在命令窗口中依次输入如下命令,并执行:

(1)CREATEDATABASE成绩管理

(2)CREATETABLExuesheng(学号C(8),姓名C(8),性别C(2),出生日期D,专业C(10),入学成绩N(7,2),贷款否L)(3)APPEND &&输入数据

(4)LIST &&显示表中的数据

(5)CLOSEDATABASEALL4.3

数据库中的表2.将自由表添加到数据库中(1)用界面方式添加自由表选择【数据库】|【添加表】,打开【打开】对话框,在【打开】对话框中选定要添加的表,然后选择【确定】,或按右键打开快捷菜单。也可以用数据库设计器工具栏:选择工具栏的【添加表】按钮,打开【打开】对话框,在【打开】对话框中选定要添加的表,选择【确定】。(2)用命令方式添加命令格式:

ADDTABLE<表名>|<?>命令功能:向当前数据库添加一个由表名指定的自由表。命令说明:①?:显示【打开】对话框,选定一个自由表。

4.3

数据库中的表3.数据库表的移去与删除(1)数据库表的移去①用界面方式移去表:选中要移去的表,选择【数据库】菜单,选择【移去】,此时打开【确认】对话框,如图4-11所示,若选择【移去】,数据库表转为自由表,若选择【删除】,则此表从磁盘删除并且是永久删除。②用命令将表移出数据库命令格式:

REMOVETABLE<表名>[DELETE][RECYCLE]命令功能:从当前数据库中移去由表名指定的表,若选DELETE子句在将表移出的同时从磁盘上删除,若选RECYCLE子句,将表放入回收站。4.3

数据库中的表(2)数据库表的删除①用界面删除数据库表在前面介绍从数据库中移表时,都可以在移出表的同时将表删除。删除表还有一个简单的方法就是在数据库设计器中,直接选中数据库表,按DEL键即可。②用命令删除数据库表命令格式:

DROPTABLE<表名>[RECYCLE]命令功能:缺省RECYCLE子句时,在当前数据库中将由表名指定的数据库表移出,且从磁盘上删除。若选RECYCLE子句将删除表放入回收站。【例4.3】建一个成绩管理数据库,将xuesheng.dbf、kecheng.dbf、chengji.dbf添加到库中。

在命令窗口中依次输入如下命令,并执行:

CREATEDATABASE成绩管理

ADDTABLExueshengADDTABLEkechengADDTABLEchengjiCLOSEDATABASEALL4.3.2

数据库表的设置

数据字典是数据库管理数据库表的一个重要途径,它是包含数据库所有信息的一个表。它定义了字段、表的属性,字段、记录的规则,表之间的关系、参照完整性规则,由于有了数据字典使得数据库能有效地对库中相关对象进行管理,使得数据库表比自由表有更多的功能。在建立数据库表或将自由表添加到数据库中使其成为数据库表时,系统会打开数据库表设计器,我们就会发现数据库表设计器比自由表的表设计器在字段选项卡与表选项卡中多了一些项目。1、字段选项卡

——设置表的字段属性:字段属性字段显示字段有效性检查匹配字段类型字段备注1)输入掩码:输入掩码是指定义字段中的值必须遵守的标点、空格和其他格式要求,以限制或控制用户输入的数据格式,屏蔽非法输入,从而减少人为的数据输入错误,保证输入的字段数据具有统一的风格,提高输入的效率2)格式:格式实质上就是一种输出掩码,它决定了字段在浏览窗口、表单、报表中的显示样式,如我们在格式文本框中输入A,则字段的内容只能为字母。(P124)3)标题:字段标题将作为该字段在浏览窗口中的列标题,以及表单表格中的默认标题名称4)字段级规则:将用户输入的数据与所定义的规则表达式进行比较,如果输入的值不满足规则要求,系统即拒绝该值,从而控制输入到字段中的数据类型5)默认值:在浏览窗口、表单或以编程方式输入数据时,VFP将自动为某个字段填入默认值,直到输入新值默认值可以是任何有效的表达式,但表达式的返回值必须和该字段的数据类型一致。

6)字段注释:为字段添加注释,使表更容易被理解。此外,还可以在“表设计器”的“表”选项卡中“表注释”框为整个数据表添加注释2、表选项卡(1)表名:在VisualFoxPro中,数据库表的表名支持长表名,并且表名最长为128个字符,当表被移出数据库时,长表名被截为按系统要求的短表名。(2)记录有效性①规则:用于输入记录有效性规则,当光标离开当前记录时进行校验。。②信息:用于输入记录不符合规则时显示的提示信息。2、表选项卡(3)触发器①插入触发器用于输入在向表中插入或追加记录时触发的有效规则。例如要求插入与追加记录只能在每年4月或9月进行,可输入MONTH(DATE())=4ORMONTH(DATE())=9②更新触发器用于更新记录时触发的有效规则,例如要求在每月的头10天可以更新记录,可输入DAY(DATE())>=1ORDAY(DATE())<=10③删除触发器用于输入删除记录时触发的有效性规则。例如要求学号最后两个字符转为数值后大于等于40的允许删除。可输入VAL(RIGHT(学号,2))>=404.3.3永久关系与参照完整性

永久关系是数据库表之间的关系,存储在数据库文件中。建立关系的两个表通常具有公共字段或语义相关的字段,其中包含主关键字段的表称为父表,包含外部关键字段的表称为子表

1.建立关系:对主关键字段和外部关键字段使用相同的索引表达式分别建立索引;然后打开“数据库设计器”,将父表的索引拖到子表相匹配的索引上(两表之间显示一条关系线)2.编辑关系:选择关系线快捷菜单的“编辑关系”命令

3.删除关系:选择关系线快捷菜单的“删除关系”命令永久关系1、确定关系(1)确定哪一个表为父表,哪一个表为子表(2)确定是一对一关系,还是一对多关系(3)父表上对关键字段建立主索引。一对一关系:子表上建立候选索引或主索引一对多关系:字表上建立普通索引或唯一索引2、建立、编辑、删除

参照完整性是指建立一组规则,当用户插入、更新或删除一个数据表中的记录时,通过参照引用另一个与之有关系的数据表中的记录,来检查对当前表的数据操作是否正确建立了关系的两个数据库表,通过实施参照完整性规则,可以确保:当父表中没有关联记录时,记录不得添加到子表中;当因改变主表的值而导致子表中出现孤立记录时,主表的值不能被改变;当主表记录在子表中有匹配记录时,该主表记录不能被删除

设置方法:打开数据库设计器,选择“数据库/清理数据库”菜单命令,再选择“数据库/编辑参照完整性”菜单命令,在显示的“参照完整性生成器”对话框中分别定义更新规则、删除规则和插入规则4.3.3永久关系与参照完整性(1)更新规则用于修改父表关键字时,如何处理子表中的相关记录,它有三个单选按钮①级联:是指当修改父表记录中关键字时,子表中与此记录相关的记录也随之改变。②限制:是指当修改父表记录中的关键字时,若子表中与此记录有相关的记录,则禁止修改父表相应记录操作。③忽略:则不做参照完整性检查,即可以随意更新父记录的连接字段值。(2)删除规则①级联:是指当删除父表中的记录时,子表中与其相关的记录自动删除。②限制:若在删除父表记录时,子表中有与其相关的记录,则禁止父表的删除操作,使删除失败。③忽略:当父表的记录删除时,与子表中与其相关的记录无关。(3)插入规则①限制:在子表中插入一个新记录或更新一个已存在的记录时,若父表的记录中没有相匹配的关键字值,则禁止插入。②忽略:子表中数据的插入与父表无关。4.4利用SQL语句操作表

SQL是StructuredQueryLanguage(结构化查询语言)的英文缩写,它是关系型数据库的标准操作语言,几乎所有的数据库产品都采用和支持该语言。

SQL语句能实现如下操作:

(1)数据查询:用于对数据库表的查询操作

(SELECT)(2)数据定义:用于定义、修改和删除数据库、表对象等(CREATE,DROP,ALTER)。

(3)数据操纵:用于数据库中表记录的修改和删除等

(INSERT,UPDATE,DELETE)。

4.4SQL表定义命令___CREATETABLE1.建立表(CREATETABLE)2.修改表的结构(ALTERTABLE)3.删除表(DROPTABLE)命令格式:CREATETABLE<表名1>(

<字段名1><字段类型>[(<字段宽度>[,<小数位数>])][NULL|NOTNULL][CHECK<逻辑表达式1>[ERROR<提示信息1>]][DEFAULT<表达式1>][PRIMARYKEY|UNIQUE][REFERENCES<表名2>[TAG<标记1>]]

[,<字段名2>…]…)功能:由给定的字段参数建立一个数据表。

OPENDATABASE成绩管理CREATETABLEXUSHENG1(学号C(8)PRIMARYKEY,综合考评N(3)CHECK(综合考评>=0AND综合考评<=300)ERROR“综合考评在0~300之间”DEFAULT0)例4.4SQL表定义命令___ALTERTABLE1.建立表(CREATETABLE)2.修改表的结构(ALTERTABLE)3.删除表(DROPTABLE)命令格式:ALTERTABLE<表名>ADD|ALTER|[COLUMN]

<字段名><字段类型>[(<字段宽度>[,<小数位数>])]DROP[COLUMN]<字段名1>

[RENAMECOLUMN<字段名2>TO<字段名3>]功能:ADD[COLUMN]ALTER[COLUMN]DROP[COLUMN]RENAME

[COLUMN]用SQL语句完成以下几种操作:①对xuesheng表增加爱好字段C(20)②修改爱好字段为C(30)③将爱好字段按名改为特长④删除特长字段命令:①ALTERTABLEXUESHENGADDCOLUMN爱好C(20)②ALTERTABLEXUESHENGALTERCOLUMN爱好C(30)③ALTERTABLEXUESHENGRENAME爱好TO特长④ALTERTABLEXUESHENGDROP特长例4.4SQL表定义命令___DROPTABLE1.建立表(CREATETABLE)2.修改表的结构(ALTERTABLE)3.删除表(DROPTABLE)(前节)4.4.4SQL操纵命令___记录的插入、更新(修改)、删除SQL的数据操纵命令主要包括三个部分:记录的插入(INSERT)记录的更新(

温馨提示

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

评论

0/150

提交评论