数据库学生成绩查询系统课程报告

发布时间:2013-01-24 12:59:38   来源:文档文库   
字号:

第一章 前言 1

第二章 数据库设计概述和需求分析 2

2.1 需求分析 2

2.2 任务概述 2

2.2.1目标 2

2.2.2运行环境 2

2.3 系统设计图 4

第三章 概念结构设计 5

3.1 概念结构 5

3.2 成绩管理系统概念结构设计 5

3.2.1 系统E-R 6

3.2.2 系统模块图 6

第四章 逻辑结构设计 8

4.1 逻辑结构设计 8

4.2成绩管理系统逻辑结构设计 8

第五章 物理结构设计 10

5.1系统关系模式 10

5.2 成绩管理系统表设计 10

第六章 数据库的实施和维护 13

6.1 数据的载入 13

6.2 系统程序的调试 15

6.3 数据库的维护 19

6.3.1 数据库维护 19

6.3.2改善数据库性能 19

6.3.3重组和构造数据库 19

第七章 心得体会 21

参考文献 21

第一章 前言

随着科学技术的不断发展,公司、企业及各事业单位的需求越来越大,而数据库作为数据管理的最新技术,是计算机科学的重要分支,近几年来,数据库管理系统从专用的应用程序包发展成为通用的系统软件,由于数据库具有数据结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,较大的信息系统都是建立在数据库设计之上的。因此不仅大型计算机及中小型计算机,甚至微型计算机都配有数据库管理系统。

管理信息系统(MISManagement Information System)是一个由人和计算机等组成的能够提供信息以支持一个组织机构内部的作业、管理、分析和决策职能的系统。管理信息系统利用计算机的硬件和软件,手工规程、分析、计划、控制和决策用的模型,以及数据库对信息进行收集、传输、加工、保存和使用。因此,管理信息系统是一个信息处理系统。

数据库作为存取数据并对数据进行操作的工具在系统中所起到的作用至关重要。数据库设计是指对于一个给定的应用环境,构造优化的数据库逻辑模式和物理模式结果,并据此建立数据库及其应用系统,使之能有效地存储和管理数据,满足应用需求,包括信息管理要求和数据操作。信息管理要求是指在数据库中应该存储和管理哪些数据对象;数据操作要求是指对数据对象进行哪些操作,如查询、增、删、改、统计等操作。数据库设计地目标是维用户和各种应用系统提供的一个信息基础设施和高效率地运行环境。高效率的运行环境包括:数据库数据的存取速率、数据库存储空间的利用率、数据库系统运行管理的效率等都是高的。

第二章 数据库设计概述和需求分析

2.1 需求分析

21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。使原本的旧的管理方法越来越不适应现在社会的发展。许多人还停留在以前的手工操作。这大大地阻碍了人类经济的发展。为了适应现代社会人们高度强烈的时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。

学生成绩管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。

经过分析,我们使用VS 2005SQL Server 2005开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。

数据库作为一种重要的存储工具,在系统设计中起到了重要的作用。数据库的作用在于组织和表达信息,简而言之,数据库就是信息的集合。计算机的数据库可以分为两类:非关系数据库和关系数据库。关系数据库中包含了多个数据表的信息,数据库含有各个不同部分的术语,如记录、域等。

2.2 任务概述

2.2.1目标

本系统开发的目的能有效地减轻学校相关工作人员的工作负担和提高工作效率出发,是适应现代制度要求、规范化的必要条件;计算机管理所无法比拟的优点检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生成绩管理的效率。

2.2.2运行环境

1开发环境:

操作系统:Windows 2003 Enterprise Edition

开发工具:Microsoft Visual Studio .NET 2003

数据库系统:Microsoft Sql Server 2000

Web 服务器:Microsoft IIS 6.0

CPU: Intel Pentium(R) 4 2.8CHz

内存: 512 MB

2在开发工具上,数据库选用SQL server 2005,它具有更强大的数据存储和数据检索的功能,前台开发环境选择Visual Studio .NETVisual Studio .NET 是一套完整的开发工具,用于生成 ASP Web 应用程序、XML Web services、桌面应用程序和移动应用程序。Visual Basic .NETVisual C++ .NETVisual C# .NET Visual J# .NET 全都使用相同的集成开发环境 (IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了 .NET Framework 的功能,此框架提供对简化 ASP Web 应用程序和 XML Web services 开发的关键技术的访问。

2.3 系统设计图

本系统流程图基本图形元素如下所示:

开始与结束

决策

过程

数据

程序流向

程序逻辑结构描述图例

(1) 顺序结构:一个命令接一个地执行;

(2) 选择结构:(IF-THEN-ELSE)当一个决定有多种不同执行结果时;

(3) 循环结构:只要条件成立就一直执行.

(4) 管理功能结构图:

学生功能结构图:

师功能结构图:

第三章 概念结构设计

3.1 概念结构

在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,才能更好地、更准确地用某一DBMS实现这些需求。

概念结构主要特点:

1 能真是、充分地反映显示世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一个只是模型;

2 易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库设计成功的关键。

3 易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充;

4)易于向关系、网状、层次等各种数据模型转换;

概念结构时各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。

3.2 成绩管理系统概念结构设计

本系统从功能上划分可分为以下几大模块:功能模块管理,组权限管理,学生信息管理,课程信息管理,学生成绩管理,授课信息管理,学生信息查询,学生成绩统计等几大模块。以下将对各子模块进行说明。

功能模块管理:将系统功能模块保存到数据库中以便于动态地进行不同用户组权限的分配等操作。本模块包括功能模块的添加,删除,修改等。

组权限管理:对用户进行分组,并将权限设置到不同的用户组。

学生信息管理模块:输入学生基本信息,并可以对学生信息进行添加、查询、修改、删除。还可以关键字查询并从数据库里调出的学生基本信息.输出学生基本信息,学号、班号、姓名查询的信息结果。

课程信息管理:设置课程号,课程名,先修课等课程信息。

成绩信息管理模块:输入成绩信息,并可以对成绩信息进行添加、查询、修改、删除。还可以用关键字查询并调出数据库里的学生基本成绩信息的修改、删除等。输出查询的学生成绩信息。

授课信息管理:对教师授课信息的调度,安排等信息的管理。

学生信息查询:本模块是可对学生成绩进行查询,可按学号,姓名,年龄,所在院系,入学年份等不同条件独立查询或进行模糊查询。

学生成绩统计:对学生成绩总分,平均分等进行统计。

本系统属于小型的数据库管理系统,通过本系统可以达到以下目标:

灵活地录入数据,使信息传递更快捷;

系统采用人机交互方式,界面美观友好,信息查询灵活,数据存储安全可靠

实现学生成绩管理;

实现学生信息修改的情况;

实现学生查询和教师对学生成绩进行查询、添加、修改和删除功能

对用户输入的数据,进行严格的数据检验,尽可能避免人为错误;

对系统最大限度地实现了易维护性和易操作性。

3.2.1 系统E-R

3.2.2 系统模块图

 

 

添加用户

修改用户

删除用户

退出系统

添加学生信息

修改学生信息

删除学生信息

查询学生信息

添加授课信息

修改授课信息

添加成绩信息

修改成绩信息

删除成绩信息

查询成绩信息



第四章 逻辑结构设计

4.1 逻辑结构设计

概念结构是独立于任何一种数据模型的信息结构。逻辑结构设计的任务就是把结构概念的设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。

从理论上讲,设计逻辑结构应该选择最适于相应概念结构的数据模型,然后对支持这种数据模型的各种DBMS进行比较,从中选出最合适的DBMS。所以设计逻辑结构时一般分为3部进行(如图1所示):

(1) 将概念结构转换我一般关系、网状、层次结构;

(2) 将转换的关系网状、层次模型向特定的DBMS支持的数据模型转换;

(3) 对数据模型进行优化。

1 逻辑结构设计的三个步骤、

关系模型的逻辑结构是由一组关系模式集合。E-R则是由实体、实体的属性、实体间的关系三个要素组成。所以要将E-R模型转换为关系模型,就是将实体、属性和联系都要转换为相应的关系模型。

4.2成绩管理系统逻辑结构设计

有了基本的E-R模型就可以进行逻辑结构设计,也就是设计基本的关系模式。设计基本的关系模式主要从E-R模型出发,将其直接转换为关系模式。根据转换规则,这个E-R转换的关系模式为:

(1) 学生信息(学号,姓名,性别,年龄,所在院系,班级名,入学年份)

(2) AdminGroupIDPromisecomment

(3) AdminUrlIDUrlNameComment

(4) Adminuseridusernamepassword

(5) 成绩表(学号,课程号,成绩)

(6) 授课表(教师名,课程号,学时数,班级名)

(7) 课程表(课程号,课程名,先修课)

数据库逻辑设计的结果不是唯一的。为了进一步提高数据库应用系统的性能,还应该根据应用需要适当地修改、调整数据模型的结构,这就是具模型优化。关系数据库的优化通常以规范化理论为指导:

1、 确定数据依赖;

2、 对于各个关系模式之间的数据依赖节能型极小化处理,消除冗余的联系;

3、 按照数据以来的理论对关系模式逐一进行分析,考察是否存在部分函数依赖、传递函数依赖、多值依赖等,确定各关系模式分别属于第几范式;

4、 按照需求分析阶段得到的处理要求,分析对于这样的应用环境这些模式是否合适,确定是否要对某些模式进行合并或分解;

5、 对关系模式进行必要的分解,提高数据操作的效率和存储空间的利用率,常用的两种分解方法是水平分解和垂直分解。

第五章 物理结构设计

数据库在物理上的存储结构与存储方法称为数据库的物理结构,它依赖于选定的数据库管理系统。为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是物理设计。

数据库的物理设计通常分为两步:

1)确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;

2)对物理结构进行评价,评价的中的是时间和空间效率。

如果评价结果满足原设计原则要求,则可进入到物理实施阶段,否则,就需要重新设计或修改物理结构,有时甚至返回逻辑设计阶段修改数据模型。

5.1关系模式

学生成绩管理系统的关系模型如下:

(1) 学生信息(学号,姓名,性别,年龄,所在院系,班级名,入学年份)

(2) AdminGroupIDPromisecomment

(3) AdminUrlIDUrlNameComment

(4) Adminuseridusernamepassword

(5) 成绩表(学号,课程号,成绩)

(6) 授课表(教师名,课程号,学时数,班级名)

7 课程表(课程号,课程名,先修课)

5.2 成绩管理系统表设计

数据库表结构及设计

(1) 学生信息表

数据类型

数据长度

允许空

学号

char

10

姓名

char

10

性别

char

10

年龄

Tinyint

1

所在院系

Varchar

50

班级名

Varchar

50

入学年龄

datetime

8

(2) AdminGroup

数据类型

数据长度

允许空

ID

int

4

[Group]

Varchar

50

Promise

Varchar

50

comment

varchar

50

(3) AdminUrl

数据类型

数据长度

允许空

ID

Int

4

Url

Varchar

50

UrlName

Varchar

50

Comment

varchar

50

4Admin

数据类型

数据长度

允许空

userid

Int

4

username

Varchar

50

password

Varchar

50

[group]

Char

20

5成绩表

数据类型

数据长度

允许空

学号

Char

10

课程号

Char

8

成绩

Tinyint

1

6授课表

数据类型

数据长度

允许空

教师名

Char

10

课程号

Char

8

学时分

Tinyint

1

班级名

Char

10

(7) 课程表

数据类型

数据长度

允许空

课程号

Char

8

课程名

Char

20

先修课

Char

10

第六章 数据库的实施和维护

完成数据库的物理设计之后,设计人员就要RDBMS提供的数据定义语言和其他实用程序将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码,再经过调试产生目标,模式。然后就可以组织数据入库了,这就是数据库实施阶段。

6.1 数据的载入

在查询分析器中执行以下语句以创建数据库表

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[v_stuGrade]') and OBJECTPROPERTY(id, N'IsView') = 1)

drop view [dbo].[v_stuGrade]

GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[Admin]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)

drop table [dbo].[Admin]

GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[AdminGroup]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)

drop table [dbo].[AdminGroup]

GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[AdminUrl]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)

drop table [dbo].[AdminUrl]

GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[学生信息表]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)

drop table [dbo].[学生信息表]

GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[成绩表]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)

drop table [dbo].[成绩表]

GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[课表]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)

drop table [dbo].[授课表]

GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[课程表]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)

drop table [dbo].[课程表]

GO

CREATE TABLE [dbo].[Admin] (

[userid] [int] IDENTITY (1, 1) NOT NULL ,

[username] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

[password] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

[group] [char] (20) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

GO

CREATE TABLE [dbo].[AdminGroup] (

[ID] [int] IDENTITY (1, 1) NOT NULL ,

[Group] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[Promise] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

[comment] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

GO

CREATE TABLE [dbo].[AdminUrl] (

[Id] [int] IDENTITY (1, 1) NOT NULL ,

[Url] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[UrlName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[Comment] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

GO

CREATE TABLE [dbo].[学生信息表] (

[学号] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[姓名] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,

[性别] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,

[年龄] [tinyint] NULL ,

[所在院系] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

[班级名] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

[入学年份] [datetime] NULL

) ON [PRIMARY]

GO

CREATE TABLE [dbo].[成绩表] (

[学号] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[课程号] [char] (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[成绩] [tinyint] NULL

) ON [PRIMARY]

GO

CREATE TABLE [dbo].[授课表] (

[教师名] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,

[课程号] [char] (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[学时数] [tinyint] NULL ,

[班级名] [char] (10) COLLATE Chinese_PRC_CI_AS NOT NULL

) ON [PRIMARY]

GO

CREATE TABLE [dbo].[课程表] (

[课程号] [char] (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,

[课程名] [char] (20) COLLATE Chinese_PRC_CI_AS NULL ,

[先修课] [char] (10) COLLATE Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

GO

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_NULLS ON

GO

CREATE VIEW dbo.v_stuGrade

AS

SELECT dbo.成绩表.学号, dbo.成绩表.课程号, dbo.成绩表.成绩, dbo.学生信息表.姓名,

dbo.学生信息表.年龄, dbo.学生信息表.班级名, dbo.学生信息表.入学年份

FROM dbo.成绩表 INNER JOIN

dbo.学生信息表 ON dbo.成绩表.学号 = dbo.学生信息表.学号

GO

SET QUOTED_IDENTIFIER OFF

GO

SET ANSI_NULLS ON

GO

6.2 系统程序的调试

1)数据库连接

Protected Function bind(ByVal stunum As String)

Dim conn As SqlClient.SqlConnection

conn = New SqlClient.SqlConnection("server=.\sqlexpress;integrated security=true;database=GradeSys")

conn.Open()

系统调试,删除内容代码如下:

<%@ Page Language="VB" MasterPageFile="~/MasterPage.master" Title="Untitled Page" %>

<%@ Import Namespace="system.data"%>

<%@ Import Namespace="system.data.sql"%>

<script runat="server">

Protected Function bind(ByVal stunum As String)

Dim conn As SqlClient.SqlConnection

conn = New SqlClient.SqlConnection("server=.\sqlexpress;integrated security=true;database=GradeSys")

conn.Open()

Dim cmdstr As String = "select * from exam where stuid='" + stunum + "'"

Dim cmd As SqlClient.SqlCommand

cmd = New SqlClient.SqlCommand(cmdstr, conn)

Dim sda As SqlClient.SqlDataAdapter

sda = New SqlClient.SqlDataAdapter()

sda.SelectCommand = cmd

Dim ds As Data.DataSet = New Data.DataSet()

sda.Fill(ds, "stu")

conn.Close()

Return ds.Tables("stu")

End Function

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)

If Page.IsValid Then

Dim table As DataTable

table = bind(TextBox1.Text.Trim())

If table.Rows.Count Then

DetailsView1.DataSource = table

DetailsView1.DataBind()

Else

MsgBox("不存在你要删除的学生成绩信息!", MsgBoxStyle.OkOnly, "提示信息")

End If

End If

End Sub

Protected Sub DetailsView1_ItemDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DetailsViewDeleteEventArgs)

Dim conn As SqlClient.SqlConnection

conn = New SqlClient.SqlConnection("server=.\sqlexpress;integrated security=true;database=webjwdb")

conn.Open()

Dim cmdstr As String = "delete * from exam where stuid='" + TextBox1.Text.Trim() + "'"

Dim cmd As SqlClient.SqlCommand

cmd = New SqlClient.SqlCommand(cmdstr, conn)

If cmd.ExecuteNonQuery() Then

DetailsView1.DataSource = ""

DetailsView1.DataBind()

MsgBox("删除" + TextBox1.Text.Trim() + "信息成功!", MsgBoxStyle.OkOnly, "提示信息")

Else

MsgBox("删除" + TextBox1.Text.Trim() + "信息失败!", MsgBoxStyle.OkOnly, "提示信息")

End If

conn.Close()

End Sub

script>

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">

<table style="width: 348px; height: 371px">

<tr>

<td style="width: 100px">

输入要删除信息的学号:td>

<td style="width: 100px">

<asp:TextBox ID="TextBox1" runat="server">asp:TextBox>td>

<td style="width: 100px">

 <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="查询" />td>

tr>

<tr>

<td style="width: 100px">

td>

<td style="width: 100px">

<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox1"

ErrorMessage="*请输入学生的学号">asp:RequiredFieldValidator>td>

<td style="width: 100px">

td>

tr>

<tr>

<td colspan="3">

<asp:DetailsView ID="DetailsView1" runat="server" Height="158px" Width="332px" OnItemDeleting="DetailsView1_ItemDeleting">

<Fields>

<asp:CommandField HeaderText="删除" ShowDeleteButton="True" ShowHeader="True" />

Fields>

asp:DetailsView>

td>

tr>

<tr>

<td style="width: 100px">

td>

<td style="width: 100px">

td>

<td style="width: 100px">

td>

tr>

table>

asp:Content>

6.3 数据库的维护

数据库试运行合格后,数据库开发工作就基本完成,即可投入正式运行。但是,由于应用环境的不断变化,数据库运行过程中物理存储也会不断变化,对数据库设计进行评价、调整、修改等维护工作是一个长期的任务、也是设计工作的继续和提高。

在数据库运行阶段,对数据库经常性的维护工作主要是由DBA完成的,它主要:

1、 数据库的转储和恢复

2、 数据库的安全、完整性控制

3、 数据库性能的监督、分析和改造

4、 数据库的重组织与重构造

6.3.1 数据库维护

数据库既是共享的资源,又要进行适当的保密。DBA必须对数据库安全性和完整性控制负起责任。尤其在计算机网络普遍引应用的今天,保证数据安全、防止黑客攻击、防止病毒入侵等,都是DBA所需要面对的。按照设计阶段提供的安全防范和故障恢复规范,DBA要经常检查系统的安全是否受到侵犯,根据用户的实际需要授予用户不同的操作权限。数据库在运行过程中,由于应用环境发生变化,对安全性的要求可能发生变化,DBA要根据实际情况及时调整相应的授权和密码,以保证数据库的安全性。同样数据库的完整性约束条件也可能会随应用环境的改变而改变,这时DBA也要对其进行调整,以满足用户的要求。6.3.2改善数据库性能

目前许多DBMS产品都提供了检测系统性能参数的工具,DBA可以利用系统提供的这些工具,经常对数据库的存储空间及响应时间进行分析评价;结合用户的反映情况确定改进措施;及时改正运行中发现的错误;按用户的要求对数据库的现有功能进行适当的扩充。但要注意在增加新功能时应保证原有功能和性能不受损害。

6.3.3重组和构造数据库

数据库建立后,除了数据本身是动态变化外,随着应用环境的变化,数据库本身也必须变化以适应应用要求。

数据库运行一段时间后,由于记录在不断增加、删除和修改,会改变数据库的物理存储结构,使数据库的物理特性受到破坏,从而降低数据库存储空间的利用率和数据的存取效率,使数据库的性能下降。因此,需要对数据库进行重新组织,即重新安排数据的存储位置,回收垃圾,减少指针链,改进数据库的响应时间和空间利用率,提高系统性能。这与操作系统对“磁盘碎片”的处理的概念相似。数据库的重组只是使数据库的物理存储结构发生变化,而数据库的逻辑结构不变,所以根据数据库的三级模式,可以知道数据库重组对系统功能没有影响,只是为了提高系统的性能。

由此可知,数据库的重组并不会改变原设计的数据逻辑结构和物理结构,而数据库的重构造则不同,它部分修改原数据库的模式或内模式,这主要是因为数据库的应用环境发生了变化,如需求变化、设计调整等。例如增加新的数据项、改变数据类型、改变数据库的容量、增加或删除索引、修改完整性约束等。

DBMS一般都提供了重新组织和构造数据库的应用程序,以帮助DBA完成数据库的重组和重构工作。

只要数据库系统在运行,就需要不断地进行修改、调整和维护。一旦应用变化太大,数据库重新组织和构造也无济于事,这就表明数据库应用系统的生命周期结束,应该建立新系统,重新设计数据库。从头开始数据库设计工作,标准着一个新的数据库应用系统生命周期的开始。

第七章 心得体会

本次课程设计,让我受益匪浅,将理论与实践真正的结合在一起,将所学知识运用于实践当中,学会了数据库的需求分析和设计,分清设计的主次,学会了怎样设计E-R图,怎样进行数据库的分析与优化,怎样实现数据库的访问等等,通过本次课程设计,不仅将课本的知识进行了全面的运用,而且通过学习,也学到了课本中未曾涉及到得知识,这也是以后系统开发中不可缺少的知识,在此设计中学校给予我们良好的学习环境,让我们得以学到很多有用的知识,也很感谢我的辅导老师申玉静老师,她那严谨的教学风格让我受益匪浅。当然还要感谢其他老师和同学们对我的帮助和支持。通过开发这个系统,不仅仅是一次课程设计,不仅仅是学会了后天数据库的开发,更重要的是在学习的过程中,所有的问题要自已去面对,有问题也只有靠自已去解决,在学习和解决这些困难的过程中提高了我学习的能力、解决问题的能力和实际工作的能力,学到了许多书本以外的知识,这是我踏出这个校门给予自已最大的回报,同时在以后的人生道路上会带来很多的帮助。

在系统开发的两个月里,我受到了指导老师细心指导,老师严谨的指导态度与深厚的理论知识都让我受益非浅,从他身上我学到了很多的东西,无论是理论还是实践都使我的知识有很大的提高.借此我特提出感谢.

同时我还感谢课程设计的老师,谢谢他们为本系统提供的帮助让我能够顺利地完成本系统的开发.也感谢那些对我提供帮助的同学,没有他们就不会现在的系统

第八章 参考文献

1. 萨师炫等.数据库系统概论(第三版).北京:高等教育出版社,2001

2. 施伯乐等.数据库技术.北京:科学出版社,2002

3. 王珊等.数据库系统原理教程.北京:清华大学出版社,1998

4. 张龙祥等.数据库原理与设计.北京:人民邮电出版社,2002

5. 陈志泊等.数据库原理及应用教程.北京:人民邮电出版社,2002

6. 徐洁磐.现代数据库系统教程.北京:北京希望电子出版社,2002

7. 周志逵等.数据库理论与新技术.北京:北京理工大学出版社,2001

8. 李建中等.数据库系统原理.北京:电子工业出版社,1998

9. 刘方鑫等.数据库原理与技术.北京:电子工业出版社,2002

本文来源:https://www.2haoxitong.net/k/doc/2f76e8e2172ded630b1cb6be.html

《数据库学生成绩查询系统课程报告.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式