版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2008全国计算机技术与软件专业技术资格水平考试网络工程师考试大纲2008全国计算机技术与软件专业技术资格水平考试网络工程师考试大纲页脚内容PAGE页脚内容PAGE772008全国计算机技术与软件专业技术资格水平考试网络工程师考试大纲页脚内容PAGE第一章引论1.1计算机网络发展简史A)名词解释:(1)计算机网络:地理上分散的多台独立自主的计算机遵循规定的通讯协议,通过软、硬件互连以实现交互通信、资源共享、信息交换、协同工作以及在线处理等功能的系统。(注解:此条信息分为系统构成+5个系统功能)。(2)计算机网络发展的3个时代第一个时代:1946年美国第一台计算机诞生;第二个时代:20世纪80年代,微机的出现;第三个时代:计算机网络的诞生以及应用。(3)Internet的前身:即1969年美国国防部的高级计划局(DARPA)建立的全世界第一个分组交换网Arparnet。(4)分组交换:是一种存储转发交换方式,它将要传送的报文分割成许多具有同一格式的分组,并以此为传输的基本单元一一进行存储转发。(5)分组交换方式与传统电信网采用的电路交换方式的长处所在:线路利用率高、可进行数据速率的转换、不易引起堵塞以及具有优先权使用等优点。(6)以太网:1976年美国Xerox公司开发的机遇载波监听多路访问\冲突检测(CSMA/CD)原理的、用同轴电缆连接多台计算机的局域网络。(7)INTERNET发展的三个阶段:第一阶段1969年INTERNET的前身ARPANET的诞生到1983年,这是研究试验阶段,主要进行网络技术的研究和试验;从1983年到1994年是INTERNET的实用阶段,主要作为教学、科研和通信的学术网络;1994年之后,开始进入INTERNET的商业化阶段。(8)ICCC:国际计算机通信会议(9)CCITT:国际电报电话咨询委员会(10)ISO:国际标准化组织(11)OSI网络体系结构:开放系统互连参考模型1.2计算机网络分类(1)网络分类方式:a.按地域范围:可分为局域网、城域网、广域网b.按拓补结构:可分为总线、星型、环状、网状c.按交换方式:电路交换网、分组交换网、帧中继交换网、信元交换网d.按网络协议:可分为采用TCP/IP,SNA,SPX/IPX,AppleTALK等协议1.3网络体系结构以及协议(1)实体:包括用户应用程序、文件传输包、数据库管理系统、电子邮件设备以及终端等一切能够发送、接收信息的任何东西。(2)系统:包括一切物理上明显的物体,它包含一个或多个实体。(3)协议:用来决定有关实体之间某种相互都能接受的一些规则的集合。包括语法(Syntax,包括数据格式、编码以及信号电平)、语义(Semantics,包括用于协调和差错处理的控制信息)、定时(Timing,包括速度匹配和排序)。1.4开放系统互连参考模型1.4.1OSI模型的基本层次概念a.物理层①提供为建立、维护和拆除物理链路所需要的机械的、电气的、功能的和规程的特性;②有关物理链路上传输非结构的位流以及故障检测指示b.数据链路层①在网络实体间提供数据发送和接收的功能和过程;②提供数据链路的流控。c.网络层①控制分组传送系统的操作、路由选择、拥挤控制、网络互连等功能,它的作用是将具体的物理传送对高层透明;②根据传输层的要求来选择服务技术;③向传输层报告未恢复的差错。d.传输层①提供建立、维护、拆除传送连接的功能;②选择网络层提供最合适的服务;③在系统之间提供可靠的、透明的数据传送,提供端到端的错误恢复和流量控制。e.会话层①提供两进程之间建立、维护和结束会话连接的功能;②提供交互会话的管理功能。f.表示层①代表应用进程协商数据表示;②完成数据转换、格式化和文本压缩。g.应用层①提供OSI用户服务。1.4.2局域网与OSI模型的对应的层次功能(1)在LAN中数据链路层可分为哪两层?逻辑链路控制层和介质访问控制层。(2)LAN的层次功能详解:*①物理层和OSI的物理层一样,主要处理在物理链路上的传递非结构化的比特流,建立、维持、撤销物理链路,处理机械的、电器的和规程的特性。②介质访问控制层主要功能是控制对传输介质的访问,不同类型的LAN需要采用不同的控制法;③逻辑链路控制层可提供两种控制类:一种是无连接的服务,另一种是面向连接的服务1.5TCP/IP协议集(1)特别注意!!!TCP/IP是一组INTERNET协议系列,而不是单个协议。(2)TCP/IP协议集与OSI模型的比较①网络接口层,有时也称链路层,其功能是接收和发送IP数据报;②IP层有时也称网络层。他处理网上分组的传送以及路由至目的站点;③传输层提供两台计算机之间端到端的数据传送;④应用层处理特定的应用。(3)由SUNMICROSYSTEM公司推出的NFS网络文件系统的特点?①提供透明文件访问以及文件传输;②容易扩充新的资源或软件,不需要改变现有的工作环境;③高性能,可灵活配置。(4)NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。(5)RPC采用了XDR的支持。XDR是一种与机器无关的数据描述编码的协议,他以独立与任意机器体系结构的格式对网上传送的数据进行编码和解码,支持在异构系统之间数据的传送。www.examw.com第二章数据通信(1)数据通信:两个实体间的数据传输和交换。2.1数据通信技术2.1.1模拟数据通信和数字数据通信(2)模拟数据:在某个区间为连续的值的数据(3)数字数据:在某个区间为离散的值的数据(4)模拟、数字数据之间的相互转换问题?模拟数据通过编码解码器(CODEC)转换成数字数据,数字信号通过调制解调器转换成模拟数据(MODEM)(5)数字信号传输与模拟信号传输各自的优缺点?模拟传输是一种不考虑内容的传输模拟信号的方法,在传输过程中,模拟信号经过一定距离的传输之后,必定会信号衰减,为实现长距离传输,模拟信号传输都要使用信号放大器,但是,放大器也会增加噪音分量,如果通过串连的放大器来实现长距离传输,信号将会越来越畸形;与此相反,数字传输与信号有关。衰减会危及数据的完整性,数字信号只能在一个有限的距离内传输,但为了获得更远的传输距离,可以使用中继器,中继器接收数字信号,将数字信号转换成1的模式和0的模式。2.1.2多路复用(1)多路复用的分类及其解释A.频分多路复用(FDM)利用传输介质中不同的载波频率来同时运载多个信号的多路复用技术B.时分多路复用(TDM)利用介质能达到的位传输率超过传输数字数据所需的数据传输率的优点,利用每个信号在时间上交叉,从而传输多个数据信号的多路复用技术(2)T1载波的位结构及传输速率共193位,第8位是信令和控制信号,第193位是帧编码,传输速率是1.544M/BPS(3)两种PCM载波的传输速率以及T2、T3载波的传输速率一种是和T1载波一样的1.544M/BPS,另一种是2.048M/BPS。T2载波的传输速率是6.312M/BPS,T2载波的传输速率是46.304M/BPS。2.1.3异步传输和同步传输(1)异步传输一次传输一个字符的数据,每个字符用一个起始位引导,用一个结束位结束,一般起始位为0,停止位为1(2)同步传输为了使接收方确定数据块的开始和结束,还需要另外一级的同步,即每个数据块用一个前文(preamble)位的模式开始,用一个后文(postamble)位模式结束,加有前后文的数据称为一帧。2.2数据交换技术2.2.1线路交换(1)什么是线路交换?通过网络中的节点在两个站点之间建立专用的通信线路进行数据传输的交换方式(2)线路交换所历经的三个阶段线路建立,数据传送,线路拆除2.2.2报文交换(1)什么是报文交换?将目的地址附加在报文中,然后让报文从节点到节点的通过网络传输的交换方式(2)报文交换比较线路交换的优缺点a.线路效率高b.无需同时使用发送器和接收器传送数据c.不会出现如线路交换中因通信量变大而导致的呼叫被封锁现象,只是报文传送延迟d.可以把一个报文发送到多个目的地e.能够建立报文的优先权f.报文交换网络可以进行速度和代码的转换g.发送部操作终端的保文可以被截获,然后存储或重新选择到另一台终端的路径h.报文交换的主要缺点是他不能满足实时或交互式的通信要求2.2.3分组交换(1)概念解释分组交换是一种结合了报文交换和线路交换各自优点的交换技术,其中,它采用了限制长度的数据报,以及虚拟连接的虚电路方法,从而达到更好的交换效果。2.2.4三种交换技术的比较(1)三种交换技术适用的不同场合a.对于交互式通信来说,报文交换是不合适的;b.对于较轻的和/或间歇式负载来说,线路交换是最合算的,因为可以通过电话拨号线路来使用公用电话系统。c.对于两个站点之间很重的和持续的负载来说,使用租用的线路交换线是最合算的。d.当有一批中等数量数据必须交换到大量的数据设备时,宁可用分组交换方法,这种技术的线路利用率是最高的。e.数据报分组交换适用于短报文和具有灵活性的报文。f.虚电路分组交换事宜浴场交换和减轻各站的处理负担。2.2.5信元交换ATM(异步转移模式)采用信元交换2.3数据传送方式(1)分类并行通信和串行通信(2)在并行通信中数据传输所使用的并行数据总线的物理形式a.计算机内部的数据总线很多就直接是电路板b.扁平带状电缆c.圆形屏蔽电缆2.3.1串行输入/输出(1)串行输入的特点串行数据传输中,每次只传送一位数据,速度比并行传输慢,但是,实现串行传输的硬件具有经济性和实用性的特点。2.3.2串行数据通信(1)电话系统进行串行通行的三种方式a.单工通信来自www.Eb.半双工通信c.全双工通信(2)串行数据的传输、接收的定时可以通过数据链路控制来实现(3)串行数据通信的两种传输方法a.异步串行传输通信硬件通过附加同步信息的方法传输数据b.同步串行传输同步信息包含在信息块内的方法(4)同步通信与异步通信的优缺点a.同步通信取消了每个字节的同步位,从而使数据位在传送为中所占比率增大,提高了传送效率。b.同步通信容许用户传送没有意义的二进制数据c.允许PC机用户通过同步通信网络与计算机实现通信2.4检错与纠错2.4.1检错法(1)检错法的概念检错法是指在传输中仅仅发送足以使接收端能够检测出差错的附加位。(2)检错法的分类a.奇偶校验法b.冗余校验法(LRC)c.循环冗余校验法(CRC)2.4.2纠错法(1)自动请求重发(ARQ)当发送站向接收站发送数据块时,如果无差错,则接收站回送一个肯定应答,即ACK指令;如果接收站检测出错误,则发送一个否定应答,即NCK指令,请求重发。(2)正向纠错法发送站发送能使接收站检错纠错的冗余位2.5通信硬件2.5.1调制解调器(1)调制解调器是一种数据通信设备(DCE)(2)调制解调器的作用就是将数据在数据格式与模拟格式之间转换(3)AT指令集a.ATD拨号指令(ATDP:脉冲拨号,ATDT音频拨号)b.ATH挂机指令c.ATA应答指令(ATSO=0表示取消自动应达,=某个非零整数,则表示振铃这个整数次后应答)d.ATZ将调制解调器内寄存器的值设为默认2.5.2RS-232标准(1)何谓RS-232由美国电子工业协会(EIA)制定的数据终端设备与数据通信设备在进行串行二进制数据交换时的接口,EIARS-232C(2)RS-232的物理层特性a.机械特性接口标准的机械部分指定两个通信装置如何连接。规定了有两个连接器,接到DCE的为母,接到DTE的为公。标准规定使用25针连接器,DB25连接器已成为一个事实上的标准。b.电信号特性+3V~+15V的正电压表示SPACE-3V~-15V的负电压表示MARK在-3V~+3V之间构成一个转换区域,实际上,传输通常使用+(-)12Vc.RS-232C引脚分配I.引脚功能分类A.数据线路:分为数据传送和接收两条线路发送数据(TD,引脚2),接收数据(RD,引脚3)B.控制线路:控制线路传送PC或调制解调器中某些条件的ON/OFF指标来指示该引脚线路的状态处于开启或是关闭①DTR,引脚20:数据终端就绪,由PC产生以使调制解调器了解PC已准备就绪②DSR,引脚6:数据设备就绪,由MODEM产生,以告诉PC当MODEM打开时,已和电话线路连接好且处于数据传输模式③RTS,引脚4:请求发送,由PC产生毅同志调制解调器它想要传送数据④CTS,引脚5:清除发送,由MODEM产生告诉PC它可以进行数据传送⑤CD,引脚8:载波检测,也称为接收线路信号检测装置(RLSD),有时还称为数据载波检测(DCD),他告诉PC机调制解调器是否已建立了有效的连接⑥RI,引脚22:振铃指示II.地①SG,引脚7:信号地②PG,引脚1:保护地III.定时电路①TC,引脚15:称为发送定时转自:考试网-[Examw.Com]②RC,引脚17:称为接收定时(3)空调制解调器的连接,关键是将发送数据TD和接收数据RD交叉连接,实际上是直接通信2.5.3通信适配器(1)异步通信适配器也叫串口,异步通信界面,通用异步接收器/发送器或UART(2)同步通信适配器最常用的同步通信适配器是SDLC和BSC2.6通信软件功能(1)调制解调器的控制a.呼叫/回答模式切换b.自动重拨号c.电话挂起(2)数据控制功能a.流控制(XON/XOFF)b.文件传输(3)数据操作功能a.字符过滤b.转换表c.终端仿真(4)特殊功能a.外部文件操作b.后台操作c.回到操作系统d.编辑器局域网定义和特性局域网(LocalAreaNetwork)即LAN:将小区域内的各种通信设备互联在一起的通信网络。1、局域网三个特性:(1)高数据速率在0.1-100Mbps(2)短距离0.1-25Km(3)低误码率10-8-10-11。2、决定局域网特性的三个技术:(1)用以传输数据的介质(2)用以连接各种设备的拓扑结构(3)用以共享资源的介质控制方法。3、设计一个好的介质访问控制协议三个基本目标:(1)协议要简单(2)获得有效的通道利用率(3)对网上各站点用户的公平合理。以太网EthernetIEEE802.3以太网是一种总路线型局域网,采用载波监听多路访问/冲突检测CSMA/CD介质访问控制方法。1、载波监听多路访问CSMA的控制方案:(1)一个站要发送,首先需要监听总线,以决定介质上是否存在其他站的发送信号。(2)如果介质是空闲的,则可以发送。(3)如果介质忙,则等待一段间隔后再重试。坚持退避算法:(1)非坚持CSMA:假如介质是空闲的,则发送;假如介质是忙的,等待一段时间,重复第一步。利用随机的重传时间来减少冲突的概率,缺点:是即使有几个站有数据发送,介质仍然可能牌空闲状态,介质的利用率较低。(2)1-坚持CSMA:假如介质是空闲的,则发送;假如介质是忙的,继续监听,直到介质空闲,立即发送;假如冲突发生,则等待一段随机时间,重复第一步。缺点:假如有两个或两个以上的站点有数据要发送,冲突就不可避免的。(3)P-坚持CSMA:假如介质是空闲的,则以P的概率发送,而以(1-P)的概率延迟一个时间单位,时间单位等于最大的传播延迟时间;假如介质是忙的,继续监听,直到介质空闲,重复第一步;假如发送被延迟一个时间单位,则重复第一步。2、载波监听多路访问/冲突检测这种协议广泛运用在局域网内,每个帧发送期间,同时有检测冲突的能力,一旦检测到冲突,就立即停止发送,并向总线上发一串阻塞信号,通知总线上各站冲突已经发生,这样通道的容量不致因白白传送已经损坏的帧而浪费。冲突检测的时间:对基带总线,等于任意两个站之间最大的传播延迟的两倍;对于宽带总线,冲突检测时间等于任意两个站之间最大传播延迟时间的四倍。3、二进制退避算法:(1)对每个帧,当第一次发生冲突时,设置参量为L=2;(2)退避间隔取1-L个时间片中的一个随机数,1个时间片等于2a;(3)当帧重复发生一次冲突时,则将参量L加倍;(4)设置一个最大重传次数,则不再重传,并报告出错标记环网TokeRingIEEE802.51、标记的工作过程:标记环网又称权标网,这种介质访问使用一个标记沿着环循环,当各站都没有帧发送时,标记的形式为01111111,称空标记。当一个站要发送帧时,需要等待空标记通过,然后将它改为忙标记011111110。并紧跟着忙标记,把数据发送到环上。由于标记是忙状态,所以其他站不能发送帧,必须等待。发送的帧在环上循环一周后再回到发送站,将该帧从环上移去。同时将忙标记改为空标记,传至后面的站,使之获得发送帧的许可权。2、环上长度用位计算,其公式为:存在环上的位数等于传播延迟(5μs/km)×发送介质长度×数据速率+中继器延迟。对于1km长、1Mbps速率、20个站点,存在于环上的位数为25位。3、站点接收帧的过程:当帧通过站时,该站将帧的目的地址和本站的地址相比较,如地址相符合,则将帧放入接收缓冲器,再输入站,同时将帧送回至环上;如地址不符合,则简单地将数据重新送入环。4、优先级策略标记环网上的各个站点可以成不同的优先级,采用分布式高度算法实现。控制帧的格式如下:P优先级、T空忙、M监视位、预约位纤分布式数据接口FDDIISO93141、FDDI和标记环介质访问控制标准接近,有以下几点好处:(1)标记环协议在重负载条件下,运行效率很高,因此FDDI可得到同样的效率。(2)使用相似的帧格式,全球不同速率的环网互连,在后面网络互加这一章将要讨论这个问题(3)已经熟悉IEEE802.5的人很容易了解FDDI(4)已经积累了IEEE802.5的实践经验,特别是将它做集成电路片的经济,用于FDDI系统和元件的制造。2、FDDI技术(1)数据编码:用有光脉冲表示为1,没有光能量表示为0。FDDI采用一种全新的编码技术,称为4B/5B。每次对四位数据进行编码,每四位数据编码成五位符号,用光的存在和没有来代表五位符号中每一位是1还是0。这种编码使效率提高为80%。为了得到信号同步,采用了二级编码的方法,先按4B/5B编码,然后再用一种称为倒相的不归零制编码NRZI,其原理类似于差分编码。(2)时钟偏移:FDDI分布式时钟方案,每个站有独立的时钟和弹性缓冲器。进入站点缓冲器的数据时钟是按照输入信号的时钟确定的,但是,从缓冲器输出的信号时钟是根据站的时钟确定的,这种方案使环中中继器的数目不受时钟偏移因素的限制。3、FDDI帧格式:由此可知:FDDIMAC帧和IEEE802.5的帧十分相似,不同之处包括:FDDI帧含有前文,对高数据率下时钟同步十分重要;允许在网内使用16位和48位地址,比IEEE802.5更加灵活;控制帧也有不同。4、FDDI协议FDDI和IEEE802.5的两个主要区别:(1)FDDI协议规定发送站发送完帧后,立即发送一幅新的标记帧,而IEEE802.5规定当发送出去的帧的前沿回送至发送站时,才发送新的标记帧。(2)容量分配方案不同,两者都可采用单个标记形式,对环上各站点提供同等公平的访问权,也可优先分配给某些站点。IEEE802.5使用优先级和预约方案。5、为了同时满足两种通信类型的要求,FDDI定义了同步和异步两种通信类型,定义一个目标标记循环时间TTRT,每个站点都存在有同样的一个TTRT值。局域网标准IEEE802委员会是由IEEE计算机学会于1980年2月成立的,其目的是为局域网内的数字设备提供一套连接的标准,后来又扩大到城域网。1、服务访问点SAP在参考模型中,每个实体和另一个实体的同层实体按协议进行通信。而一个系统内,实体和上下层间通过接口进行通信。用服务访问点SAP来定义接口。2、逻辑连接控制子层LLCIEEE802规定两种类型的链路服务:无连接LLC(类型1),信息帧在LLC实体间,无需要在同等层实体间事先建立逻辑链路,对这种LLC帧既不确认,也无任何流量控制或差错恢复功能。面向连接LLC(类型2),任何信息帧,交换前在一对LLC实体间必须建立逻辑链路。在数据传送方式中,信息帧依次序发送,并提供差错恢复和流量控制功能。3、介质访问控制子层MACIEEE802规定的MAC有CSMA/CD、标记总线、标记环等。4、服务原语(1)ISO服务原语类型REQUEST原语用以使服务用户能从服务提供者那里请求一定的服务,如建立连接、发送数据、结束连接或状态报告。INDICATION原语用以使服务提供者能向服务用户提示某种状态。如连接请求、输入数据或连接结束。RESPONSE原语用以使服务用户能响应先前的INDIECATION,如接受连接INDICATION。CONFIRMARION原语用以使服务提供者能报告先前的REQUEST成功或失败。(2)IEEE802服务原语类型和ISO服务原语类型相比REQUEST和INDICATION原语类型和ISO所用的具有相同意义。IEEE802没有REPONSE原语类型,CONFIRMATION原语类型定义为仅是服务提供者的确认。逻辑链路控制协议1、IEEE802.2是描述LAN协议中逻辑链路LLC子层的功能、特性和协议,描述LLC子层对网络层、MAC子层及LLC子层本身管理功能的界面服务规范。2、LLC子层界面服务规范IEEE802.2定义了三个界面服务规范:(1)网络层/LLC子层界面服务规范;(2)LLC子层/MAC子层界面服务规范;(3)LLC子层/LLC子层管理功能的界面服务规范。3、网络层/LLC子层界面服务规范提供两处服务方式不确认无连接的服务:不确认无连接数据传输服务提供没有数据链路级连接的建立而网络层实体能交换链路服务数据单元LSDU手段。数据的传输方式可为点到点方式、多点式或广播式。这是一种数据报服务面向连接的服务:提供了建立、使用、复位以及终止数据链路层连接的手段。这些连接是LSAP之间点到点式的连接,它还提供数据链路层的定序、流控和错误恢复,这是一处虚电路服务。4、LLC子层/MAC子层界面服务规范本规范说明了LLC子层对MAC子层的服务要求,以便本地LLC子层实体间对等层LLC子层实体交换LLC数据单元。(1)服务原语是:MA-DATA.request、MA-DATA.indication、MA-DATA.confirm(2)LLC协议数据单元结构LLCPDU:目的服务访问点地址字段DSAP,一个字节,其中七位实际地址,一位为地址型标志,用来标识DSAP地址为单个地址或组地址。源服务访问点地址字段SSAP,一个字节,其中七位实际地址,一位为命令/响应标志位用来识别LLCPDU是命令或响应。控制字段、信息字段。5、LLC协议的型和类LLC为服务访问点间的数据通信定义了两种操作:Ⅰ型操作,LLC间交换PDU不需要建立数据链路连接,这些PDU不被确认,也没有流量控制和差错恢复。Ⅱ型操作,两个LLC间交换带信息的PDU之间,必须先建立数据链路连接,正常的通信包括,从源LLC到目的LLC发送带有信息的PDU,它由相反方向上的PDU所确认。LLC的类型:第1类型,LLC只支持Ⅰ型操作;第2类型,LLC既支持Ⅰ型操作,也支持Ⅱ型操作。6、LLC协议的元素控制字段的三种格式:带编号的信息帧传输、带编号的监视帧传输、无编号控制传输、无编号信息传输。带编号的信息帧传输和带编号的监视帧传输只能用于Ⅱ型操作。无编号控制传输和无编号信息传输可用于Ⅰ型或Ⅱ型操作,但不能同时用。信息帧用来发送数据,监视帧用来作回答响应和流控。CSMA/CD介质访问控制协议1、MAC服务规范三种原语MA-DATA.request、MA-DATA.indication、MA-DATA.confirm2、介质访问控制的帧结构CSMA/CD的MAC帧由8个字段组成:前导码;帧起始定界符SFD;帧的源和目的地址DA、SA;表示信息字段长度的字段;逻辑连接控制帧LLC;填充的字段PAD;帧检验序列字段FCS。前导码:包含7个字节,每个字节为10101010,它用于使PLS电路和收到的帧定时达到稳态同步。帧起始定界符:字段是10101011序列,它紧跟在前导码后,表示一幅帧的开始。帧检验序列:发送和接收算法两者都使用循环冗余检验(CRC)来产生FCS字段的CRC值。3、介质访问控制方法IEEE802.3标准提供了介质访问控制子层的功能说明,有两个主要的功能:数据封装(发送和接收),完成成帧(帧定界、帧同步)、编址(源和目的地址处理)、差错检测(物理介质传输差错的检测);介质访问管理,完成介质分配避免冲突和解决争用处理冲突。数据模型的三要素(1)数据结构数据结构是所研究的对象类型(ObjectType)的集合。这些对象和对象类型是数据库的组成成分。一般可分为两类:一类是与数据类型、内容和其它性质有关的对象;一类是与数据之间的联系有关的对象。前者如网状模型中的数据项和记录,关系模型中的域、属性和关系等。后者如网状模型中的关系模型(settype)。在数据库领域中,通常按照数据结构的类型来命名数据模型,进而对数据库管理系统进行分类。如层次结构、网状结构和关系结构的数据模型分别称作为层次模型、网状模型和关系模型。相应地,数据库分别称作为层次数据库、网状数据库和关系数据库。(2)数据操作数据操作是指对各种对象类型的实例(或值)所允许执行的操作的集合,包括操作及有关的操作规则。在数据库中,主要的操作有检索和更新(包括插入、删除、修改)两大类。数据模型定义了这些操作的定义、语法(即使用这些操作时所用的语言)。数据结构是对系统静态特性的描述,而数据操作是对系统动态特性的描述。两者既有联系,又有区别。(3)数据的约束条件数据的约束条件是完整性规则的集合。完整性规则是指在给定的数据模型中,数据及其联系所具有的制约条件和依存条件,用以限制符合数据模型的数据库的状态以及状态的变化,确保数据的正确性、有效性和一致性。概念模型数据模型是数据库系统的核心和基础。每个DBMS软件都是基于某种数据模型的。为了把现实世界中的具体事物或事物之间的联系表示成DBMS所支持的数据模型,人们首先必须将现实世界的事物及其之间的联系进行抽象,转换为信息世界的概念模型;然后将信息世界的概念模型转换为机器世界的数据模型。也就是说,首先把现实世界中的客观对象抽象成一种信息结构。这种信息结构并不依赖于具体的计算机系统和DBMS。然后,再把概念模型转换为某一计算机系统上某一DBMS所支持的数据模型。因此,概念模型是从现实世界到机器世界的一个中间层次。现实世界的事物反映到人的大脑之中,然后人们开始认识这些事物,经过选择、命名、分类和组织等抽象工作之后形成概念模型,并进入到信息世界。用户(user)关心的是现实世界中的事物、事物的属性及其相互关系。例如,用户可能关心他的顾客及其属性,如顾客地址、银行帐号等等。用户也关心自己的定货帐目,如谁订的货、订的什么和订多少等等。系统分析员(analyst)同样也关心现实世界,但是系统分析员需要分析用户的信息需求。作为需求分析的结果,分析员必须以文档的形式对需求进行结构化的描述;这个文档就是信息模型。实体(Entity)实体是构成数据库的基本元素。实体是指一个存在的东西以区别这个东西所具有的属性和这个东西与其它东西的联系。实体可以是人,也可以是物;可以是实际对象,也可以是概念;可以是事物本身,也可以是指事物之间的联系。属性(Attribute)一个实体可以由若干个属性来刻画。属性是相对实体而言的,是实体所具有的特性。关键字(Key)能唯一地标识实体的属性的集合称为关键字(或码)。域(Domain)属性的取值范围称作域。实体型(EntityType)一类实体所具有的共同特征或属性的集合称为实体型。一般用实体名及其属性来抽象地刻画一类实体的实体型。实体集(EntitySet)同型实体的集合叫实体集。例如,学生就是一个实体集。实体集的名即是实体型。对于学生和(学号,姓名,年龄,系,年级)均是实体型,而学生是对实体型(学号,姓名,年龄,系,年级)所起的名称,两者是指同一客观对象。但本科生和研究生可以为相同实体型,而实体集不同。联系(Relationship)现实世界的事物之间是有联系的。一般存在两类联系:一是实体内部的组成实体的属性之间的联系,二是实体之间的联系。在考虑实体内部的联系时,是把属性看作为实体。一般来说,两个实体之间的联系可分为三种:(1)一对一(1∶1)联系若对于实体集A中的每一个实体,实体集B中至多有唯一的一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记作1∶1。(2)一对多(1∶n)联系若对于实体集A中的每个实体,实体集B中有n个实体(n≥0)与之联系;反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1∶n。相应地有多对一(n∶1)联系多对一联系,从本质上说,是一对多联系的逆转。其定义同一对多联系类似,不再赘述。(3)多对多(m∶n)联系若对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系;反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之对应,则称实体集A与实体集B具有多对多联系,记作m∶n。实质上,多对多联系是任意一种联系。另外,同一实体集内的各个实体间也可以有各种联系。概念模型的表示方法最常用的是实体一联系方法(Entity-RelationshipApproach),简称E-R方法。该方法是由P.P.S.Chen在1976年提出的。E-R方法用E-R图来描述某一组织的概念模型。在这里仅介绍E-R图的要点。在E-R图中:(1)长方形框表示实体集,框内写上实体型的名称。(2)用椭圆框表示实体的属性,并用有向边把实体框及其属性框连接起来。(3)用菱形框表示实体间的联系,框内写上联系名,用无向边把菱形框及其有关的实体框连接起来,在旁边标明联系的种类。如果联系也具有属性,则把属性框和菱形框也用无向边连接上。三种主要的数据模型实际DBMS所支持的数据模型主要有三种:层次模型(HierarchicalModel)网状模型(NetworkModel)关系模型(RelationalModel)其中,关系模型是当前DBMS所支持的数据模型的主流。90年代运行的DBMS几乎都是基于关系模型的。层次模型和网状模型统称为非关系模型。非关系模型的结构可以和图论中的图相对应,比较直观,但在理论上不完备,实现效率较低,故此目前很少用。但是最近,层次模型在研究面向对象的DBMS中已得到重视。在关系模型中,数据在用户的观点中(或在用户视图中)的逻辑结构是一张二维表(Table)。关系(Relation),对应于平常讲的一张表。元组(Tuple),表中的一行。属性(Attribute),表中的一列称为一个属性,给每一列起一个名,称为属性名。这一列或这个属性所有可能取的值的集合称为这个属性的值域(Domain),值域中的一个元素叫做这个属性的值。主关键字(PrimaryKeyAttribute或PrimaryKey),是指能唯一标识一个元组的一个或一组属性。分量(Attributevalue),是指元组中的一个属性值。关系模式(RelationalSchema),是对关系的描述,一般用关系名(属性名1,属性名2,…,属性名n)来表示。同层次模型和网状模型相比较,关系模型具有下列特点:(1)概念单一在关系模型中,无论是实体还是实体之间的联系都用关系来表示。在关系模型中,在用户的观点中,数据的逻辑结构就是表,也只有这唯一的概念。在非关系模型中,用户要区分记录型与记录型之间的联系两个概念;当环境复杂时,数据结构异常复杂,难以掌握。而关系模型,由于概念单一,可以变复杂为直观、简单,易学易用。(2)规范化所谓关系规范化是指在关系模型中,每一个关系都要满足一定的条件要求。这些条件被称为规范条件。对于关系,一个最基本的规范条件是,要求关系中的每一个属性(或分量)均是不可分的数据项;也就是说不允许表中有表,表是不可嵌套的。(3)在关系模型中,用户对数据的操作的输入和输出都是表,也就是说,用户通过操作旧表而得到一张新表。总之,关系模型概念简单,结构清晰,用户易学易用,有严格的以数学为基础的关系理论作指导,便于DBMS的实现。基于关系的DBMS简化了应用程序员的工作,便于数据库应用系统的设计和维护。故此,关系模型自诞生以后就得到了迅速的发展,成为应用最为广泛的、唯一的数据模型。数据库系统的三级模式结构数据库管理系统的三级模式结构由外模式、模式和内模式组成。外模式(externalschema),或子模式(subschema)或用户模式(userschema),是指数据库用户所看到的数据结构,是用户看到的数据视图。模式(schema)或逻辑模式(logicschema),是数据库中对全体数据的逻辑结构和特性的描述,是所有用户所见到的数据视图的总和。外模式是模式的一部分。内模式(internalschema),或存储模式(storageschema),或物理模式(physicalschema),是指数据在数据库系统内的存储介质上的表示,即对数据的物理结构和存取方式的描述。模式描述的是数据的全局的逻辑结构,决定了DBMS的功能。外模式涉及的仅是局部的逻辑结构,是模式的子集,是对模式的调用。数据库系统的三级模式是对数据进行三个层次抽象的工具。通过三级模式,把对数据的具体组织留给DBMS来完成,使得用户能在高层次上处理数据的逻辑结构,而不必关心数据的物理结构。为了实现这三个层次这间的联系,DBMS在沟通三级模式中提供了两个映象:外模式-模式映象模式-内模式映象(1)模式模式规定了数据库中全部数据的一个逻辑表示或描述形式。模式既不同于内模式,也不同于外模式。它比内模式抽象,不涉及数据的物理结构和存储介质。它与具体的应用程序或高级语言无关。(2)外模式外模式是个别用户的数据视图,即与某一应用有关的数据的逻辑表示。(3)内模式内模式是全部数据库的内部表示或底层描述,是用来定义数据的物理结构和存取方式的。(4)二级映象对于同一个模式,可以有任意多个外模式。外模式-模式的映象定义了某个外模式和模式之间的对应关系。这些映象的定义通常包含在各自的外模式中。当模式改变时,外模式-模式的映象要做相应的改变,以保证外模式的不变性。这是数据库管理员(DBA)的责任。模式-内模式的映象定义了数据逻辑结构和存储结构之间的对应关系。例如,字段的内部表示等。当数据库的存储结构改变时,模式-内模式的映象也须做相应的修改,以使得模式保持不变性。这仍是DBA的责任。正是由于上述二级映象的功能及其自动实现,使得数据库系统中的数据具有较高的逻辑独立性和物理独立性,从而大大地方便了用户的使用。(5)概念模式与模式ANSI研究组于1975年2月提出一个临时报告。1978年提出一个最终报告,称之为ANˉSI/SPARC报告,简称为SPARC报告。SPARC报告中指出,数据库管理系统应具有三级模式的结构,即概念模式、外模式和内模式。其中外模式和内模多与上面所讲的大致相当。但SPARC报告中的概念模式是指一个组织或部门所对应的现实世界的真实模型,即概念模型。概念模式仅描述实体及其属性和联系,不涉及机器世界的概念。概念模型是信息世界范畴内的信息的结构,而模式是机器世界范畴内的概念模型的逻辑表示。概念模型独立于具体的计算机系统,甚至是和计算机无关的,是一个组织或部门的模型。常用的描述概念模式的方法是E-R方法。模式是依赖于具体的计算机及其DBMS的。模式通过三种具体模型:层次模型、网状模型和关系模型来加以实现。概念模式必须转换成具体的数据模型,然后才能在相应的DBMS上实现。概念模型和模式都是描述信息或数据的整体结构的,然而它们是在不同的抽象层次上加以描述的。概念模型离机器更远,形式化程度低。从远离机器的观点看,概念模型更抽象些,但更接近现实世界。而模式描述使用的是形式化的语言-模式DDL,而概念模型描述使用的是E-R图和一些自然语言。-使用数据库的计算机系统结构广义地讲,实际上使用数据库的计算机系统由下列几个部分组成的:(1)硬件部分包括主机、外部存储设备、网络设备和电源等。(2)软件部分包括操作系统、DBMS、编译系统和应用开发工具软件等。(3)人员包括数据库管理员(DataBaseAdministrator-DBA),系统分析员(SystemAnaˉlyst)、应用程序员(ApplicationProgrammer)和用户(User)。数据库管理系统数据库管理系统DBMS是数据库系统的核心。DBMS是负责数据库的建立、使用和维护的软件。DBMS建立在操作系统之上,实施对数据库的统一管理和控制。用户使用的各种数据库命令以及应用程序的执行,最终都必须通过DBMS。另外,DBMS还承担着数据库的安全保护工作,按照DBA所规定的要求,保证数据库的完整性和安全性。DBMS的主要功能包括以下几个主要方面:(1)数据库的定义功能DBMS通过提供数据描述语言(也称数据定义语言)(DataDescripˉtiveLanguage———DDL)来对外模式、模式和内模式加以描述。然后模式翻译程序把用DDL写的各种模式的定义源码翻译成相应的内部表示,形成相应的目标形式,分别叫目标外模式、目标模式、目标内模式,这些目标模式是对数据库的描述,而不是数据本身。(目标)模式只刻画了数据库的形式或框架,而不包括数据库的内容。这些目标模式被保存在数据字典(或系统目标)之中,作为DBMS存取和管理数据的基本依据。例如,DBMS根据这些模式定义,进行物理结构和逻辑结构的映象,进行逻辑结构和用户视图的映象,以导出用户要检索的数据的存取方式。(2)数据操纵功能DBMS提供数据操纵语言(DataManipulationLanguage———DML)实现对数据库中数据的一些基本操作,如:检索、插入、修改、删除和排序等等。DML有两类:一类是嵌入主语言的,如嵌入到C或COBOL等高级语言中。这类DML语言本身不能单独使用,故此称为宿主型的DML或嵌入式DML。另一类是非嵌入式语言(包括交互式命令语言和结构化语言),它的语法简单,可以独立使用,由单独的解释或编译系统来执行,所以一般称为自主型或自含型的DML。命令语言是行结构语言,单条执行。结构化语言是命令语言的扩充或发展,增加了程序结构描述或过程控制功能,如循环、分支等功能。命令语言一般逐条解释执行。结构化语言可以解释执行,也可以编译执行。现在DBMS一般均提供命令语言的交互式环境和结构环境两种运行方式,供用户选择。DBMS控制和执行DML语句(或DML程序),完成对数据库的操作。对于自主型的结构化的DML,DBMS通常采用解释执行的方法,但也有编译执行的方法,而且编译执行的越来越多。另外,很多系统同时设有解释和编译两种功能,由用户选其一。对于嵌入型或缩主型DML,DBMS一种提供两种方法:
①预编译方法。②修改和扩充主语言编译程序(亦称增强编译方法)。预编译方法是,由DBMS提供一个预处理程序,对源程序进行语法扫描,识别出DML语句,并把这些语句转换成主语言中的特殊调用语句。主语言必须和DML有调用接口。这样在连接形成目标时和主语言语句一起形成可执行的目标。(3)数据库运行管理数据库运行期间的动态管理是DBMS的核心部分,包括并发控制、存取控制(或安全性检查、完整性约束条件的检查)、数据库内部的维护(如索引、数据字典的自动维护等)、缓冲区大小的设置等等。所有的数据库操作都是在这个控制部分的统一管理下,协同工作,以确保事务处理的正常运行,保证数据库的正确性、安全性和有效性。(4)数据库的建立和维护功能数据库的建立和维护包括初始数据的装入、数据库的转储或后备功能、数据库恢复功能、数据库的重组织功能和性能分析等功能,这些功能一般都由各自对应的实用功能子程序来完成。DBMS随软件产品和版本不同而有所差异。通常大型机上的DBMS功能最全,小型机上的DBMS功能稍弱点,微机上的DBMS更弱些。但是,目前,由于硬件性能和价格的改进,微机上的DBMS功能越来越全。-关系数据库的标准语言———SQL1.SQL概述SQL的英语名称是结构查询语言(StructuredQueryLanguage)实际上它的功能包括查询(Query)、操纵(Manipulation)、定义(Definition)和控制(Control)四个方面,是一个综合的、通用的、功能极强的关系数据库语言。SQL支持数据库的三级模式结构。2.SQL的数据定义功能SQL的数据定义功能包括三部分:定义基本表,定义视图和定义索引。它们是:CREATETABLECREATEVIEWCREATEINDEXDROPTABLEDROPVIEWDROPINDEXSQL的数据定义功能可用于定义和修改模式(如基本表),定义外模式(如视图)和内模式(如索引)。基本表的定义与删除定义基本表的语句格式为:CREATETABLE表名(列名1类型[NOTNULL][,列名2类型[NOTNULL]]…)[其他参数];其中,任选项“其它参数”是与物理存储有关的参数。根据具体系统的不同而不同。删除基本表的语句为:DROPTABLE表名;删除索引的语句为:DROPINDEX索引名;删除索引的同时把有关索引的描述也从数据字典中删去。但表的内涵仍存在且其数据外延内容不变。把一个基本表的定义连同表上所有的记录、索引以及由此基本表导出的所有视图全部都删除,并释放相应的存储空间。索引的建立与删除对一个基本表,可以根据应用环境的需要建立若干索引,以提供多种存取方式。通常,索引的建立和删除由DBA或表的主人(即建立表的人)负责。用户不必也不能在存取数据时选择索引。存取路径的选择由系统自动进行。索引的描述存放在数据字典中。建立索引的语句格式为:CREATE[UNIQUE]INDEX索引名ON基本表名(列名[次序][,列名[次序]]…)[其他参数];这里的任选项———其他参数是与物理存储有关的参数。索引可以建在一列或几列上。圆括号内是索引列的顺序说明表。其中的任选项———次序,指定了索引值排序的次序。可取ASC(升序)或DESC(降序)。缺省值为升序。UNIQUE表示每一索引值只对应唯一的数据记录。SQL的数据操纵功能SQL的数据操纵功能包括SELECT,INSERT,DELETE和UPDATE四个语句,即检索和更新(包括增、删、改)两部分工能。检索就是查询。SQL更新语句SQL的更新语句包括修改,删除和插入三类语句。①修改(UPDATE)(亦称为更新)修改语句的一般格式为:UPDATE表名SET字段=表达式[,字段=表达式]…[WHERE谓词];修改指定表中满足谓词(或条件)的元组,把这些元组按SET子句中的表达式修改相应属性或字段上的值。②删除(DELETE)删除语句一般格式为:DELETEFROM表名[WHERE谓词];从指定表中删除满足谓词的那些记录。没有WHERE子句时表示删去此表中的全部记录,但此表的定义仍在数据字典中,只是一个空表。DELETE只对表外延操作,不对内涵操作。③插入(INSERT)插入语句的一般格式为:INSERTINTO表名[(字段名[,字段名]…)]valueS(常量[,常量]…);或INSERTINTO表名[(字段名[,字段名]…)]子查询;第一种格式把一个新记录插入指定的表中。第二种格式把子查询的结果插入表中。若表中有些字段在插入语句中没有出现,则这些字段上的值取空值NULL。当然在表定义中说明了NOTNULL的字段在插入时不能取NULL。若插入语句中没有指出字段名,则新记录必须在每个字段上均有值。视图视图是从一个或几个基本表(或视图)导出的表。某一用户可以定义若干视图。因此对某一用户而言,按ANSI/SPARC报告的观点,他的外模式是由若干基本表和若干视图组成的。视图和基本表不同,视图是一个虚表,即视图所对应的数据不实际存储在数据库中,数据库中只存储视图的定义(存在数据字典中)。视图一经定义就可以和基本表一样被查询、被删除(DROP),也可以用来定义新的视图,但更新(增、删、改)操作将有一定限制。视图可以理解成一个数据库,只有内涵保存在数据库字典中,而无外延存储;其外延是在使用时动态地生成的或计算出来的。(1)视图的定义与删除SQL建立视图的语句格式为:CREATEVIEW视图名[(字段名[,字段名]…)]AS子查询[WITHCHECKOPTION谓词];视图可以删除,语句格式为:DROPVIEW视图名;视图的定义就从数据字典中删除。由此视图导出的其它视图也将自动被删除。若导出此视图的基本表删除了,则此视图也将自动删除。(2)视图的查询语句视图定义后,用户可以如同基本表那样对视图查询。(3)视图的更新语句对视图的更新最终要转换成对基本表的更新(这里的更新,指INSERT,UPDATE和DELETE三类操作)。在关系数据库中,并非所有的视图都是可更新的,也就是说,有些视图的更新不能唯一地有意义地转换成对基本表的更新。(4)视图的优点视图的概念具有很多优点,主要有:(1)视图对于数据库的重构造提供了一定程度的逻辑独立性;(2)简化了用户观点;(3)视图机制使不同的用户能以不同的方式看待同一数据;(4)视图机制对机密数据提供了自动的安全保护功能。SQL的数据控制功能SQL数据控制功能是指控制用户对数据的存取权力。某个用户对某类数据具有何种操作权力是由DBA决定的。这是个政策问题而不是技术问题。数据库管理系统的功能是保证这些决定的执行。为此它必须能:(1)把授权的决定告知系统,这是由SQL的GRANT和REVOKE语句来完成的。(2)把授权的结果存入数据字典。(3)当用户提出操作请求时,根据授权情况进行检查,以决定是执行操作请求还是拒绝之。授权语句的一般格式为:GRANT权力[,权力]…[ON对象类型对象名]TO用户[,用户]…,[WITHGRANTOPTION];对不同类型的操作对象可有不同的操作权力。(1)对基本表、视图及其字段的操作权力有查询、插入、更新、删除以及它们的总和ALLPRIVILEGE。(2)对基本表的操作权力还有修改(ALTER)和建立索引(INDEX)。(3)对数据库的操作权力有建立表(CREATETAB)。某用户有了此权力就可以使用Createtable建立基本表。称他为表的主人,拥有对此表的一切操作权力。(4)对表空间的权力有使用(USE)数据库空间存储基本表的权力。(5)系统权力有建立新数据库(CREATEDBA)的权力。GRANT语句中的任选项WITHGRANTOPTION的作用是使获得某种权力的用户可以把权力再授予别的用户。嵌入式SQL把SQL嵌入主语言使用时必须解决三个问题:(1)区分SQL语句与主语言语句。这是通过在所有的SQL语句前加前缀EXECSQL来解决的。SQL语句结束标志随主语言不同而不同,如PL/1用分号(;),COBOL用EMD-EXEC来表示。SQL语句首先由预编译程序加以处理,转换为主语言编译程序能够识别的形式,然后交主语言编译程序进一步处理。(2)数据库工作单元和程序工作单元之间的通信。SQL语句中可以使用主语言的程序变量(简称主变量),这些变量名前加冒号(:)作标志,以区别地字段名,程序中使用的任何表(基本表或视图)都要用EXECSQLDECLARE语句加以说明。一则使程序更加清晰,二则使预编译程序能作某些语法检查。SQL语句执行后,系统要反馈给应用程序若干信息,这些信息送到SQL的通信区SQLCA。SQLCA用语句EXECSQLINCLUDE加以定义。在SQLCA中有一个状态指示字段SQLCODE。当SQLCODE为零时,表示SQL语句执行成功,否则返回一个错误代码(负值)或警告信息(正值)。程序员应该在每个SQL语句之后测试SQLCODE的值,以便处理各种情况。(3)一个SQL语句原则上可产生或处理一组记录,而主语言一次只能处理一个记录,为此必须协调两种处理方式。这是用游标(Cursor)来解决的。下面首先讨论不需要游标的DML语句,然后讨论使用游标的DML语句。不用游标的DML语句不需要游标的DML语句有:查询结果为单记录的SELECT语句UPDATE(除了CURRENT形式的UPDATE)语句DELETE(除了CURRENT形式的DELETE)语句INSERT语句(1)查询结果为单记录的SELECT语句这类语句的一般格式是:(主语言为PL/1)EXECSQLSELECT目标列INTO主变量[空值标志]FROM基本表(或视图)[WHERE条件表达式];SELECT语句从数据库中找到符合条件的记录,把结果放到主变量中。(2)UPDATE语句(3)DELETE语句(4)INSERT语句使用游标的DML语句一般情况下SELECT语句的查询结果是记录的集合而不是单个记录,为此需要用游标机制作为桥梁,把集合操作转换为单记录处理。与游标有关的语句有四个:(1)定义游标。游标是与某一查询结果相联系的符号名。用DECLARE语句定义。这是一个说明语句。与游标相对应的SELECT语句这时并不执行。(2)打开(OPEN)游标。打开游标语句使游标处于活动状态。与游标相应的查询语句被执行。游标指向查询结果集中的第一个记录之前。(3)推进(FETCH)游标。把游标向前推进一个记录,并把游标指向的当前记录中的字段值取出,放到INTO子句后相应的主变量中。FETCH语句常常用于循环,以借助主语言功能逐一处理结果集中的数据。(4)关闭(CLOSE)游标。关闭游标,使它不再和原来的查询结果相联系。关闭了的游标可以再次被打开,与新的查询结果集相联系。使用CURRENT形式的UPDATE和删除语句应注意:(1)若游标定义中的SELECT语句带有UNION或ORDERBY子句,或者这个SELECT语句相当于定义了一个不可更新的视图,则不能用这两个更新语句。(2)若使用CURRENT形式的UPDATE语句,则游标定义中要包括FORUPDATE子句,指出更新的字段(SET子句中使用的字段)。因此,游标定义语句的一般格式为:EXECSQLDECLARE游标名CURSORFOR子查询UNION子查询…[FORUPDATEOF字段名[,字段名]…|ORDER-BY-子句SQL的事务处理功能(1)事务处理的概述所谓事务(Transaction)是指一系列动作的组合,这些动作被当作一个整体来处理。这些动作或者相继都被执行,或者什么也不做。在数据库中,一个动作是指一个SQL语句。事务是一组SQL语句组成的一个逻辑单位。要么这些SQL语句全部被按顺序正确执行,要么在某SQL语句执行失败时,按照用户要求,取消已执行的SQL语句对数据库中数据的修改。或者要么事务中SQL语句都被正确执行,完成该事务对数据库中数据的所有操作;或者要么相当于一条SQL语句也未执行,数据库数据未做任何改动。(2)SQL语言的事务处理语句SQL语言有3条语句用于事务处理,它们是:(1)Commit语句,对于正确执行了的事务进行提交,进行提交即对数据库中数据的修改永久化。同时还释放事务和封锁,标志该事务结束。(2)Savepoint语句,定义事务中的一个回滚保留点,它是事务恢复时的一个标记点。(3)rollback语句,无论事务执行的当前位置在哪里,该语句的执行要么取消事务执行以来对数据库的全部修改,要么取消至某个指定回滚点后对数据库的全部修改。释放自保留点之后的全部表或行的封锁(没有保留点,相当于回滚到事务开始处,终止该事务)。事务的恢复(回滚)是根据事务执行前保存下的当时数据库状态来实现的。一遇到rollback语句,就将数据库中数据恢复到原来的状态,相当于撤消事务中已执行了的SQL语句。数据库的存储结构数据库的存储结构不同于一般文件系统的存储结构。数据库数据的特点是各种记录型之间彼此有联系,数据是结构化的。数据的存储结构不仅涉及每种记录型的记录如何存储,而且要使数据的存储反映各种记录型之间的联系。在DB多级模式中引入内模式(存储模式)的主要目的是使模式的数据结构的描述同它的存储表示的描述分开,以致DBA为了协调数据库性能而对数据库数据的存储方法进行修改时,可不必修改模式,以提高数据库的物理独立性。在各个数据库管理系统中,对内模式的定义功能各不相同。在关系数据库管理系统中有些DDL语句可影响数据库的存储结构。在DBMS中各级模式的存储结构是恒定的或唯一的,而数据库内容(或其记录)的存储方式是不唯一的。数据库存储结构设计的好坏直接影响系统的性能。在存储结构中主要是涉及存储记录的设计。存储记录与概念记录之间具有对应关系,如果存储记录与概念记录之间具有一一对应关系,在这种情况下存储记录的设计就比较简单,不需要进一步讨论。概念记录是指在逻辑结构中的记录。但当一个概念记录对应多个不同类型的存储记录时,存在如何设计存储记录的问题。对于这样的概念记录,其存储记录可以有以下几种设计:1.顺序组织将存储记录设计成与概念记录一一对应,按SNO大小(或按记录到来)的顺序将记录组成一个顺序组织的文件。这样组织的优点是结构简单,缺点是会浪费存储空间。2.顺序带链的组织顺序带链组织允许记录中带有指针(Pointer),这样可以大大节省存储空间。3.带次关键字索引的顺序组织为了适应对多项内容的检索,可以建立索引文件,上述组织可改为带次关键字索引的顺序组织。4.多表组织在次关键字索引中,由于一个次关键字值对应于多个记录值,它们的个数是不固定的,所以对应的指针数目是可变的。这种可变性给管理带来困难,为了解决这个困难,引入了多表组织。多表组织的实现思想比较简单,在索引中多个指针分散存放在每个记录值中,索引项中的指针指向第一个记录,在第一个记录中的指针指向第二个记录等等。5.完全倒排组织在一个记录型中,对主关键字以外的数据项都建立索引,这样的组织称之为完全倒排组织。6.Hash定址组织对于每一个存储记录值存放在数据库的什么地方,可通过对该记录的主关键字值的杂凑函数计算得出。这种组织为Hash定址组织。杂凑函数种类很多,如质数除余法、基数转换法、平方取中法、折叠法、位移法及各位数字分析法等等。关键是如何选择一个杂凑函数,尽可能避免发生碰撞。对于不同的主关键字值通过计算而得到同一个地址的映象,称之为碰撞。7.联系的存储在关系数据库中,通过外来关键字(ForeignKey)来表示概念记录之间的联系。例如,为了表达学生和学校的联系,可以在学生记录中增加外来关键字“学校号”来表示联系。表格表格(或简称表)表示了用户的特定类型(Type)的一些实体。表头由一些属性名(AttributeName)组成,每个属性名对应于一列。在表上属性名必须唯一,不允许重名。表体是由一些行或元组(tuple)、或记录(record)组成。一个元组对应于传统的文件结构中的一个记录,一个记录含有若干个域(field)用以存储属性值(Attributevalue)。一个元组对应于一个“用户”实体的出现(occurrence)。表体中每一行和某一列的交叉点(相当于记录中的域)上保存一个属性值。这个属性值叫做这一行(或这个实体出现)的相应属性值。表体中每一列可以保存的值对应于某种属性类型(TypeofAttribute),也就是说,这一列的属性值只能取这个属性类型的值。某个属性所能取的所有值的集合叫做这个属性的值域(DomainofAttribute)。类型和值域的对应关系是一对多的。一个类型有一个值域,但一个值域可以作为多个类型,基名称不同,但实质上值域一样。实际上,类型是对值域的命名。能唯一标识一个元组的属性称之为关键属性(PrimaryKeyAttribute)或简称为主关键字(PrimaryKey)。主关键字有时是由多个属性组成的,此时的主关键字叫做组合关键字(ConˉcatenatedprimaryKey)。有的时候,表中必须由一些组合的主关键字才能唯一地标识一个元组,也就是说,不存在能作关键字的一个属性。这时为了方便,往往引入一个附加的属性并称之为外来关键字(ForeighKey)来作主关键字。外来关键字为以后检索和查询带来了方便,但也增加了信息冗余。2、UDP的报报文格式每个UDP报文分UDP报头和UDP数据区两部分。报头由四个16位长(8字节)字段组成,分别说明该报文的源端口、目的端口、报文长度以及校验和。3、UDP协议的分层与封装在TCP/IP协议层次模型中,UDP位于IP层之上。应用程序访问UDP层然后使用IP层传送数据报。IP层的报头指明了源主机和目的主机地址,而UDP层的报头指明了主机上的源端口和目的端口。4、UDP的复用、分解与端口UDP软件应用程序之间的复用与分解都要通过端口机制来实现。每个应用程序在发送数据报之前必须与操作系统协商以获得协议端口和相应的端口号。UDP分解操作:从IP层接收了数据报之后,根据UDP的目的端口号进行分解操作。UDP端口号指定有两种方式:由管理机构指定的为著名端口和动态绑定的方式。六、可靠的数据流传输TCP1、TCP/IP的可靠传输服务五个特征:面向数据流、虚电路连接、有缓冲的传输、无结构的数据流、全双工的连接。2、TCP采用了具有重传功能的肯定确认技术作为可靠数据流传输服务的基础。3、为了提高数据流传输过程的效率,在上述基础上引入滑动窗口协议,它允许发送方在等待一个确认之前可以发送多个分组。滑动窗口协议规定只需重传未被确认的分组,且未被确认的分组数最多为窗口的大小。4、TCP功能TCP定义了两台计算机之间进行可靠的传输而交换的数据和确认信息的格式,以及计算机为了确保数据的正确到达而采取的措施。5、TCP连接使用是一个虚电路连接,连接使用一对端点来标识,端点定义为一对整数(host,port)其中host是主机的IP地址,port是该主机上TCP端口号。6、TCP使用专门的滑动窗口协议机制来解决传输效率和流量控制这两个问题,TCP采用的滑动窗口机制解决了端到端的流量控制,但并未解决整个网络的拥塞控制。7、TCP允许随时改变窗口小,通过通告值来说明接收方还能再接收多少数据,通告值增加,发送方扩大发送滑动窗口;通告值减小,发送方缩小发送窗口。8、TCP的报文格式报文分为两部分:报头和数据,报头携带了所需要的标识和控制信息。确认号字段指示本机希望接收下一个字节组的序号;顺序号字段的值是该报文段流向上的数据流的位置,即发送序号;确认号指的是与该报文段流向相反方向的数据流。9、TCP使用6位长的码位来指示报文段的应用目的和内容URG紧急指针字段可用;ACK确认字段可用;PSH请求急近操作;RST连接复位;SYN同步序号;FIN发送方字节流结束。10、TCP的三次握手为了建立一个TCP连接,两个系统需要同步其初始TCP序号ISN。序号用于跟踪通信顺序并确保多个包传输时没有丢失。初始序号是TCP连接建立时的起始编号。同步是通过交换携带有ISN和1位称为SYN的控制位的数据包来实现的。握手可由一方发起也可以双方发起,建立就可以实现双向对等地数据流动,没有主从关系第3章局域网技术主要内容:1、局域网定义和特性2、各种流行的局域网技术3、高速局域网技术4、基于交换的局域网技术5、无线局域网技术及城域网技术一、局域网定义和特性局域网(LocalAreaNetwork)即LAN:将小区域内的各种通信设备互联在一起的通信网络。1、局域网三个特性:(1)高数据速率在0.1-100Mbps(2)短距离0.1-25Km(3)低误码率10-8-10-11。2、决定局域网特性的三个技术:(1)用以传输数据的介质(2)用以连接各种设备的拓扑结构(3)用以共享资源的介质控制方法。3、设计一个好的介质访问控制协议三个基本目标:(1)协议要简单(2)获得有效的通道利用率(3)对网上各站点用户的公平合理。二、以太网EthernetIEEE802.3以太网是一种总路线型局域网,采用载波监听多路访问/冲突检测CSMA/CD介质访问控制方法。1、载波监听多路访问CSMA的控制方案:(1)一个站要发送,首先需要监听总线,以决定介质上是否存在其他站的发送信号。(2)如果介质是空闲的,则可以发送。(3)如果介质忙,则等待一段间隔后再重试。坚持退避算法:(1)非坚持CSMA:假如介质是空闲的,则发送;假如介质是忙的,等待一段时间,重复第一步。利用随机的重传时间来减少冲突的概率,缺点:是即使有几个站有数据发送,介质仍然可能牌空闲状态,介质的利用率较低。(2)1-坚持CSMA:假如介质是空闲的,则发送;假如介质是忙的,继续监听,直到介质空闲,立即发送;假如冲突发生,则等待一段随机时间,重复第一步。缺点:假如有两个或两个以上的站点有数据要发送,冲突就不可避免的。(3)P-坚持CSMA:假如介质是空闲的,则以P的概率发送,而以(1-P)的概率延迟一个时间单位,时间单位等于最大的传播延迟时间;假如介质是忙的,继续监听,直到介质空闲,重复第一步;假如发送被延迟一个时间单位,则重复第一步。2、载波监听多路访问/冲突检测这种协议广泛运用在局域网内,每个帧发送期间,同时有检测冲突的能力,一旦检测到冲突,就立即停止发送,并向总线上发一串阻塞
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度交通行业劳务派遣管理规范范本2篇
- 自愿性与强制性之间-中国农村合作医疗的制度嵌入性与可持续性发展分析
- 临床胸腔闭式引流护理要点
- 陕西省宝鸡市凤翔区2024-2025学年八年级上学期期末质量检测地理试卷(含答案)
- 二零二五年度担保合同标的特性与案例分析3篇
- 二零二五年度商铺租赁合同-含环保材料及绿色装修2篇
- Unit7 How much?(说课稿)-2024-2025学年译林版(三起)英语四年级上册
- 二零二五年度房地产经纪实务培训第二十六讲经纪机构品牌建设合同3篇
- 贵州盛华职业学院《生物医学信号检测与处理》2023-2024学年第一学期期末试卷
- 新疆塔城地区(2024年-2025年小学六年级语文)部编版质量测试(上学期)试卷及答案
- 信息技术咨询服务合同5篇
- 手术室安全核查制度及流程课件
- 合规管理规定(新设合规部)、国有企业合规管理办法
- 人教版小学一年级语文上册全册试卷全套含答案
- T-CECS120-2021套接紧定式钢导管施工及验收规程
- 2024年浙江省单独考试招生文化课考试数学试卷真题(含答案详解)
- 2024-2025学年哈尔滨市平房区四上数学期末调研试题含解析
- EDI工程手册中文
- 中国医院质量安全管理第 2-18 部分:患者服务 介入治疗
- 江苏某高速公路基本表格及用表说明
- 收费站绿通车培训
评论
0/150
提交评论