1 / 59

关系数据库语言及应用

关系数据库语言及应用. 主讲:李乾宝 E-Mail: qbli@stu.edu.cn. 第一章 绪 论. 1.1 数据库的基本概念 1.2 FoxPro 概述 1.3 FoxPro 的界面风格与工作方式 1.4 Visual FoxPro 简介. 从文件管理到数据库管理. 在数据库出现前,计算机用户就使用数据文件来存放数据。常用高级语言都支持使用数据文件。 一种常见的数据文件的格式是,一个文件包含若干个“记录” (Record) ,一个记录又包含若干个“数据项” (Dataltem) ,用户通过对文件的访问实现对记录的存取。

nia
Download Presentation

关系数据库语言及应用

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 关系数据库语言及应用 主讲:李乾宝 E-Mail: qbli@stu.edu.cn

  2. 第一章 绪 论 • 1.1 数据库的基本概念 • 1.2 FoxPro概述 • 1.3 FoxPro的界面风格与工作方式 • 1.4 Visual FoxPro简介

  3. 从文件管理到数据库管理 • 在数据库出现前,计算机用户就使用数据文件来存放数据。常用高级语言都支持使用数据文件。 • 一种常见的数据文件的格式是,一个文件包含若干个“记录”(Record),一个记录又包含若干个“数据项”(Dataltem),用户通过对文件的访问实现对记录的存取。 • 通常称支持这种数据管理方式的软件为“文件管理系统”,它自50年代末期问世以来,一直是操作系统的重要组成部分。

  4. 从文件管理到数据库管理 • 文件管理系统采用一次最多存取一个记录的访问方式,在不同文件之间缺乏相互联系的结构,随着社会信息量的迅速增长,计算机处理的数据量也不断增加,这种方式越来越不能适应管理大量数据的需要,于是数据库管理系统便应运而生。 • 在60年代末期诞生了第一个商品化的数据库系统-美国IBM公司的IMS系统(Information Management System)。 • 从文件管理到数据库管理,代表了两代不同的数据管理技术。今天,数据库管理已成为计算机信息管理的主要方式。

  5. 数据库系统的特点 • 数据库系统(DatabaseSystem),其实就是以数据库应用为基础的计算机系统。。 数据库系统的特点 1、数据共享,提高了信息的利用率; 2、冗余度低且可控制。 3、数据独立性高,由“数据依赖于程序” 改变为“以数据为中心”。 4.实现了整体数据的结构化,适于表示相互间有多种联系的大量数据。

  6. 数据库系统的发展 经过近30年的发展,数据库系统已经历了第一代和第二代,现正向第三代迈进。 • 第一代:非关系型数据库系统 • 第二代:关系型数据库系统 • 第三代:对象-关系型数据库系统

  7. 第一代:非关系型数据库系统 • 包括“层次”与“网状”两种类型,它们都是以记录型(Record Type)为基本的数据结构,在不同的记录型之间允许存在联系 层次模型(Hierachical Model)在记录型之间只能有单线联系 网状模型(Network Model)允许记录型之间存在两种或多于两种的联系。 第一代数据库系统的结构错综复杂,数据存取路径需用户指定,使用难度较高,自关系型数据库系统兴起后,它们已逐渐被取代。

  8. 第二代:关系型数据库系统 • 关系型数据库(Relational Database System),简称RDBS) 。70年代中期商品化的RDBS开始问世。80年代后,许多RDBS在微型机上实现。 • RDBS采用人们常用的二维表(或“关系”)为基本的数据结构,通过公共的关键字段实现不同二维表之间的数据联系。二维表形式简单,直观明了,学习和使用都很方便。 • RDBS允许一次访问整个关系,其效率远比第一代数据库系统(一次仅能访问一个记录)为高,因而受到用户的普遍欢迎。

  9. 第三代:对象-关系型数据库系统 • 第三代数据库系统,是将数据库技术与面向对象技术相结合的产物。 • “对象-关系型数据库系统”(简称ORDBS):建立在关系型数据库技术之上,可以直接利用第二代数据库系统的原有基础,所以发展迅速,正在形成第三代数据库系统的主流。 • “面向对象型数据库系统”(简称OODBS)。一些厂商现已推出了可供实用的ORDBS产品,显示了光明的发展前景。

  10. 数据库系统的分类 数据库系统可按照以下几种方法来分类。 • 单用户数据库和多用户数据库 • 集中式数据库和分布式数据库 • 传统数据库和智能数据库

  11. 单用户和多用户数据库 • 单用户数据库:在同一时间只能供一个用户使用。 • 多用户数据库:通过网络可供多个用户同时共享同一数据库。 • 多用户数据库的关键是保证“并行存取”的正确执行。例如飞机订票系统通常是多用户系统。 • FoxPro 2.5是一种多用户数据库管理系统。

  12. 集中式和分布式数据库 • 集中式数据库:数据集中在同一数据库服务器中,对服务器的要求高,网络数据流量大; • 分布式数据库:数据分布在不同地点的数据库服务器中,大多数情况下数据可就近存取(称为“局部应用”),仅当需要时才把数据通过网络来传送(称为“分布应用”或“全局应用”),通信量可大大减小,对服务器的要求也相对降低。例如银行储蓄系统。 • 分布式数据库的目标,是存取数据时不要求用户指明数据的存储场地,换言之,应使用户像对集中式数据库访问时一样方便。

  13. 传统和智能数据库 • 传统数据库:存储的数据都代表已知的“事实”。 • 智能数据库:除存储事实外,也存储用于逻辑推理的“规则”。所以也称为“基于规则的数据库”(Rules Based Database)。 例如:智能数据库存储有“处长领导科长”的规则,如果它同时存有“甲是处长”、“乙是科长”的数据,它就能推理出“甲领导乙”的新事实。

  14. 数据库语言和数据库管理系统 • 数据库的建立和查询,都是通过特定的数据库语言进行的。关系数据库使用的语言称为“关系数据语言”。 • 查询是数据库语言的中心功能,所以数据库语言也称为查询语言。被国际标准化组织(ISO)确定为关系数据语言标准的SQL语言,就是“结构化查询语言”(Structured Query Language)英文名的缩写。 • SQL和其它数据库语言一样,不仅有用于查询的语句,也包含有用于建立数据库的语句。

  15. 数据库语言和数据库管理系统 • 使用数据库语言需要一个特定的支持软件,这就是“数据库管理系”(DataBase Management System)。 • 数据库管理系统应该具有下列功能; • 支持“数据定义语言”(Data Definitiom Language,简称DDL),供用户定义数据库文件的结构,建立所需的数据库。 • 支持“数据操作语言"(Data Manipulation Language,简称DML),供用户对数据库进行查询操作(包括检索与统计)和存储操作(包括增加、删除与修改数据)。 • 向数据库系统提供一组管理和控制程序,保障数据库的安全、通信与其它管理事务。 • FoxPro是一种DDL与DML合为一体的语言。

  16. FoxPro概述 • FoxPro是微型计算机上当今最流行的软件之一,也是Xbase数据库家族中继dBASE和FoxBASE+之后又一广泛使用的微机关系数据库管理系统。 • 1989年,Fox软件公司首次发表了FoxPro1.0, • 1991年推出FoxPro 2.0,性能有了重大的提高。 • 1992年微软公司收购了Fox软件公司 • 1993年1月公布了FoxPro的两种版本: • FoxPro 2.5forDOS和FoxPro 2.5forWindows。 • 同年晚些时候再次推出了FoxPro 2.5b及其中文版

  17. FoxPro概述 • 1994年发表了FoxPro 2.6,增加了多种“向导” (Wizard)工具,从而简化了最终用户的操作,但在程序开发方面未见明显的改进。 • 1995年,微软公司把“可视化编程”(Visual Programming)技术引入了FoxPro,使Visual FoxPro继VB和Visual C++之后,成为该公司Visual系列软件的又一新成员。 • 由于FoxPro 2.5的优越性已经深入人心,加上它与Xbase完全兼容,对运行环境要求较低(相对于Visual FoxPro)的特点,至今它仍拥有大量用户,被许多学校用为数据库教学语言。

  18. 初识FoxPro • 例1.1: 下表是某工厂的一张设备登记表。假设已经用FoxPro的建库命令“CREATE shebei”建立了一个名为shebei(设备)的数据库文件,并将登记表的内容(包括结构和数据)存入这一库文件。

  19. 用FoxPro命令完成以下操作 • 列表显示数据库文件shebei的内容 USE shebei LIST • 将库中的主设备复制到zushebei库文件 COPY TO zushebei FOR 主要设备 • 将主设备的名称和价格由低到高排列,生成名为jiage的文件。 SORT ON 价格 TO jiage FIELDS 名称,价格 • 将主要设备的价格全部上调20% REPLACE ALL 价格 WITH 1.2*价格 FoxPro建立的数据库文件采用表格的形式,与人们的习惯相符,所以易学易用。 FoxPro采用命令式的语言,一条命令(如USE,LIST,COPY等)即可完成一项相当复杂的功能。

  20. FoxPro的语言成分(命令) • 一般地说,FoxPro的命令总是由一个称为命令字的动词开头,后随一个宾语和若干子句(称为命令子句),用来说明命令的操作对象、操作结果与操作条件。

  21. FoxPro命令的特点 • 采用英语祈使句的形式,命令的基本部分简洁规范,粗通英语的人都能看懂。 • 操作对象,结果(目的地)和条件均可用命令子句的形式来表示。命令子句的数量不限,顺序不拘。这使命令的附属功能可以方便地增删,十分灵活。 • 命令中只讲对操作的要求,不描述具体的操作过程,言简意赅,所以又称为“非过程化”(Non—Procedural)语言。 • FoxPro的命令既可逐条用交互的方式执行,又可编写成程序,以“程序文件”的方式执行。 • 命令中的词汇(专用名词除外)可使用简写,即只写出它们的前四个字母。

  22. FoxPro的语言成分(表达式) • 表达式是FoxPro语言的重要成分,通常由常量、变量和函数用运算符连接而成。 • FoxPro有两类变量: • 字段变量:它们代表库文件中的列。字段变量是多值变量,因为一个数据库文件有多少条记录,其字段变量就会有多少个值。 • 内存变量:主要用于存储在命令或程序执行中临时使用的输入、输出或中间数据。FoxPro允许使用“数组”,其实数组就是带下标的内存变量。

  23. FoxPro的语言成分(表达式) • FoxPro的变量有数值型、字符型、逻辑型、日期型等数据类型。它的字段变量还允许使用备注型和通用型字段,后者可以存储多媒体数据。 • FoxPro有四类运算符: • 算术运算符:+,-,*(乘),/(除),^或**(幂) • 字符运算符:+,- • 关系运算符:>, ≥ ,=,< >,<,≤,$ • 逻辑运算符:.AND.,.OR.,.NOT.或! • 主要由关系运算符构成的表达式称为关系表达式,在FoxPro命令中,它们常被用作FOR命令子句或WHILE命令子句中的条件。

  24. FoxPro的语言成分(函数) • FoxPro提供近290种标准函数,以方便用户进行运算或作出判断。 • 与其它语言相似,FoxPro的函数也具有自变量与结果数(即函数的返回值)。每个函数必须也只能有一个返回值。 • FoxPro的函数通常具有<函数名>( )的形式。例如,LEN(“车床”)表示计算字符串“车床”的长度 • 由于函数执行后总要返回一个值给调用者,所以在FoxPro表达式中也允许包含函

  25. FoxPro文件的主要类型 • FoxPro支持近40种文件,前提到的数据库文件(.dbf),程序文件(.prg)是FoxPro中最常用的两类文件。表1.4列出了其中常用的一些类型。 , • FoxPro的文件都是按名访问的。文件名由不含空格的字符串构成,主名长度不超过八位,扩展名不超过三位。扩展名用来区分文件的类型,除非用户另有指定,在文件建立时系统将为它们自动加上默认的扩展名。

  26. 表1.4 Foxpro常用文件类型

  27. FoxPro 2.5的特点 • 是一个具有典型Windows界面风格的微机关系数据库管理系统。它支持命令、选单操作和程序执行多种工作方式,具有现代应用软件“对用户友好”的特征; • 拥有丰富的辅助设计和辅助管理工具,可以明显减少程开发的工作量; • 采用了Rushmore(快速查找),OLE(对象链接与嵌入)等新技术,使系统的查询速度和多媒体支持功能均有明显的提高。

  28. FoxPro 2.6的改进 • 增加了一组“向导”工具。FoxPro 2.5只有一种向导工具,即“图形向导”(Graph Wizard),用于帮助用户把查询结果用图表而不是数据的形式输出。FoxPro 2.6增加了“库表” (Table)向导、“屏幕”(Screen)向导、“报表”(Report)向导、“标签” (Label)向导、“邮件合并”(Mailmerge)向导等多种向导工具,可进一步简化用户操作。 • 配合上述向导工具新增了一个“目录管理器” (Catalog Manager)。在它的选单中含有File,Data,Tools等多个目录项,用户可通过这些目录对系统中的文件、数据和向导工具选择调用,操作更加方便。

  29. FoxPro的主要技术指标 • 数据库 • 库文件最大记录数: 109个 • 记录的最大字段数: 225个 • 记录的最大长度: 65000字节 • 字符型字段的最大长度: 254字节 • 数值型字段的最大长度: 20位 • 数值计算精度: 16位 • 内存变量: • 变量总数、数组总数: 不多于65000个 • 每个数组的项数: 不多于65000项

  30. FoxPro的主要技术指标 • 其它重要指标 • 可同时打开的.DBF文件数: 不多于225个 • .CDX文件索引码最大长度: 240字节 • 命令行的最大长度: 2048字符 • DO命令嵌套深度: 不多于32层 • READ命令嵌套深度: 不多于5层 • ,DBF文件关联个数: 不受限制

  31. FoxPro的安装环境 • 硬件配置: • 80386以上的CPU、4M以上内存 • 1.2M软驱、不少于20MB的硬盘自由空间 • 软件配置: • 3.0以上版本的Windows操作系统 • 英文版Windows操作系统需UCWIN、中文之星等支持 • 多用户使用,必须具有相应的网络环境

  32. FoxPro的安装步骤 • 插入第一张安装软盘(或光盘) • 运行安装盘上Foxpro的安装程序(Setup.exe) • 在安装过程中依次正确回答安装程序的提问 • 安装目录名称:默认为C:\FOXPROW • 程序管理器中的组图标名:默认FoxPro Fox Windows • 安装方式:Complete, Custom, Minimum 三种选一 • 按键风格:Windows-Style 和 DOS-Style • 安装完成后程序会提示你按“确定”结束安装,并在程序管理器窗口创建组图标,并建立启动FoxPro的图标(快捷方式) 三种安装方式的区别,仅在于辅助文件的安装数量不同。Complete安装所有的辅助文件,Custom安装用户指定的辅助文件,Minimum不安装辅助文件。

  33. FoxPro的启动与退出 • 启动(windows 95及以后版本): • 按左下角的“开始”按钮,按照“程序” “FoxPro For Windows” “FoxPro For Windows”的顺序,找到并单击选单中的狐狸头图标。 • 为了方便启动FoxPro数据库,可以在程序安装结束后在桌面上创建快捷方式图标,以后启动之只需在桌面上按此图标即可 • 退出(可选以下两种方式之一): • 在FoxPro窗口的“文件”(File)选单中选择Exit • 在Command窗口中键入命令QUIT

  34. FoxPro的界面风格与工作方式 • 鼠标器及其操作 • FoxPro的界面风格 • FoxPro的帮助系统 • FoxPro的工作方式

  35. 鼠标器及其操作 • 鼠标器的种类: • 鼠标器属于指点式设备(Pointing Device),有机械鼠、光学鼠和光学机械鼠等类型 • 鼠标器的操作: • 滑动(Slipping) • 单击(Clicking) • 双击(Double Clicking) • 拖动(Dragging) • 鼠标器的优点: • 定位迅速、操作简单、光标可变提示操作

  36. FoxPro的界面风格 系统选单 多窗口(Multi-Windows)、选单(Menu)和联机帮助(On-line Help)信息,是一个典型的Windows界面的三要素,也被并称为用户界面的三大友好技术。 命令窗口 主窗口 状态条

  37. FoxPro的窗口 可以进行放大、缩小、移动等操作 控制选单:主要供键盘操作的用户选用 主窗口或程序窗:用于显示FoxPro命令或程序执行的结果 命令窗口:用于显示所执行的FoxPro命令

  38. FoxPro的选单 选单的种类 全屏幕选单(Full Screen Menu) 光带(Light Bar) 弹出式选单(Popup Menu) 下拉式选单(Pull Down Menu)

  39. FoxPro选单的约定 • 对话框标记:选单项右方紧跟一个省略号(…),表示选择该项后将弹出一个对话框。 • 子选单标记:选单项后面带有三角形箭头(),表示选择该项会打开一个新的子选单。 • 选中标记:如果选单项被选择后在其左方出现一个“对号”(√),表示该项在当前有效。若要使它失效,只须再将它选择一次,使√号消失即可。 • 灰色选单项: 当选单项以灰色显示时,表示该项在当前环境下不能使用。 • 热键(Hot Key):指选单项中带下划线的字母,如Fi1e(文件)项中的F。 • 快捷键(Shortcut Key):常出现在选单项名称的右方,一般采用组合键的形式,例如Ctrl+D,Ctrl+F1等。

  40. FoxPro的对话框 • FoxPro大量使用对话框,借以达到对用户操作的正确引导。典型的对话框通常由下列控制对象组合而成: • 列表框(List Box) • 弹出式列表框(Popup List Box)、 • 文本编辑框(Edit Box)、 • 单选钮(Radio Butlon)、 • 复选框(Check Box)、 • 按钮(Push Button) • 和数码器(Spinner) 现以Sort对话框为例,介绍对话框的操作方法

  41. FoxPro的向导工具 • 对于某些复杂的功能,如果把参数设置和对输入/输出的要求集中在一个对话框中,其操作可能变得十分复杂,使用户难于掌握。 • 为了解决这类问题,FoxPro向用户提供了一种称为“向导”的工具。其基本思想是把一项复杂的功能分解为若干简单的步骤完成,每一步使用一个对话框,然后把这些较简单的对话框按适当的顺序组合在一起。 • 由此可见,向导实质上是一组有序的系列对话框,它们是对话框技术的发展。

  42. FoxPro的状态条 • 状态条(Status Bar)是使用较早的一种联机帮助技术,它通常出现在主窗口的底部。其主要作用,是利用较小的空间(通常为一行),把当前最有用的信息告知用户。 • 在FoxPro状态条中显示的信息可能有以下几种: • 配合选单操作显示选项的功能,使用户能及时了解所选命令的基本作用。 • 显示系统对用户的反馈信息:FoxPro命令执行后,系统会向用户反馈执行的结果。 • 显示操作键的当前状态:状态条右端有3个小格。依次显示Insert、Num Lock和Caps Lock的状态

  43. FoxPro的帮助系统 • 帮助选单 帮助目录:是帮助信息的总目录 附件:运行计算器、日历、Filter管理器等附件程序 搜索关于…的帮助:用于查看某个指定主题(Topic)的详细说明 帮助的使用方法:告知用户如何使用帮助系统 关于FoxPro:显示FoxPro的版本信息和关于本机运行情况的信息

  44. FoxPro的帮助系统 • 帮助窗口: 打开帮助窗口有三种方法: • 在Help选单中选定Contents选项 • 在主窗口环境中按F1键 • 在命令窗口中键入HELP命令 界面目录:包含选单、窗口和对话框三类界面的分类目录和所有界面按字母顺序(A-Z)排列的综合目录,在FoxPro 2.6的界面目录中还在末尾增加一个向导类目录。 语言目录:包含四组不同的目录。第一组包括所有的命令与函数;第二组给出按功能分类的命令与函数; 第三组含有FoxPro数十种系统内存变量的目录;第四组为FoxPro常用命令与函数的目录。 附加目录:介绍一些辅助信息。如:FoxPro for Windows和for DOS两类版本的区别;不同版本的兼容性和差异;错误信息的种类与含义;新版本较以往版本的改进等。 • 各帮助按钮的作用如下: • 目录按钮 返回到帮助窗口的初始画面。 • 搜索按钮 用于搜索特定主题的帮助信息。 • 后退按钮 显示前次查看的主题的帮助信息。 • 历史记录 显示刚才查看过的所有帮助信息。 • 词汇表 罗列FoxPro的所有词汇,并对指定 的词汇给出简短的说明。 • <<按钮 显示当前主题的前一个主题的说明。 • >>按钮 显示当前主题的后一个主题的说明。 帮助窗口主要由:帮助目录、一排命令按钮和一个水平选单条构成。为了方便检索,帮助目录的信息又分为三类。

  45. FoxPro的帮助系统 • 对指定主题的帮助:可以越过总目录直接检索某一主题的帮助信息,可以通过以下几种方法进入: • 在主窗口的Help选单中选择“Search for Help on”选项,或在帮助窗口选“搜索”按钮,或在命令窗口中键入命令:HELP <主题名>(例如:HELP SORT)都会在屏幕上出现一个标题为“帮助主题”的对话框(windows 3.x版本不同),键入要查询的主题的前几个字母,在其下的列表框中选择要查询的主题,按显示按钮,即可显示该主题的帮助信息。 • 利用FoxPro帮助系统的“上下文敏感性”在某对话框或窗口激活时按下F1功能键,系统会给出与当前操作直接相关的帮助信息,更直截了当。

  46. FoxPro的工作方式 作为90年代的一种流行软件,FoxPro支持三种不同的工作方式: • 命令交互方式 • 程序执行方式 • 选单操作方式

  47. 命令交互方式 • 用户每发出一条命令,FoxPro随即执行并完成一项任务。 • 许多命令执行后会在屏幕上显示必要的反馈信息,包括命令的执行结果或出错时的错误信息。 • 这种工作方式直截了当,不同类的信息使用不同的窗口,避免了相互混淆。适合于程序员使用。

  48. 命令交互方式 • 命令交互方式除了要记忆大量的FoxPro命令,可能令初学者望而却步外,还存在以下缺点: • 执行完上一条命令才能输入下一条命令。机器执行和用户操作相互交叉,限制了执行速度; • 数据库应用中有许多需要重复执行的操作。采用命令交互方式时,要在命令窗反复输入内容相同或者相似的命令集合,不但费时,而且令人乏味。

  49. 程序执行方式 • 程序执行方式将FoxPro的命令编成特定的序列,并将它们存入程序文件(或称命令文件)。 • 用户需要时,只须通过特定的命令(例如DO命令)调用程序文件,FoxPro就能自动执行这一程序文件,把用户的介入减至最小限度。 • 这种方式不仅运行效率高,而且可重复执行。

  50. 程序执行方式 • 虽然编程序的人须熟悉FoxPro的命令和掌握编程的方法,使用程序的人却只须了解程序的运行步骤和运行过程中的人—机交互要求,对程序的内部结构和其中的命令可不必知道。 • 为了方便用户编程,FoxPro还提供了多种实用的辅助设计工具,能帮助用户通过简单的人—机交互,自动生成FoxPro程序。

More Related