TCP.IP课程实验报告

TCP.IP课程实验报告
TCP.IP课程实验报告

TCP/IP协议族分析

课程设计

目录

第一章TCP/IP 概述 (3)

1.1 TCP/IP协议族定义 (3)

1.2 TCP/IP协议族的特点 (3)

1.3 TCP/IP协议族的分层 (3)

1.4 TCP/IP协议族的结构 (4)

第二章地址解析协议(ARP)——链路层 (5)

2.1 ARP概述 (6)

2.2 ARP的组成 (6)

2.3 ARP工作原理 (7)

2.4 ARP帧结构 (7)

第三章因特网控制消息协议(ICMP)——网络层 (13)

3.1 ICMP协议简介 (13)

3.2 ICMP消息结构 (14)

3.3 Echo Request和Echo Reply查询消息 (14)

3.4 ICMP各字段分析 (15)

第四章传输控制协议(TCP)——运输层 (18)

4.1 TCP协议简介 (18)

4.2 TCP数据包结构 (19)

4.3 TCP数据包分析 (20)

4.4 TCP三次“握手” (25)

第五章普通文件传输协议(TFTP)——应用层 (27)

5.1 TFTP数据传输模式 (27)

5.2 TFTP会话实例 (28)

总结 (31)

参考文献 (31)

第一章 TCP/IP 协议族概述

1.1 TCP/IP协议族定义

TCP/IP协议族是指一整套数据通信协议, 其名字是由这些协议中的两个协议组成的,即传输控制协议(Transmission Control Protocol ——TCP)和网间协议(Internet Protocol——IP)。虽然还有很多其他协议,但是TCP和IP显然是两个最重要的协议。

1.2 TCP/IP协议族的特点

TCP/IP协议族有一些重要的特点,以确保在特定的时刻能满足一种重要的需求,即世界范围内的数据通信。其特点包括:

●开放式协议标准。可免费使用,且与具体的计算机硬件或操作系统无关。由于它受到如此广泛的支持,因而即使不通过Internet 通信,利用TCP/IP来统一不同的硬件和软件也是很理想的。

●与物理网络硬件无关。这就允许TCP/IP可以将很多不同类型的网络集成在一起,它可以适用于以太网、令牌环网、拨号线、X.25网络以及任何其它类型的物理传输介质。

●通用的寻址方案。该方案允许任何TCP/IP设备唯一的寻址整个网络中的任何其他设备,该网络甚至可以像全球Internet那样大。

●各种标准化的高级协议。可广泛而持续地提供多种用户服务。

1.3 TCP/IP协议族的分层

图1-1 TCP/IP协议族中不同层次的协议

1.3.1. 链路层

有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。

1.3.

2. 网络层

有时也称作互连网层,处理分组在网络中的活动,例如分组的路由选择。在TCP/IP协议族组件中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互连网控制报文协议),以及IGMP协议(Internet组管理协议)。

1.3.3. 运输层

主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族组件中,有两个互不相同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议)。

TCP为两台主机提供高可靠性的数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。

而另一方面,UDP则为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。

这两种运输层协议分别在不同的应用程序中有不同的用途。

1.3.4. 应用层

负责处理特定的应用程序细节。几乎各种不同的TCP/IP实现都会提供下面这些通用的应用程序:

●Telnet:远程登录。

●FTP:文件传输协议。

●SMTP:用于电子邮件的简单邮件传输协议。

●SNMP:简单网络管理协议。

●TFTP:普通文件传输协议

1.4 TCP/IP协议族的结构

在描述TCP/IP时,一般只定义如图1-2所示的4层模型:应用层、主机对主机传输层(即运输层)、网间层和网络访问层(即链路层)。

图1-2 TCP/IP 协议族结构中的各层

在TCP 的应用层中,将数据称为“数据流(stream )”;而在用户数据报协议(UDP )的应用层中,则将数据称为 “报文(message )”。TCP 将它的数据结构称作“段(segment )”。而UDP 将它的数据结构称作“分组(packet )”,网间层则将所有数据看作是一个块,称为“数据报(datagram )”。TCP/IP 使用很多种不同类型的底层网络,每一种都用不同的术语定义它传输的数据,大多数网络将传输的数据称为“分组”或“帧(frame )”。

图1-3 数据结构

第二章 地址解析协议(ARP )——链路层

由于不同层和驻留于这些层上的地址的复杂性,因此必须有一种解析不同的计算机编址策略间差异的方法。地址解析就起了这样的作用,并且使得端设备可以动态地找到本地的硬件地址以便向远端主机传输数据,或者取得必要的逻辑IP 地址和配置参数以便加入到网络。如果没有某种类型的地址解析方法,远端主机间就不能通信。在IP 界,地址解析指的是将一个协议地址转换成一个相应的物理地址或反之,例如将一个IP

地址转换成一个以太网地

址。可以用四种地址解析的方法:

●ARP(地址解析协议)

●RARP(反向地址解析协议)

●BOOTP(引导协议)

●DHCP(动态主机配置协议)

在这四种地址解析协议中,ARP是唯一的一个将网络层地址解析为硬件地址的协议,而RARP、BOOTP和DHCP协议则都是允许一个端设备可以动态地将其硬件地址解析为网络层的逻辑地址。

图2-1 ARP将网络层的逻辑地址解析为本地的硬件地址

2.1 ARP概述

ARP是像以太网和令牌环这样的访问共享、基于广播的网络技术所使用的协议。该协议将节点的转发IP地址解析成对应的MAC(Media Access Control——媒介访问控制)地址。MAC地址也称为物理地址、硬件地址或网卡地址。解析后的MAC地址成为以太网或令牌环报头中的目标MAC地址,IP数据报在媒介上发送时寻到该地址。ARP将因特网层地址(IP地址)解析成网络接口层地址(MAC地址)。

转发IP地址不必与IP数据报的目标IP地址相同,每个发出的IP数据报经路由处理后都变成一个接口和转发IP地址。对于直接在同一子网上传送的目标节点,转发IP地址是数据报的目标IP地址。对于间接传送到远程目标节点,转发IP地址是转发主机所在子网上的路由器的IP地址。

IP独立于任何特定的网络接口层技术。因此,从转发的IP地址判断不出目的地的网络接口层地址。例如,以太网和令牌环MAC地址的长度是6字节,IP地址的长度是4字节。MAC地址在网卡的制造过程中就已分配好了,而IP地址是由网络管理员分配的。对某个具体的IP节点而言,这两种地址的指定方式之间没有任何关系,因此不可能从一个地址判断出另一个地址。ARP是一种基于广播的请求答复协议,提供了将正在转发的IP地址映射为它们相应的MAC地址的动态解析能力。

2.2 ARP的组成

ARP主要由下面两类信息组成:

●转发节点使用ARP请求信息请求某个转发IP的地址的MAC地址。ARP请求信息是一个MAC级广播帧,旨在到达发送ARP请求信息的接口所连接的物理网段上的所有节点。发送ARP请求信息的节点称为ARP请求端。

●用ARP答复信息答复ARP请求端。IP地址与ARP请求信息所请求的IP地址相同的节点发送ARP答复信息。ARP答复信息是一个单播的MAC帧,发送到ARP请求端的目标MAC地址。发送ARP答复信息的节点称为ARP答复端。

由于ARP请求信息是一个MAC级广播包,所有要被解析的转发IP地址都必须能直接从发送ARP请求信息的接口到达(位于同一个子网上)。对于正确的路由表项始终都是这样。

如果一个路由表项包含的转发IP地址无效,从接口无法直接到达该地址,ARP将不能解析这个转发的IP地址。

同一广播域内的所有节点都收到ARP请求信息。广播域是传播广播帧的网络的一部分。集线器、网桥以及Layer 2交换机传播ARP请求信息。但是,IP路由器或Layer 3交换机不传播ARP帧。

2.3 ARP工作原理

ARP协议主要负责把IP地址转换成网卡硬件地址。

ARP完成的这个任务过程是:发送一个广播,这个广播包含了一个指定的IP地址,要求正在使用这个IP地址的主机响应它的硬件地址。使用这个IP的主机侦听到这个广播(局域网中其他的设备也会侦听到),就会给源端反馈一个ARP响应。这个响应不再是网络上的广播,而是直接发送给那个发出请求的主机。

ARP包直接与数据链路层通信,这和IP包是一样的,但是ARP包和IP包是完全独立的,ARP协议ID是0806,而IP使用的是0800,ARP和IP都是直接位于数据链路层的上层,在数据链路层中有个TYPE字段,指明上层协议的类型,ARP为0x0806,IP为0x0800.

ARP包含几个字段,但是其中只有5个字段是用来提供ARP的整体功能:源端的硬件地址,源端的IP地址,目标的硬件地址,目标的IP地址和一个“消息类型”字段,这个消息类型字段用来表明当前ARP包是一个请求还是对请求的一个响应。

当一个设备发送ARP请求时,它要填充4个与地址相关的字段中的3个,即提供自身的硬件地址和IP地址,还提供目标的IP地址(因为目标的硬件地址是不知道的,所以这个字段填充为0)。另外,它会设置消息类型字段来表明当前包是一个ARP包,在局域网上广播这个请求,使得所有设备都能侦听到。一旦主机侦听到针对自己的请求(在ARP请求的IP地址字段中表明),就生成一个响应报文并反馈给请求主机。响应报文包含本地设备的IP 地址和硬件地址,还包含源发送系统的IP地址和硬件地址,这个响应报文会通过消息类型字段来表明当前的报文是一个ARP响应报文,新的ARP响应报文不再是广播发送,会直接传输给源端请求者。

2.4 ARP帧结构

图2-2 广域网技术的ARP帧结构

ARP报文由9个字段组成,包的总大小根据本地网络媒介上使用的网络地址的大小变

表2-1 ARP报文中的字段

根据上面的字段,下面用实际截获的ARP报文来逐个分析ARP报文中的字段。

2.4.1. 硬件类型(Hardware Type)

一个2字节的字段,指出数据链路层所使用的硬件类型。表2-2列出了一些常用的ARP 硬件类型值。一收到ARP帧,IP节点就验证ARP帧的硬件类型是否与接收该ARP帧的接口的硬件类型相匹配。如果不匹配,帧就被默默地扔掉。DIX-Ethernet的地址类型是1,IEEE802.X Ethernet的地址类型是6,ARCnet的地址类型是7,如图2-3所示。

表2-2 ARP硬件类型值

2.4.2. 协议类型(Protocol Type)

一个2字节的字段,指出ARP提供地址解析所使用的协议。ARP协议类型字段使用与Ethernet ⅡEtherType字段相同的值。对于IP地址解析,IP的协议类型字段被设成

EtherType,值是0x0800。一收到ARP帧,IP节点就验证ARP协议类型的值是否是0x0800。如果不是0x0800,帧就会被抛弃。因此,协议类型字段必须定义这个请求所指的高层协议,如图2-4所示。

图2-3

图2-4

2.4.

3. 硬件地址长度(Hardware size)

一个1字节的字段,指出发送端硬件地址和目标硬件地址字段中的硬件地址长度(以字节计)。以太网和令牌环的硬件地址长度字段的值是6。帧中继的硬件地址长度的值一般是2(对于常用的2字节帧中继地址字段)。如图2-5所示。

图2-5

2.4.4 协议长度(Protocol size)

一个1字节的字段,指出发送端硬件地址和目标硬件地址字段中的协议地址长度(以字节计)。对于IP协议,IP地址的长度是4字节。如图2-5所示。

图2-5

2.4.5. 操作(Opcode)

一个2字节的字段,指出ARP帧的类型。如图2-6所示。ARP本身支持两种基本操作:请求与某一协议地址相关联的硬件地址,响应早些时候的请求。同样,RARP也支持请求和响应操作的概念,这和反转ARP是一样的。表2-3列出了常用的ARP操作值。

表2-3 ARP操作值

图2-6

2.4.6. 发送端硬件地址(Sender Mac address)

该字段的长度与硬件地址长度字段的值相同,包含发送ARP帧的节点的硬件或数据链路层地址。对于以太网和令牌环,该字段包含发送ARP节点的MAC地址。如图2-7所示。

图2-7

每个ARP交换过程都包含两个独立的包:源包和对这个包的请求的响应。发送端硬件地址类型字段说明了这个ARP包的发送者。如果这个包是一个请求,那么该字段包含的是发送该请求的设备的硬件地址。如果ARP包是一个响应,那么这个字段包含的是发送该响应的设备的硬件地址。

2.4.7. 发送端协议地址(Sender IP address)

该字段的长度与协议地址长度字段的值相同,包含发送ARP帧的节点的协议地址。对于IP,发送端协议地址字段包含发送ARP帧的节点的IP地址。如图2-8所示。

图2-8

每个ARP交换过程都包含两个独立的包:源包和对这个包的请求的响应。发送端协议地址类型字段说明了这个ARP包的发送者的IP地址。如果这个包是一个请求,那么该字段包含的是发送该请求的设备的IP地址。如果ARP包是一个响应,那么这个字段包含的是发送该响应的设备的IP地址。

图2-9

2.4.8. 目标硬件地址(Target Mac address)

该字段的长度与硬件地址长度字段的值相同,包含发送ARP帧的节点的硬件或数据链路层地址。对于以太网和令牌环,目标硬件地址字段中的ARP请求帧的值是0x00-00-00-00-0 0-00,ARP答复帧则被设成ARP请求帧的MAC地址。如图2-9所示。图2-9中的目标硬件地址设为十六进制的00:00:00:00:00:00,这说明发送者不知道目的地系统的硬件地址(说明ARP请求一个已知IP地址对应的硬件地址)。

2.4.9. 目标协议地址(Target IP address)

该字段的长度与协议地址长度字段的值相同,包含发送ARP帧的节点的协议地址。对于IP,目标协议地址字段中的ARP请求帧被设成被解析的IP地址,ARP答复帧被设成ARP 请求帧的IP地址。如图2-10所示。

图2-10

第三章因特网控制消息协议(ICMP)——网络层

3.1 ICMP协议简介

因特网协议(IP)为IP数据报提供了端对端的数据报传送能力。然而,IP不提供任何工具报告IP数据报在从源端到目的端的传输过程中所遇到的路由错误和传送错误,而是由ICMP代替IP报告错误情况和控制情况。

当协议遇到不能在信息包处理过程中恢复的错误时,它可以废弃有问题的信息包并向源发送主机发送错误通知。这种处理方式称为有提示废弃。ICMP为特定类型的IP路由错误和传送错误提供有提示废弃服务。

ICMP是一个可扩展的协议,它也为自动主机配置提供IP连通性检查和帮助功能。

ICMP并不使IP变得更可靠。IP和ICMP中都没有工具提供排序或重发出错的IP数据报的功能。ICMP消息以IP数据包形式发送出去并不可靠,并且尽管ICMP会报告错误,但

对原发送主机如何处理收到的错误没有要求。直到实施TCP/IP后,源发送主机才开始解释收到的错误并对自己的行为作相应调整。

ICMP消息只为IP数据报的第一个帧发送。对于ICMP错误消息遇到的问题或广播数据报或多路广播数据报遇到的问题则不发送ICMP消息。

3.2 ICMP消息结构

ICMP Echo Request(Reply)报文结构如图3-1所示,它包括类型、代码、校验和、标识符和序号(亦称序列号),后面是ICMP的数据。其中类型占8位,校验和占16位,这三个字段共32位,在任何ICMP报文中是不变的,后面字段结构根据不同的ICMP类型和代码有所不同,如图3-2所示,为ICMP通用格式。

图3-1

图3-2

3.3 Echo Request和Echo Reply查询消息

ICMP提供了两个查询消息Echo Request和Echo Reply,这两个查询消息放在一起以测试网络上的某远程系统是否在工作。ICMP Echo Request查询消息是用户发送到目的主机的探测包,并由ICMP Echo Reply查询消息来响应。

图3-3和图3-4显示互联网络上两个主机之间一个简单的ping。其中主机113.14.63.144在ping主机220.181.111.147,它们之间通过发送ICMP Echo Request和ICMP Echo Reply来完成。

图3-3 ICMP Echo Request

图3-4 ICMP Echo Reply

3.4 ICMP各字段分析

ICMP消息中的各字段定义如下:

3.4.1. 类型(Type)字段:8位

表明ICMP消息的类型(Echo Request或Echo Reply等)。表3-1列出了定义的ICMP 类型。由表3-1可知,图3-5是个Echo Request,所以Type值是8。

3.4.2. 代码(Code)字段:8位

表明ICMP消息类型中特定的ICMP消息。如果一种ICMP类型中只有一条ICMP消息,则“代码”字段设置为0。“ICMP类型”和“代码”共同确定一条特定的ICMP消息。因为图3-6并没出错,所以图3-6中的Code = 0。如图3-6所示。

3.4.3. 校验和(Checksum)字段:16位

是一个覆盖ICMP消息的16位校验和。ICMP使用与IP相同的校验和算法计算IP报头的检验和。如图3-7所示。

表3-1

图3-5

图3-6

图3-7

前面3个字段是所有ICMP报文共有的,下面的字段对于本实验是针对ping应用来讲。

(1)Identifier字段

Identifier字段标识本ICMP进程,如图3-8所示,这个字段长度为16位。

图3-8

(2)Sequence字段

用于判断回应应答数据包,如图3-9所示。

(3)Data字段

ICMP Data字段最大允许的长度为1472。在使用ping命令时,Windows下默认发送的Data是32字节,如图3-10所示。如果发送一个350字节大小的ping数据,这时的Data部分就是350字节了。

3.4.4. 选项数据:(不定长)

每种ICMP类型的可选数据。

图3-9

图3-10

第四章传输控制协议(TCP)——运输层

应用程序用来在IP网络上相互之间传输的标准传输协议有两个:一个是用户数据包协议(UDP),它提供的服务轻便但不可靠;另外一个是传输控制协议(TCP),它提供的是可靠、可控制的传输服务。大部分Internet应用程序都使用TCP,因为它的嵌入可靠性和流控制服务可确保数据不会丢失和被破坏。

4.1 TCP协议简介

TCP是完全成型的传输层协议,可以提供可靠的数据传输服务以及将TCP封装数据传递给应用层协议的方法。TCP有以下特征:

●面向连接:在可以传输数据前,两个应用层过程必须使用TCP连接的建立过程正式地协商TCP连接。使用TCP连接终止过程正式关闭TCP连接。

●完全双向:对于每一个TCP层,TCP连接都包括两个逻辑管道:一个传出管道和一

个传入管道。使用适当的网络接口层技术,数据可以同时流出传出管道和流入传入管道。TCP报头包含传出数据和确认输入数据的序列号。

●可靠:按顺序发送TCP连接上的数据,并将从接收方得到积极的确认。没有得到确认的段将重传。在接收方,重复段被放弃,到达的失序段还原为正确的序列。TCP校验和始终用于验证TCP分段的比特级完整性。

●字节流:TCP将在传入和传出逻辑管道上传送的数据视为连续的字节流。每个TCP 报头中的序列号和确认号都以字节界限确定。TCP不知道字节流内的记录或消息边界。应用层协议必须提供输入字节流的正确分析。

●发送方和接收方侧流控制:为了避免一次发送太多的数据而阻塞IP网络的选定路线,TCP执行发送方侧流控制以逐渐调整一次发送的数据量。为了避免让发送方发送接收方无法缓冲的数据,TCP执行接收方侧流控制,此控制能表示出接收方缓冲区中的剩余空间。

●应用层数据段:TCP将对从应用层过程获得的数据段,以适合在网络接口层链接上转送的IP数据报。TCP双方将交换都可接收的最大段,并使用“路径最大传输单位(PMTU)”发现来调整TCP最大段的大小。

●一对一传送:TCP连接是两个应用层协议之间的逻辑点对点电路。TCP不提供一对一的传送服务。

当应用层协议需要可靠的数据传送服务、并且应用层协议自己并不提供这样的服务时,一般使用TCP。

4.2 TCP数据包结构

TCP报头的长度可以改变,并包含如图4-1所示的字段。当TCP选项不存在时,TCP 报头长度为20个字节。

图4-1

TCP报头中的字段定义为:

●源端口号:表示发送TCP分段的源应用层协议的2字节的字段。IP报头中的源IP 地址和TCP报头中源端口的组合提供了一个套接字——发送段的全球唯一的重要地址。

●目的端口号:表示目的地应用层协议的2字节字段。IP报头中的目的IP地址和TCP 报头中目的端口的组合提供了一个套接字——端发送到的全球唯一的有意义地址。

●序列号和确认号:长度共32位。序列号和确认号是TCP实现可靠连接的关键。当建立一个TCP连接时,发送方主机发出一个随机的初始化序列号给接收方,接收方将其加1后送回发送方,这意味着发送方可以发送下一个字节了。一旦数据开始传送,序列号和确

认号将跟踪已发送了的那些数据。

●首部长度:长度为4位。以字节为单位表示TCP头的大小。头长度随可变长度选项字段而改变,通过这个字段同时可以判断该TCP数据段的开始位置和结束位置。

●保留:留作将来使用的6位字段。发送方将这些位数设置为0。

●标志:表示6个TCP标志的6位字段。6个TCP标志是URG(紧急)、ACK(确认)、PSH(推)、RST(重置)、SYN(同步)和FIN(完成)。

●窗口大小:2字节字段,此字段告诉接收这个TCP报文的接收端自己还可以接收多少数据字节。它大致对应于滑动窗口协议的窗口尺寸。反过来,接收TCP报文的接收端可以使用此字段来改变发送端窗口的大小。窗口最大为65535字节。

●校验和:为TCP分段(TCP报头和段)提供位级完整性检验的2字节字段。用于传输层差错检测。校验和算法将TCP段的内容转化为一系列16位的整数,并将它们相加。接收方根据校验和判断传输是否正确。

●紧急指针:表示紧急数据在段中位置的2字节字段。紧急指针所指的一段数据不必等待缓冲数据的积累,直接发送到对方。

●选项+填充:可以将一个或多个TCP选项添加到TCP报头,但必须以4字节的增量完成,以使TCP报头大小能够用“数据偏移”字段表示。

4.3 TCP数据包分析

4.3.1. Source port

它指的是应用程序所用的16位TCP端口号。如图4-2所示。

图4-2

4.3.2. Destination port

《数据库技术与应用 》实验报告

《数据库技术与应用》上机实验报告 目录: 一、概述 二、主要上机实验内容 1.数据库的创建 2.表的创建 3.查询的创建 4.窗体的创建 5.报表的创建 6.宏的创建 三、总结 一、概述 (一)上机内容: 第七周:熟悉Access界面,数据库和表的创建,维护与操作 1. 熟悉Access的启动,推出,界面,菜单,工具栏等; 2. 练习使用向导创建数据库、创建空数据库; 3. 练习创建表结构的三种方法(向导、表设计器、数据表)、表中字段属性设置; 4. 练习向表中输入不同类型的数据; 5. 练习创建和编辑表之间的关系; 6. 练习表的维护(表结构、表内容、表外观) 7. 练习表的操作(查找、替换、排序、筛选等) 第八周:练习创建各种查询 1.选择查询(单表、多表、各种查询表达式) 2.参数查询 3.交叉表查询 4.操作查询(生成查询、删除查询、更新查询、追加查询) 第十周:练习创建各种类型的窗体 1.自动创建纵栏式窗体和表格式窗体; 2.向导创建主|子窗体

3.图表窗体的创建 4.练习通过设计器创建窗体 5.练习美化窗体 第十三周:练习创建各种类型的报表 1.自动创建纵栏式报表和表格式报表; 2.向导创建报表(多表报表、图表报表、标签报表) 3.练习通过设计视图创建报表(主|子报表、自定义报表) 4.练习在报表中添加计算字段和分组汇总数据 第十五周:综合应用 1.了解Access数据库系统开发的一般方法; 2.课程内容的综合练习; 3.编写上机实验报告、答疑 (二)上机完成情况 第七周:熟悉Access界面,数据库和表的创建,维护与操作 完成了创建表,向表中输入不同类型的数据,创建和编辑表之间的关系,进行了表的维护,修改了表的结构、内容、外观,最后进行了表的操作,查找、替换、排序、筛选等。 已完成 第八周:练习创建各种查询 练习选择查询、参数查询、交叉表查询,然后练习并操作查询,生成查询、删除查询、更新查询、追加查询等。 已完成 第十周:练习创建各种类型的窗体 自动创建纵栏式窗体和表格式窗体,向导创建主|子窗体和图表窗体,练习通过设计器创建窗体,美化窗体。 基本完成 第十三周:练习创建各种类型的报表 自动创建纵栏式报表和表格式报表,向导创建报表,练习通过设计视图创建报表,在报表中添加计算字段和分组汇总数据。 已完成 第十五周:综合应用

最新数据库管理系统实验报告含答案

武汉纺织大学《最新数据 库管理系统》课程实验报告 班级: _______姓名:实验时间:年月日指导教师:_______ 一、实验目的 1、通过实验,使学生全面了解最新数据库管理系统的基本内容、基本原理。 2、牢固掌握SQL SERVER的功能操作和Transact-SQL语言。 3、紧密联系实际,学会分析,解决实际问题。学生通过小组项目设计,能够运用最新数据库管理系统于管理信息系统、企业资源计划、供应链管理系统、客户关系管理系统、电子商务系统、决策支持系统、智能信息系统中等。 二、实验内容 1.导入实验用示例数据库: f:\教学库.mdf f:\教学库_log.ldf f:\仓库库存.mdf f:\仓库库存_log.ldf 1.1 将数据库导入 在SqlServer 2005 导入已有的数据库(*.mdf)文件,在SQL Server Management Studio 里连接上数据库后,选择新建查询,然后执行语句 EXEC sp_attach_db @dbname = '教学库', @filename1 = 'f:\教学库.mdf', @filename2 = 'f:\教学库_log.ldf' go use [教学库] EXEC sp_changedbowner 'sa' go EXEC sp_attach_db @dbname = '仓库库存',

@filename1 = 'f:\仓库库存.mdf', @filename2 = 'f:\仓库库存_log.ldf' go use [仓库库存] EXEC sp_changedbowner 'sa' go 1.2 可能出现问题 附加数据库出现“无法打开物理文件"X.mdf"。操作系统错误5:"5(拒绝访问。)"。(Microsoft SQL Server,错误: 5120)”。 解决:找到要附加的.mdf文件-->右键-->属性-->安全-->选择当前用户-->编辑-->完全控制。对.log文件进行相同的处理。 2.删除创建的数据库,使用T-SQL语句再次创建该数据库,主文件和日志文件的文件名同上,要求:仓库库存_data最大尺寸为无限大,增长速度为20%,日志文件初始大小为2MB,最大尺寸为5MB,增长速度为1MB。 CREATE DATABASE仓库库存 (NAME = '仓库库存_data', FILENAME = 'F:\仓库库存_data.MDF' , SIZE = 10MB, FILEGROWTH = 20%) LOG ON (NAME ='仓库库存_log', FILENAME = 'F:\仓库库存_log. LDF', SIZE = 2MB, MAXSIZE = 5MB, FILEGROWTH = 1MB) 2.1 在数据库“仓库库存”中完成下列操作。 (1)创建“商品”表,表结构如表1:

数据库设计性实验报告

数据库系统概论实验报告 一、实验题目 小型CMS博客系统的设计与实现 二、实验要求 利用学习的数据库设计的方法和步骤,为选择的应用设计数据库、必要的索引、视图、编写应用程序。 三、总的设计思想,及环境语言、工具等 1、建立系统的目的,系统总体概况的介绍 进行博客系统开发的主要目的是为了提高自己的实践能力、学会自主开发独立程序,学会将所学知识应用于实践中,并在实践中不断学习。在大学里本人所学的知识大多数是从课本上得到的,而这次是要通过动手来实践,实习对本人来说是一次很好的锻炼。 本人所要实现的是一个小型CMS博客系统,用户在注册后可以实现在后台操作数据库更改网站标题、版本号、管理博客、管理日志分类等,在前台可以查看已公开的博客等。本次课程设计初步目标是实现博客的基本功能,在这个基础上对功能进行扩充。 2、选用的语言 利用WINDOWS XP结合DREAMWEAVER和access搭建ASP的环境平台,语言采用强大的vbscript。采用了IIS5.1。 3、需求分析的方法和结果 通过对现行博客系统的基本功能进行调查,明确了CMS博客系统由查看博客、发表博客、回复博客、管理员通过后台管理登录管理日志分类、修改删除博客、发表新文章、设置主页信息等等。用户对系统的描述如下。 a)用户基本功能 1)匿名用户可以查看用户公开的博客,并且可以通过注册申请成为正式用户。 b)管理员基本功能 1)发表新文章。 2)管理文章、如添加删除等。 3)管理分类,如添加、删除、重命名。 4)设置主页上显示的博客条数或者版本号。 数据流图

数据库逻辑模型 将图书馆管理系统的E-R图转换为关系数据库的数据模型,其关系模式为: 博客用户(用户,密码,邮箱),其中用户为主码; 版本信息(版本ID,URL,主页底部信息,副标题),其中版本ID为主码; 日志分类信息(编号,分类名称,基本表述(在鼠标放到分类上后显示的小标签)) 将CMS系统的数据库名定为“SimpleCMS” 数据库模式的规范化 各表的函数依赖集: F博客用户={用户→密码}; F类别={分类ID→名称,分类ID→基本描述}; F版本信息={编号→网站名,编号→网址,编号→底部信息,编号→副标题信息}; 上述关系模式中不存在对非码依赖的表达式,所有的非主属性对码完全并直接依赖,由此证明,博客数据库中各表均服从BCNF,其规范化程度较高,数据库设计合理。 4、E-R图

数据库系统设计实验报告

数据库系统设计实验报告 ――教务管理系统 学院:计算机科学与技术 专业:软件工程 班级: 学号: 姓名: 指导老师:

一、概述 项目背景:数据库课程设计 系统名称:教务管理系统 开发环境:SQL Server 2008 二、需求分析 1、系统的概述 ?一个学校由很多个学院组成,每个学院有多个专业,每个专业有1个或 者多个班级。一个学生只属于1个班级,学生有姓名、学号、性别、身 份证号、入学时间等属性。 ?每个专业的每个年级都有对应的教学计划。教学计划指定了这个专业这 个年级的某门课程在那个学期上,学分、学时是多少。每个学院都设置 有1个教务秘书,这些信息都由教务秘书进行输入。每个院系的课程都 有自己的唯一编码,比如计算机系上的C语言,和电子系上的C语言, 虽然都是同一门课,但是编码是不同的。但是同一个院系中的相同的课 程,课程代码是唯一的。比如计算机学院的07计算机软件专业和计算机 学院的07计算机科学专业都有C语言课程,这两门课程的课程代码是相 同的。 ?教务秘书在每个学期的中间时刻,为下一个学期进行排课,排课的内容 根据教学计划,比如08计算机软件专业的学生,在2009-2010年第2 学期上的课程,可以通过教学计划得知要上什么课程,然后对这些课程 安排上课教师(比如陈越)、上课时间(比如星期2,第1-2节)和地点 (理工楼234),有的课程是单周上,有的双周,也有是每周都上的。 ?在每个学期期末,学生登录到网站上选择下一个学期需要上的课,选择 的时刻,可以选择是否需要教材,如果某门课程的人数选满了,则不能 给任何学生选择了。 ?学生根据选择的课程进行上课,参加考试。每个老师可以用自己的用户 名和密码登陆网站,选择这个学期自己所教的课程(一个老师可以上多 个班级的课程),输入这个班级的成绩,成绩分为期末考试成绩、期中考 试成绩、平时成绩、实验成绩以及总评成绩。这些成绩都需要进行存储。 ?为了保证安全性,老师输入的成绩并不是直接放到最终的成绩表中,而 是放在一个临时的表中,只有当教务秘书审核过后,才导入到最终的成 绩表中。

MySQL数据库技术实验报告模板

MySQL数据库技术实验报告 系别班级学号姓名地点 地点机房课程名称MySQL数据库技术实验名称实验1 MySQL的使用 实验过程 目的要求: (1)掌握MySQL服务器安装法 (2)掌握MySQL Administrator的基本使用法 (3)基本了解数据库及其对象 实验准备: (1)了解MySQL安装的软硬件要求 (2)了解MYSQL支持的身份验证模式 (3)了解MySQL各组件的主要功能 (4)基本了解数据库、表、数据库对象 实验容: 1.安装MySQL服务器和MySQL界面工具 安装MySQL界面工具。(插入安装好的界面工具截图即可) 2.利用MySQL客户端访问数据库 (1)打开开始,程序,MySQL,MySQL server 5.1,MySQL command line client,进入MySQL客户端界面,输入管理员密码登录。 (2)在客户端输入“help”或“\h”,查看MySQL帮助菜单,仔细阅读帮助菜单的容。

(3)实用show语句查看系统自动创建的数据库。 (4)实用USE语句选择mysql数据库为当前数据库。

(5)使用SHOW TABLES 语句查看当前数据库中的表。 (6)使用了一条SELECT语句查看mysql数据库中存储用户信息表的user的容。 (7)使用use语句将当前的数据库设定为information_schema,并查看数据库数据库中有哪些表。<图表见下页>

实验小结: 在安装MySql中有时可能不能安装不成功,那么卸载时,会存在删除不完全的情况。导致再次安装时依然不成功。 在对某个数据库进行操作之前,必须先选中该数据库。 在MySql安装过程中,注意修改字符集为gb2312或gbk, 以支持中文信息输入。

vf课程设计实验报告模板

vf 课程设计实验报告模板 经济管理学院 学生信息管理系统的设计与实现 09年12 月28 日 、课程设计的目的和意义 当今,人类正在步入一个以智力资源的占有和配置,知识生产、分配和使用为最重要因素的知识经济时代,为了适应知识经济时代发展的需要,大力推动信息产业的发展,我们通过对学生信息管理系统的设计,来提高学生的操作能力,及对理论知识的实践能力,从而提高学生的基本素质,使其能更好的满足社会需求。 学生信息管理系统是一个简单实用的系统,它是学校进行学生管理的好帮手。 此软件功能齐全,设计合理,使用方便,适合各种学校对繁杂的学生信息进行统筹管理,具有严格的系统使用权限管理,具有完善的管理功能,强大的查询功能。它可以融入学校的信息管理系统中,不仅方便了学生信息各方面的管理,同时也为教师的管理带来了极大地便利。 我们进行本次课程设计的主要目的是通过上机实践操作,熟练掌握数据库的设 计、表单的设计、表单与数据库的连接、SQL语言的使用和了解它的功能:数据定 义、数据操纵、数据控制,以及简单VF程序的编写。基本实现学生信息的管理, 包括系统的登录、学生信息的录入、学生信息的浏览、学生信息的查询、学生信息的修改和学生信息的删除,并对Visual FoxPro6.0 的各种功能有进一步的了解,为我们更进一步深入的学习奠定基础,并在实践中提高我们的实际应用能力,为我们以后的学习和工作提供方便,使我们更容易融入当今社会,顺应知识经济发展的趋势。 - 1 -

、系统功能设计 通过该系统可以基本实现学生信息的管理,包括系统的登录、学生信息的录 入、学生信息的浏览、学生信息的查询、学生信息的修改和学生信息的删除。系统 功能模块如下图所示。 学生信息管理系统主界面 登录 管理 学学学学学 生生生生生 信信信信信 息息息息息 录查浏修删 入询览改除 三、系统设计内容及步骤 3.1创建项目管理文件 1.启动foxpro 系统,建一个项目管理器,命名为“学生管理”。 哑 目f ■ 也 电 岂同左 矣 氏H. 0 存 JI 蛋誤曾

数据库课程设计实验报告一

一、需要实现得功能 1、1录入学生基本信息得功能 学生基本信息主要包括:学号、姓名、性别、年龄、出生地、专业、班级、总学分,在插入时,如果数据库则已经存在该学号,则不能再插入该学号。 1、2修改学生基本信息得功能 在管理员模式下,只要在表格中选中某个学生,就可以对该学生信息进行修改。 1、3查询学生基本信息得功能 可使用“姓名”对已存有得学生资料进行查询。 1、4删除学生基本信息得功能 在管理员模式下,只要选择表格中得某个学生,就可以删除该学生. 1、5用户登陆 用不同得登录权限可以进入不同得后台界面,从而实现权限操作。 1、6用户登陆信息设置 可以修改用户登陆密码 二、设计得目得 课程设计就是学习完该课程后进行得一次较全面得综合练习。其目得在于通过实践加深学生对面向对象程序设计得理论、方法与基础知识得理解,掌握使用Java语言进行面向对象设计得基本思路与方法;加强学生研发、调试程序得能力;培养学生分析、解决问题得能力;提高学生得科技论文写作能力。 三、总体设计 3、1功能图

3、2 Use Case图

3、3系统执行流程图 3、4、数据库设计

主要就是E-R 图与数据库二维表得设计 3、4、1数据库E-R 模型 3、4、2数据库关系模型—-二维表 学生表(s tu dent ) 字段 数据类型 说明 st uId nvarc har(30) 学号 s tuName n varchar(30) 姓名 st uSe x nva rchar(30) 性别 stuAg e i nt 年龄 s tuJg nvar char (30) 籍贯 stuZy n var cha r(30) 专业 cl as sId nvarch ar(30) 班号 stuSour se numeric(5,2) 总学分 学号 姓名 性别 年龄 出生地 专业 班级 总学分 登陆用户管理 账号 密码 职位 学 生

MySQL数据库技术实验报告

MySQL数据库技术 实验报告 系别班级学号姓名地点 计算机科学系计科1102常赵有C111机房 课程名称MySQL数据库技术实验名称实验1 MySQL的使用 实验过程

目的要求: (1)掌握MySQL服务器安装方法 (2)掌握MySQL Administrator的基本使用方法 (3)基本了解数据库及其对象 实验准备: (1)了解MySQL安装的软硬件要求 (2)了解MYSQL支持的身份验证模式 (3)了解MySQL各组件的主要功能 (4)基本了解数据库、表、数据库对象 实验内容: 1.安装MySQL服务器和MySQL界面工具 安装MySQL界面工具。(插入安装好的界面工具截图即可) 2.利用MySQL客户端访问数据库 (1)打开开始,程序,MySQL,MySQL server 5.1,MySQL command line client,进入MySQL客户端界面,输入管理员密码登录。 (2)在客户端输入“help”或“\h”,查看MySQL帮助菜单,仔细阅读帮助菜单的内容。

(3)实用show语句查看系统自动创建的数据库。 (4)实用USE语句选择mysql数据库为当前数据库。 (5)使用SHOW TABLES 语句查看当前数据库中的表。

(6)使用了一条SELECT语句查看mysql数据库中存储用户信息表的user的内容。 (7)使用use语句将当前的数据库设定为information_schema,并查看数据库数据库中有哪些表。

实验小结: 在安装MySql中有时可能不能安装不成功,那么卸载时,会存在删除不完全的情况。导致再次安装时依然不成功。 在对某个数据库进行操作之前,必须先选中该数据库。 在MySql安装过程中,注意修改字符集为gb2312或gbk, 以支持中文信息输入。

数据库实验报告

北京邮电大学国际学院 _11-12_学年第_二_学期实验报告 课程名称:数据库技术与应用 项目名称:基本SOL语句的用法 项目完成人: 姓名:武学超学号: 指导教师:____ ____韩祥斌_____________ 日期: 2012 年 3 月 16 日

目录 一、实验目的............................................. 错误!未定义书签。 1. 结合数据库技术与应用教学的基本知识,理解并掌握基本SQL语句的用法。错误! 未定义书签。 二、实验内容............................................. 错误!未定义书签。 1. 回顾基本SQL语句的语法............................... 错误!未定义书签。 2. 回顾MySQL的基本用法................................. 错误!未定义书签。 3. 初始化数据库,将文件中的内容复制并粘贴到MySQL-Front 的SQL编辑器中,然 后点击“运行”........................................... 错误!未定义书签。 4. 了解实验用例的背景,并进行如下SQL语句的训练:....... 错误!未定义书签。 三、实验环境............................................. 错误!未定义书签。 1. 32位Xp系统下 Mysql 程序(命令行).................. 错误!未定义书签。 四、实验结果............................................. 错误!未定义书签。 1. 问题讨论............................................. 错误!未定义书签。 2. 试验心得............................................. 错误!未定义书签。

实验报告模板

实验报告 (2013 / 2014 学年第二学期) 课程名称Java语言程序设计 实验名称综合图形界面程序设计 实验时间2014年5月5日 指导单位计算机学院软件教学中心 指导教师薛景 学生姓名臧玉付班级学号12001037 计算机科学与技术学院(系)计算机学院专业 (计算机通信)

2、编写一个简单的计算器软件,实现简单的四则运算。(请在下方空白处填写本程序的全部 ..程序代码及软件界面截图) import java.awt.BorderLayout; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTextArea; import javax.swing.JTextField; public class test extends JFrame { private final int BUTTON_WIDTH=50; private final int BUTTON_HEIGHT=40; JButton one=new JButton("1"); JButton two=new JButton("2"); JButton three=new JButton("3"); JButton four=new JButton("4"); JButton five=new JButton("5"); JButton six=new JButton("6"); JButton seven=new JButton("7"); JButton eight=new JButton("8"); JButton nine=new JButton("9"); JButton zero=new JButton("0"); JButton DOT=new JButton("."); JButton ADD=new JButton("+"); JButton SUB=new JButton("-"); JButton MUL=new JButton("*"); JButton DIV=new JButton("/"); JButton EQU=new JButton("=");

《数据库原理》课程实验报告.

2013-2014学年第一学期《数据库原理》 课程实验报告 学号: 20112723 学生姓名:林苾湲 班级:软件工程2011-2 教师:陶宏才 辅导老师:张建华刘宝菊 2013年12月

实验一:表及约束的创建1.1 实验目的与内容 目的:创建数据表、添加和删除列、实现所创建表的完整性约束。 内容:11-2、11-26~33。 报告:以11-31作为实验一的报告。 1.2 实验代码及结果 1.2.1 实验代码 (1)CREATE TABLE orderdetail20112723 ( Order_no char(6) PRIMARY KEY CONSTRAINT Order_no_constraint20112723 CHECK(Order_no LIKE'[A-Z][A-Z][0-9][0-9]'), Cust_no char(6) NOT NULL, P_no char(6) NOT NULL, Order_total int NOT NULL, Order_date datetime NOT NULL, CONSTRAINT person_contr20112723 FOREIGN KEY (P_no) REFERENCES person20112723(P_no) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT customer_contr20112723 FOREIGN KEY (Cust_no) REFERENCES customer20112723(Cust_no) ON DELETE CASCADE ON UPDATE CASCADE, ) (2)ALTER TABLE salary20112723 ADD CONSTRAINT Pno_FK20112723 FOREIGN KEY(P_no) REFERENCES person20112723(P_no) 1.2.2 实验结果 (1)

实验报告模版

实验报告 实验项目名称____________________________ 实验室__________________________________ 所属课程名称______________________________ 实验类型_________________________________ 实验日期__________________________________ 班级__________________________ 学号__________________________ 姓名__________________________ 成绩__________________________

实验概述: 【实验目的及要求】【实验原理】

【实验环境】(使用的软硬件) 实验内容: 【实验方案设计】

【实验过程】(实验步骤、记录、数据、分析) 【结论】(结果) 【小 结】

指导教师评语及成绩: 成绩: 指导教师签名: 批阅日期: 附件: 实验报告说明 1实验项目名称:要用最简练的语言反映实验的内容。 2 ?实验类型:一般需说明是验证型实验还是设计型实验、综合型实验或其他实验。 3 ?实验目的与要求:目的要明确,要抓住重点。 4 ?实验原理:简要说明本实验项目所涉及的理论知识。

5.实验环境:实验用的软硬件环境(配置)。 6.实验方案设计(思路、步骤和方法等):这是实验报告极其重要的内容,概括整个实验过程。 对于验证型实验,要写明依据何种原理、何仲操作方法进行实验,并写明需要经过哪几个步骤。 对于设计型和综合型实验,在上述内容基础上还应该画出流程图、设计思路和设计方法,再配以相应的文字说明。 7.实验过程(实验中涉及的记录、数据、分析):写明具体上述实验方案的具体实施,包括实验过程中的记录、数据和相应的分析。 8.结论(结果):即根据实验过程中所见到的现象和测得的数据,做出结论。 9.小结:对本次实验的心得体会、思考和建议。 10.指导教师评语及成绩:指导教师依据学生的实际报告内容,用简练语言给出本次实验报告的评价和价值。

数据库管理系统实验报告含答案

xxxx大学《数据库管理系统》课程实验报告 班级: _______姓名:实验时间:年月日指导教师:_______ 一、实验目的 1、通过实验,使学生全面了解最新数据库管理系统的基本内容、基本原理。 2、牢固掌握SQL SERVER的功能操作和Transact-SQL语言。 3、紧密联系实际,学会分析,解决实际问题。学生通过小组项目设计,能够运用最新数据库管理系统于管理信息系统、企业资源计划、供应链管理系统、客户关系管理系统、电子商务系统、决策支持系统、智能信息系统中等。 二、实验内容 1.导入实验用示例数据库: f:\教学库.mdf f:\教学库_log.ldf f:\仓库库存.mdf f:\仓库库存_log.ldf 1.1 将数据库导入 在SqlServer 2005 导入已有的数据库(*.mdf)文件,在SQL Server Management Studio 里连接上数据库后,选择新建查询,然后执行语句 EXEC sp_attach_db @dbname = '教学库', @ = 'f:\教学库.mdf', @ = 'f:\教学库_log.ldf' go use [教学库] EXEC sp_changedbowner 'sa' go EXEC sp_attach_db @dbname = '仓库库存', @ = 'f:\仓库库存.mdf',

@ = 'f:\仓库库存_log.ldf' go use [仓库库存] EXEC sp_changedbowner 'sa' go 1.2 可能出现问题 附加数据库出现“无法打开物理文件"X.mdf"。操作系统错误5:"5(拒绝访问。)"。(Microsoft SQL Server,错误: 5120)”。 解决:找到要附加的.mdf文件-->右键-->属性-->安全-->选择当前用户-->编辑-->完全控制。对.log文件进行相同的处理。 2.删除创建的数据库,使用T-SQL语句再次创建该数据库,主文件和日志文件的文件名同上,要求:仓库库存_data最大尺寸为无限大,增长速度为20%,日志文件初始大小为2MB,最大尺寸为5MB,增长速度为1MB。 CREATE DATABASE仓库库存 (NAME = '仓库库存_data', = 'F:\仓库库存_data.MDF' , SIZE = 10MB, = 20%) LOG ON (NAME ='仓库库存_log', = 'F:\仓库库存_log. LDF', SIZE = 2MB, MAXSIZE = 5MB, = 1MB) 2.1 在数据库“仓库库存”中完成下列操作。 (1)创建“商品”表,表结构如表1: (2)创建“仓库”表,表结构如表2: 表2 仓库表

实验一 数据库模式设计及建立实验报告

长春大学计算机学院科学与技术专业 数据库原理实验报告 实验名称:实验一数据库模式设计及建立 班级:姓名:学号: 实验地点:日期: 一、实验目的: 1.了解SQL SERVER 2005/2008系统或KingBase ES V7.0的使用; 2.基本掌握SQL的数据定义。 二、实验内容、要求和环境: 【实验要求】 注:将完成的实验报告重命名为:班级+学号+姓名+(实验一),(如:041540538张三(实验一)),提交到SPOC学堂。 1.实验课要携带教材、学习辅导、老师下发的实验报告文档等。 2.课前要对实验内容和步骤部分进行预习。 3.将本次实验所建的数据库做好备份,以备以后实验使用。 【实验环境】 1.SQL SERVER 2005/20085; 1.KingBase ES V7.0 ,人大金仓。 【实验内容和步骤】 1.熟悉SQL SERVER 2005/2008系统。 (1)启动“SQL Server Managemet Studio”,新建数据库和关系(表) ①鼠标单击“开始/所有程序/Microsoft SQL server 2008/SQL Server Managemet Studio”启动“SQL Server Managemet Studio”,SQL Server Managemet Studio(SSMS)是一个集成环境,用于访问、配置、控制、管理和开发SQL Server 的所有组件,SSMS将大量图形工具与丰富的脚本编辑器相结合,使各种技术水平的开发人员和管理员都可以访问SQL Server; ②在“SQL Server Managemet Studio”中左窗口“对象资源管理器”中,单击“SQLEXPRESS”的左侧“+”,弹出下拉菜单; ③在上一步的下拉菜单中,鼠标右键单击“数据库”,在弹出的菜单中选择“新建数据库”,在弹出的对话框中,输入数据库名,同时可以进行存储位置的设置; ④在数据库文件夹下,出现新建的数据库文件夹; ⑤点击所建数据库文件名左侧的“+”,弹出下拉菜单; ⑥在上一步弹出的下拉菜单中,鼠标右键单击“表”,弹出下拉菜单,单击“新建表”即可在此数据库文件夹中建立关系(表)了。 (2)在“对象资源管理器”的上方有一个“新建查询”图标,单击“新建查询”,可使用SQL 语言进行对关系的操作 ①单击“新建查询”后,在“对象资源管理器”窗口上部出现一个工具栏,右侧弹出一个窗

数据库课程实验报告

课程实验报告课程名称:数据库系统原理 专业班级:CS1110 学号:U201114468 姓名:梅超 指导教师:杨茂林 报告日期:2014年6月23日 计算机科学与技术学院

目录 1实验目的与内容 (1) 1.1实验目的 (1) 1.2实验内容 (1) 2系统分析与设计 (2) 2.1系统分析 (2) 2.2系统设计 (3) 2.2.1数据库设计 (3) 2.2.2功能模块设计 (4) 3系统实现 (5) 3.1数据库的实现 (5) 3.2模块功能实现 (6) 3.2.1开发环境 (6) 3.2.2模块实现 (6) 3.2.2.1系统登录模块设计 (6) 3.2.2.2系统注册模块设计 (9) 3.2.2.3数据库主界面设计 (11) 3.2.2.4学生信息查询模块设计 (16) 3.2.2.5学生信息插入模块设计 (19) 3.2.2.6学生信息删除模块设计 (22) 3.2.2.7学生信息修改模块设计 (26) 3.2.2.8课程信息查询模块设计 (29) 3.2.2.9课程信息插入模块设计 (30) 3.2.2.10课程信息删除模块设计 (31) 3.2.2.11课程信息修改模块设计 (32) 3.2.2.12选课信息查询模块设计 (33) 3.2.2.13选课信息插入模块设计 (34) 3.2.2.14选课信息删除模块设计 (35) 3.2.2.15选课信息修改模块设计 (36) 3.2.2.16SQL复杂操作模块设计 (37) 4总结 (40) 参考文献 (41)

1实验目的与内容 1.1实验目的 本综合实验的目的主要是通过理论联系实际,巩固课堂所学理论知识,如关系数据库规范化理论与数据库设计的方法,同时提高实践能力和创新能力,培养数据库应用系统开发的能力,以及技术总结和撰写实验报告的基本技能。 1.2实验内容 设计一个学生-课程信息管理系统,实现以下功能: 1.实现对学生信息的查询、插入、删除、修改 2.实现对课程信息的查询、插入、删除、修改 3.实现对学生选课信息的查询、插入、删除、修改 4.通过SQL语句实现多表连接复杂查询 5.实现新建用户功能

数据库技术及应用实验报告

XX大学数学与计算科学学院 学生实验报告 专业班级姓名学号 实验 日期 2014 年5月1 日至2014 年6 月2 日实验 项目数据库技术及应用实验报告 实验内容与要求一、数据库习题部分 书上习题P72-3,P97-11 二、数据库应用系统设计 从以下二个选题中选取其一,进行相应的系统设计 1) 本专业毕业生信息管理系统设计(2010-2013) 要求最少建立一个不少于30个人的基本信息表数据库,建立完全的个人信息,设置一个超级管理员,3个二级用户帐号,3个三级权限用户帐号。 2) 班级电子资源管理系统 模拟电子图书馆的图书管理系统设计班级电子资源数据库系统,提供资源上传、下载、查询等功能数据操纵。 指 导 教 师 意 见 成绩:签名: 2014 年6 月日备 注

数据库习题部分 习题3 操作环境:Mysql , Navicat for My sql 一、建立关系表Supplier、project、part、spp /* 选择对应数据库,并建立名为supplier的table,需要注意的是图

上的credit在截图定义为int型了(以为会是信用评分),后用alter命令改为了varchar(20) */ 二、用insert语句插入数据 /*因为insert的繁琐,实际的数据录入是以图形化Mysql工具Navicat 进行操作的,如下图*/

三、 1.从supplier中查询下列信息,结果按升序输出 2.列出项目负责人名字,不重复 3.查询以J开头或以L结尾的项目名称

4.查询项目经费高于500万元的项目负责人名字,查询结果包含负责人,项目名称,项目经费,并降序列出项目经费 5.列出信誉为优的供应商及所在城市 6.列出项目经费在500~2000万元之间的项目号和项目名

数据库实验报告五

数据库原理及应用实验报告(五) 实验题目:过程 专业:数字媒体技术 班级:1306班 姓名:***************

运城学院实验报告 专业:数字媒体技术系(班):计算机科学与技术系1306班姓名:************* 课程名称:数据库原理及应用 实验项目:过程实验类型:验证型指导老师:***** 实验地点:软件实验室一时间:2015年12月10日 一、实验目的: 掌握用户存储过程的创建,了解一些常用的系统存储过程,以及调用和删除过程,并熟悉使用存储过程来进行数据库应用程序的设计。 二、实验内容: (1)基于学生—课程数据库创建一存储过程,用于检索数据库中某个专业学生的人数,带有一个输入参数,用于指定专业。执行结果如图二所示: create procedure pro_s @stu_sdept varchar(5) //这是带参数的过程,参数不用()括 As select count(*) as 人数from student where sdept = @ stu_sdept 1、存储过程的执行 execute pro_s 实参//实参可以是变量,也可以是常量 (2)基于学生-课程数据库创建一存储过程,该过程带有一个输入参数,一个输出参数。其中输入参数用于指定学生的学号,输出参数用于返回学生的平均成绩。执行结果如图四所示: create procedure pro_stu @stu_sno char(6),@stu_avg float output //这个带output的是输出参数as select @stu_avg = avg(grade) //将平均值给了变量 from student,sc where student. sno = sc. sno and student.sno=@stu_sno 1.存储过程的执行 declare @stuavg float //用于存放输出变量内容的 execute pro_stu ‘1000’,@stuavg output// 输出参数必须是变量 select @stuavg //看结果 (3)在pubs数据库中建立一个存储过程,用于检索数据库中某一价位的图书信息。参数有两个,用于指定图书价格的上下限。如果找到满足条件的图书,则返回0,否则返回1。执行结果如图五所示: create procedure pro_title @pro_minnprice money, @pro_maxprice moneye as if exists (select price from titles

数据库实验报告

课程设计报告题目:数据库实验上机实验报告 专业班级:计算机科学与技术1210班 学号:U201215079 姓名:候宝峰 指导教师: 报告日期:2015-06-04 计算机科学与技术学院

目录 一、基本SQL操作(部分选做) (1) 1)数据定义 (1) 2)数据更新 (3) 3)用SQL语句完成下述查询需求: (4) 二、DBMS综合运用(部分选做) (8) 1)学习sqlserver的两种完全备份方式:数据和日志文件的脱机备份、系统的备份功能(选做)。 (8) 2)学习系统的身份、权限配置操作 (9) 3)了解SQLSERVER的存储过程、触发器、函数实现过程 (14) 三、实验总结 (17) 1)实验问题及解决 (17) 2)实验心得 (18)

一、基本SQL操作(部分选做) 1)数据定义 参照下面的内容建立自己实验所需的关系数据 创建三个关系: 商品表【商品名称、商品类型】 GOODS【GNAME char(20),GTYPE char(10)】 主关键字为(商品名称)。商品类型为(电器、文具、服装。。。) 商场【商场名称,所在地区】 PLAZA【PNAME char(20),PAREA c har(20)】 主关键字为商场名称。所在地区为(洪山、汉口、汉阳、武昌。。。) 销售价格表【商品名称、商场名称、当前销售价格、目前举办活动类型】 SALE【GNAME char(20),PNAME char(20),PRICE FLOAT,ATYPE c har(10)】 主关键字为(商品名称、商场名称)。举办活动类型为(送券、打折),也可为空值,表示当前未举办任何活动。表中记录如(‘哈森皮靴’,‘亚贸广场’,200,‘打折’),同一商场针对不同的商品可能采取不同的促销活动。 create table goods(gname char(20) primary key,gtype char(10)); create table plaza(pname char(20) primary key,parea char(20)); create table sale (gname char(20), pname char(20), price FLOAT, atype char(10)check (atype in('送券','打折','')), primary key(gname,pname), foreign key(gname)references goods(gname), foreign key(pname)references plaza(pname));

数据库设计实验报告模板

XX学院 数据库原理与应用 实 验 报 告 姓名:(小四居中)学号:(小四居中) 系别:(小四居中)专业班级:(小四居中)成绩: 指导教师:

实验一:基本表的定义删除与修改【40分】 1. 实验特点: 熟悉SQL Server 2014,掌握数据库、基本表的定义、删除与修改。 类型:验证类别:专业基础计划学时:2学时每组人数:1人 2. 实验目的与要求: 实验目的:熟练掌握数据库、基本表的定义、删除与修改,为后继学习打好基础。 基本要求:掌握数据库、基本表的定义、删除与修改。 3. 实验内容: (1)在查询分析器中建立数据库的命令、建立的数据库截图【10分】 (2)创建三个基本表的命令、各表结构截图、各表数据的截图【27分】 (3)建库、表过程中出现过的错误及解决方法(写出1-2个即可)【3分】

实验二:SQL的数据查询【30分】 1. 实验特点:简单查询、连接查询、嵌套查询和集合查询 类型:验证类别:专业基础计划学时:2学时每组人数:1人2. 实验目的与要求: 实验目的:熟练掌握查询语句的使用 基本要求: (1)掌握查询语句的一般格式 (2)掌握无条件、有条件查询及查询结果的排序与分组 3. 实验内容:【每小题3分】 (1)无条件单表查询 (2)有条件单表查询 (3)单表嵌套(一层)查询 (4)复合条件多表查询 (5)使用COUNT()的单表查询 (6)使用AVG()的单表查询 (7)查询结果分组 (8)查询结果排序 (9)使用通配符的查询 (10)使用换码字符的单表查询

实验三:SQL的数据更新、视图【30分】 1. 实验特点:数据更新、视图定义查询更新。 类型:验证类别:专业基础计划学时:2学时每组人数:1人 2. 实验目的与要求: 实验目的:熟练掌握SQL数据插入、修改和删除,掌握视图定义查询更新。 基本要求: (1)掌握SQL数据插入、修改和删除语句的一般格式 (2)掌握SQL数据插入、修改和删除的使用方法 (3)掌握SQL视图的建立、修改和删除的使用方法 3. 实验内容:【每小题5分】 (1)插入单个元组 (2)插入子查询结果 (3)修改某个元组的值 (4)修改多个元组的值 (5)删除一个元组的值 (6)建立视图

相关文档
最新文档