基于C#的图书馆管理系统(5篇范例)

时间:2019-05-12 02:31:53下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《基于C#的图书馆管理系统》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《基于C#的图书馆管理系统》。

第一篇:基于C#的图书馆管理系统

基于C#的图书馆管理系统

基于C#的图书馆管理系统

摘要

随着社会的发展,人们生活水平的不断提高,物质文化的发展已经远远满足不了人们的需求,精神文明有了飞速的发展,因此图书事业的发展就成为了精神文明进步的一个动力。在迈入二十一世纪的今天,对图书馆的管理显得极其重要,合理的管理不但反映了一个国家的科技水平,而且影响人们对知识掌握的速度和质量。在知识经济时代到来的今天,用计算机管理图书馆的工作由自动化系统运行而完成。这不仅节省了人力,还提高了工作效率和服务质量,而且还加速了图书的流通。

本图书馆管理系统是按基本图书馆系统结构开发的,本文重点描述图书添加、图书信息更新、删除图书、图书查询等功能。

前言部分论述了图书馆系统的发展以及图书馆用计算机自动化管理的前景。

正文论述了图书馆管理系统的特点及图书馆自动化管理的重要性和图书馆管理系统软件需要实现的主要功能,分析图书馆管理系统以及实现软件开发的系统要求,简述了实现图书馆管理系统设计需要,图书馆系统数据库的设计,程序流程图以及详细设计,并陈列了改系统开发所应用的主要参考文献。

关键词:管理信息系统 图书馆 C# 数据库表 SQL Server2000

基于C#的图书馆管理系统

目录

目录..................................................................1 第一章 开发环境和开发工具.............................................2

1.1 C#语言简介.....................................................2 1.2 开发背景.......................................................2 1.3 开发环境........................................................3 第二章 图书馆管理系统的分析与设计......................................3

2.1 系统需求分析....................................................3 2.2 系统总体设计....................................................4

2.2.1 系统设计目标...............................................4 2.2.2 开发设计思想..............................................4 2.2.3 系统功能模块设计..........................................5

第三章 数据库设计.....................................................6

3.1 引入背景.......................................................6 3.2 数据库需求分析.................................................7 3.3 数据库概念结构设计..............................................8 3.4 数据库逻辑结构设计..............................................9 第四章 系统详细设计与实现............................................11 4.1 公共类设计与实现...............................................12 4.2 数据访问层类设计与实现.........................................13 4.3 业务逻辑层类设计与实现.........................................19 4.4 界面设计及实现.................................................20 4.4.1 登陆界面及代码...........................................20 4.4.2 主界面及代码..............................................21 结 论...............................................................24 心得体会...............................................................25 参考文献...........................................................26

基于C#的图书馆管理系统

第一章 系统开发环境和开发工具

·1.1 C#语言简介

C#是美国微软公司推出的Windows操作系统下的应用程序开发平台VisualStudio.NET(简称VS.NET)家族中的一员C#是对C++进行了很大改进的一种完全面向对象的可视化程序设计语言。由于C#采用了类似于Visual Basic 的较易使用的程序设计界面,从而成为了一种更加简单易学、功能强大的应用程序开发工具。

C#是一种先进的、面向对象的语言,使用C#语言可以让开发人员快速的建立大范围的基于MS网络平台的应用,并且提供大量的开发工具和服务,帮助开发人员开发机基于计算和通信的各种应用。由于C#是一种面向对象的开发语言,所以C#可以大范围地适用于高层商业应用和底层系统的开发。即使是通过简单的C#构造,也可以让各种组件方便的转变为基于Web的应用,并且能够通过Internet被各种系统或是其他开发语言所开发的应用调用。

·1.2 开发背景

图书馆在正常运营中面对大量书籍、读者信息以及两者间相互联系产生的借书信息、还书信息。现有的人工记录方法既效率低又错误过多,大大影响了图书馆的正常管理工作。因此需要对书籍资源、读者资源、借书信息、还书信息进行管理,及时了解各个环节中信息的变更,有利用管理效率的提高。

目前社会上信息管理系统发展飞快,各个企事业单位都引入了信 2

基于C#的图书馆管理系统

息管理软件来管理自己日益增长的各种信息,图书管理系统也是有了很大的发展,商业化的图书信息管理软件也不少。但本系统完全独立开发,力求使系统功能简洁明了,但功能齐全且易于操作。

·1.3 开发环境

本文所采用的开发环境主要是基于数据库系统的SQL Server 2000 和基于面向对象程序设计的C#。利用SQL Server 2000创建图书馆管理各信息表——用户信息表、图书信息表。利用C#和数据库建立连接之后,利用C#中的控件按钮以及一些程序代码实现一些特定的功能,例如用户图书信息查询、书库借出查询、密码修改、查找图书、个人信息查询、添加用户等,极大地提高了图书馆管理的效率。

第二章 图书馆管理系统的析与设计

·2.1 系统需求分析

随着经济全球化的推进以及企业激烈的竞争,各大高校的图书管理系统已经越来越不能够适应读者和图书信息剧增的局面了,所以我们现在需要一个检索迅速、查找方便、易修改功能齐全方便的系统来适应我们的需求。

系统采用先进的两层体系结构,Client(客户端)负责提供表达逻辑、显示用户界面信息、基本操作;Server(服务器端)负责实现数据服务。

问题的提出:为了减少人工工作量,提高工作效率,使图书馆管理员的工作更加有效地进行。

基于C#的图书馆管理系统

·2.2 系统总体设计

2.2.1 系统设计目

该图书管管理系统的核心思想是实现对图书信息增、删、改、查的管理。根据图书馆日常图书管理工作的需求和图书借阅的管理流程,该系统实施后,应该达到以下目标:

1.充分了解用户需求及当前形式,功能齐备,能完成图书处理; 2.要有详细的设计说明书; 3.每一模块的流程图要很清晰;

4.系统能够正常的运行,能较好的完成预定的功能;

5.系统要有完整的帮助文件,供前台操作员能方便的操作本系统。

6.系统应该具备管理用户的信息,对用户的信息进行管理,实现用户图书的借阅功能。2.2.2 开发设计思想

基于以上系统设计目标,本文在开发人事管理信息系统时遵循了以下开发设计思想:(1)采用现有的软硬件环境及先进的管理系统开发方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。(2)尽量达到操作过程中的直观、方便、实用、安全等要求。(3)系统采用C/S体系结构,Clinet(客户端)负责提供表达逻辑、显示用户界面信息、访问数据库服务器;Server(服务器端)则用于提

基于C#的图书馆管理系统

供数据服务。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是中间层向外提供接口,通过COM/DCOM通讯或者Http等方式与中间层建立连接,再经由中间层与数据库进行交互。当然数据通过中间层的中转无疑是降低了效率,但是它脱离于界面与数据库的完美封装,使得它的缺点显然不值得一提。

典型的三层结构分为表示(presentation)层, 领域(domain)层, 以及基础架构(infrastructure)层,而微软的DNA架构定义了三个层:表示层(presentation),业务层(business),和数据存储层(data access)。

(4)系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。

(5)系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。2.2.3 系统功能模块设计

本系统分为普通用户(读者)和管理员,普通用户的职能模块包括查询图书、借阅图书和查询已借图书信息,管理员职能模块包括用户管理、图书管理、借阅管理、登录管理,得到如图系统功能模块:

基于C#的图书馆管理系统

进入图书馆管理系统管理员失败登录成功图书管理查询图书用户借阅图书用户管理图书管理借阅管理登陆管理浏览用户添加用户浏览图书查找图书个人借阅查询书库借出查询重新登录修改密码

第三章 数据库设计

·3.1 引入背景

图书馆管理系统是一个数据库应用系统,用户及图书的所有信息都保存在数据库中。数据库结构设计是图书馆管理信息系统数据库应用系统开发过程中一个非常重要的环节,设计的好坏将直接对所开发的图书馆管理信息系统的效率以及实现的效果产生影响。好的数据库

基于C#的图书馆管理系统

结构设计会减少数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度,简化基于此数据库的应用程序的实现等等。数据库结构设计主要就是要设计好数据库中各个表的结构,包括信息保存在哪些表格中、各个表的结构如何以及各个表之间的关系。由于数据库设计的重要性,人们提出了许多数据库结构设计的技术。

·3.2 数据库需求分析

数据库需求分析是数据库结构设计的第一个阶段,也是非常重要的一个阶段。在这个阶段主要工作是收集基本数据以及数据处理的流程,为以后进一步设计一打下基础。需求分析主要解决两个问题:

(1)内容要求。调查应用系统用户所需要操作的数据,决定在数据库中存储什么数据。

(2)处理要求。调查应用系统用户要求对数据库进行什么样的处理,理清数据库中各种数据之间的关系。

在数据库需求分析后,得到一个数据字典文档,包括3方面内容:(1)数据项。包括名称、含义、类型、取值范围、长度以及和其他数据项之间的逻辑关系。

(2)数据结构。若干个数据项的有意义的集合,包括名称、含义以及组成数据结构的数据项。

(3)数据流。指数据中数据的处理过程,包括输入、处理和输出。本系统数据项和数据结构设计如下:

(1)图书基本情况。包括的数据项有图书ID、图书名称、图书类

基于C#的图书馆管理系统

别类别、作者、价格、出版社、内容简介、图书指定访问码。

(2)图书借阅信息。包括的数据项有图书指定访问码、图书ID、图书名称、图书类别、作者、出版社、借阅者权限、借出时间、用户编号。

(3)用户登录信息。包括用户ID、用户名、密码、借阅者权限。

·3.3 数据库概念结构设计

数据库概念结构设计是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。用E-R图是描述数据实体关系的一种直观描述工具,所以本系统采用了E-R图的方法进行数据库概念结构设计。用户实体E-R图:

用户用户ID

用户名密码权限 8

基于C#的图书馆管理系统

图书实体E-R图:

作者出版社价格图书指定访问码图书图书ID 图书名称类别价格 图书借阅实体E-R图:

出版社价格图书指定访问码作者图书借阅用户ID图书ID 图书名称类别借出时间

·3.4 数据库逻辑结构设计

概念结构是独立于实际数据模型的信息结构,必须将其转化为逻辑结构后才能进行数据库应用的设计。也就是要将概念上的结构转化为BP数据库系统所支持的实际数据模型。

根据需求分析进行数据库设计,数据库名称为 BookManage,共需要三张表:用户表(UserInfo)、图书信息表(BookInfo)、图书借

基于C#的图书馆管理系统

阅信息表(BookOut)。

用户表存放用户账号的信息,一个用户可以对应一个账户,包括用户名、密码、借阅证号和用户权限。通过用户表查阅用户权限和借阅证号,判断是否是管理员,是否拥有修改图书和用户信息的权限。

图书信息表里每条记录都是一本书,包括图书名称、图书类别、作者、价格、内容简介和图书的访问码。通过图书信息表可以获取图书信息。

基于C#的图书馆管理系统

图书借阅表记录用户借阅图书的信息,包括借阅的图书、借阅时间、借阅人。通过图书借阅信息表可以获取图书借阅的信息。

图书借阅情况表:

在此三个表的基础上输入数据完成表的创建。

第四章 系统详细设计与实现

为实现该系统,建立名为Book的解决方案,建立三层架构,用户访问层(BookUI)、数据访问层(BookDAL)、逻辑业务层(BookBLL)

基于C#的图书馆管理系统

·4.1 公共类设计与实现

用户访问层用户访问层(BookUI),位于最外层,离用户最近。用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。本系统创建窗口,实现图书信息和用户信息的增、删、改、查操作。

基于C#的图书馆管理系统

实体类Model:Book.cs、User.cs、BookOut.cs, 是关系数据库和对象之间架起一座桥梁,帮助我们完成传递参数功能,实现按某一字段进行查询。如图所示:

基于C#的图书馆管理系统

·4.2 数据访问层类设计与实现

数据访问层(BookDAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。

本实例系统的主要操作都需要与数据库发生交互,操作数据库是必不可少的,为了减少 重复代码提高代码的重用性和规范性,把与数据库交互的功能单独放在一个类中,在该类中 实现数据库的增加、删除、修改、查询等通用功能。因此创建databa.cs类,放在BookUtility方案下,实现对数据库的操作,代码如下:

namespace BookUtility { public class Database { private static string _connStr = “Data Source=.;Initial Catalog=BookManage;Integrated Security=True”;private static SqlConnection sqlcon = null;private static void CreateConnection(){ if(sqlcon == null){ sqlcon = new SqlConnection(_connStr);sqlcon.Open();} else if(sqlcon.State == ConnectionState.Closed || sqlcon.State == ConnectionState.Broken)14

基于C#的图书馆管理系统

{ sqlcon.Close();sqlcon.Open();} } public static SqlCommand Querry(string strsql){ try { CreateConnection();SqlCommand sqlcmd = new SqlCommand(strsql, sqlcon);sqlcmd.CommandText = strsql;return sqlcmd;} catch { return null;} } //执行Insert/update/delete,不带参数

public static int ExecuteNoQuery(string strsql){ int i;

try { CreateConnection();SqlCommand sqlcmd = new SqlCommand(strsql, sqlcon);i = sqlcmd.ExecuteNonQuery();sqlcon.Close();return i;} catch { return-1;} }

//执行Insert/update/delete,带参数

public static int ExecuteNoQuery(string strsql, params SqlParameter[] param){ int i;try { 15

基于C#的图书馆管理系统

CreateConnection();SqlCommand sqlcmd = new SqlCommand(strsql, sqlcon);//sqlcmd.Parameters.Add(param);foreach(SqlParameter par in param)//遍历数组将参数对象添加到操作命令中 { sqlcmd.Parameters.Add(par);} i = sqlcmd.ExecuteNonQuery();return i;} catch { return-1;} } public static DataSet GetDataSet(string strsql){ CreateConnection();SqlDataAdapter sda = new SqlDataAdapter(strsql, sqlcon);DataSet ds = new DataSet();try { sda.Fill(ds);return ds;} catch { return null;} } public static DataSet GetDataSet(string strsql, params SqlParameter[] param){ CreateConnection();SqlDataAdapter sda = new SqlDataAdapter(strsql, sqlcon);DataSet ds = new DataSet();foreach(SqlParameter par in param){ sda.SelectCommand.Parameters.Add(par);

} try { sda.Fill(ds);return ds;16

基于C#的图书馆管理系统

} catch { return null;} } public static DataTable GetTable(string strsql){ try { CreateConnection();SqlDataAdapter sda = new SqlDataAdapter(strsql, sqlcon);DataSet ds = new DataSet();sda.Fill(ds, “temp”);sqlcon.Close();return ds.Tables[“temp”];} catch { return null;} } public static DataTable GetTable(string strsql, params SqlParameter[] param){ try { CreateConnection();string str = strsql;SqlDataAdapter sda = new SqlDataAdapter(strsql, sqlcon);foreach(SqlParameter par in param){ sda.SelectCommand.Parameters.Add(par);

} DataSet ds = new DataSet();sda.Fill(ds, “temp”);sqlcon.Close();return ds.Tables[“temp”];

} catch { return null;}

基于C#的图书馆管理系统

数据访问层创建了两个类,BookAccess.cs和UserAccess.cs,分别实现访问存放书籍和用户的信息的功能,代码如下:

namespace BookDAL { public class BookAccess { public DataTable BookQuarry(Book b){ string str = “select * from BookInfo where BookType='” + b.Booktype + “' or BookName like'%” + b.Bookname + “%' or BookAuthor='%” + b.Bookauthor + “%'or BookID='” + b.Bookid + “'”;return Database.GetTable(str);} public DataTable QuarryAll(){ string str = “select * from BookInfo”;return Database.GetTable(str);} public DataTable QuarryMyBook(string id){ SqlParameter[] param = new SqlParameter[] { new SqlParameter(“@UID”,id)};string str = “select BookIssue,BookID,BookName,BookType,BookAuthor,BookPub,BookOutTime from BookOut where UID=@UID”;return Database.GetTable(str,param);}

public DataTable QuarryAllOut(){ string str = “select * from BookOut”;return Database.GetTable(str);} public SqlCommand QuarryByID(string id){ string str = “select * from BookInfo where BookID='” + id + “'”;return Database.Querry(str);} public int AddBook(Book b){ SqlParameter[] parm = new SqlParameter[] { new SqlParameter(“@BookID”, b.Bookid), new SqlParameter(“@BookName”, b.Bookname), new

基于C#的图书馆管理系统

SqlParameter(“@BookType”, b.Booktype), new SqlParameter(“@BookAuthor”, b.Bookauthor), new SqlParameter(“@BookPrice”, b.Bookprice), new

SqlParameter(“@BookPub”, b.Bookpub), new SqlParameter(“@BookContent”, b.Bookcontent), new SqlParameter(“@BookIssue”, b.Bookissue)};string str = “insert into BookInfo values(@BookID,@BookName,@BookType,@BookAuthor,@BookPrice,@BookPub,@BookContent,@BookIssue)”;int i = Database.ExecuteNoQuery(str, parm);return i;}

public int BookOut(Bookout bo){ SqlParameter[] parm = new SqlParameter[] { new SqlParameter(“@BookIssue”, bo.Bookissue), new SqlParameter(“@BookID”, bo.Bookid), new SqlParameter(“@BookName”, bo.Bookname), new SqlParameter(“@BookType”, bo.Booktype), new SqlParameter(“@BookAuthor”, bo.Bookauthor), new SqlParameter(“@BookPub”, bo.Bookpub), new SqlParameter(“@UIdentify”, bo.Uidentify), new SqlParameter(“@BookOutTime”, bo.Bookouttime),new SqlParameter(“@UID”, bo.Uid)};string str = “insert into BookOut values(@BookIssue,@BookID,@BookName,@BookType,@BookAuthor,@BookPub,@UIdentify,@BookOutTime,@UID)”;int i = Database.ExecuteNoQuery(str, parm);return i;} public int UpdateBook(Book b){ SqlParameter[] parm = new SqlParameter[] { new SqlParameter(“@BookID”, b.Bookid), new SqlParameter(“@BookName”, b.Bookname), new

SqlParameter(“@BookType”, b.Booktype), new SqlParameter(“@BookAuthor”, b.Bookauthor), new SqlParameter(“@BookPrice”, b.Bookprice), new

SqlParameter(“@BookPub”, b.Bookpub), new SqlParameter(“@BookContent”, b.Bookcontent), new SqlParameter(“@BookIssue”, b.Bookissue)};string str = “update BookInfo set BookName=@BookName,BookType=@BookType,BookAuthor=@BookAuthor,BookPrice=@BookPrice,BookPub=@BookPub,BookContent=@BookContent,BookIssue=@BookIssue where BookID=@BookID”;int i = Database.ExecuteNoQuery(str, parm);return i;} public int DeleteBook(string bookid){ string str = “delete BookInfo where BookID='” + bookid + “'”;19

基于C#的图书馆管理系统

int i = Database.ExecuteNoQuery(str);return i;} public DataTable DeleteMybook(string bookissue){ SqlParameter[] param = new SqlParameter[] { new SqlParameter(“@BookIssue”, bookissue)};string str = “delete BookOut where BookIssue=@BookIssue”;return Database.GetTable(str, param);} } } ·4.3 业务逻辑层类设计与实现

业务逻辑层(BookBLL)在体系架构中的位置很关键,负责关键业务的处理和数据传递,它处于数据访问层与表示层中间,起到了数据交换中承上启下的作用。由于层是一种弱耦合结构,层与层之间的依赖是向下的,底层对于上层而言是“无知”的,改变上层的设计对于其调用的底层而言没有任何影响。如果在分层设计时,遵循了面向接口设计的思想,那么这种向下的依赖也应该是一种弱依赖关系。因而在不改变接口定义的前提下,理想的分层式架构,应该是一个支持可抽取、可替换的“抽屉”式架构。正因为如此,业务逻辑层的设计对于一个支持可扩展的架构尤为关键,因为它扮演了两个不同的角色。对于数据访问层而言,它是调用者;对于表示层而言,它却是被调用者。

本管理系统创建BookMessage、UserMessage两个类,实现数据访问层和用户访问层之间的数据传递。

·4.4 界面设计及实现

4.4.1 登录界面及代码

本系统的用户分为普通用户(读者)和管理员用户,管理员用户

基于C#的图书馆管理系统

具有系统提供的所有权限,普通用户可以查询图书、借阅图书、查询个人借阅信息。系统登录界面是判断用户身份的一个交互窗体,在其中输入正确的用户名和密码后,单击“确定”按钮,可根据用户角色在主界面中拥有相应的权限。登录界面如图所示:

4.4.2 主界面及代码

菜单界面,添加MenuStrip菜单控件,实现各操作界面的连接,本图书馆管理系统有两个菜单界面,管理员窗口和读者窗口,完成不同权限用户的交互操作界面。

基于C#的图书馆管理系统

图书管理窗口,浏览图书信息,实现管理员对图书的增删改查操作。

基于C#的图书馆管理系统

添加图书窗口:完成图书的入库操作

管理员有权限可以将图书添加到数据库中,图书入库界面如上图所示。在分组框中添加标签和文本框,用来接收管理员输人的图书信息,以便保存到数据库中。代码如下:

public partial class AddBook : Form { public AddBook(){ InitializeComponent();} BookMessage bm = new BookMessage();Book books = new Book();private void button1_Click(object sender, EventArgs e){ if(textBox1.Text.Trim()== “" || textBox2.Text.Trim()== ”“ || textBox3.Text.Trim()== ”“ || textBox4.Text.Trim()== ”“ || textBox5.Text.Trim()== ”“ || textBox6.Text.Trim()== ”“ || textBox7.Text.Trim()== ”“ || comboBox1.Text.Trim()== ”“){ MessageBox.Show(”信息输入不完整,请重新输入“, ”确定“);} 23

基于C#的图书馆管理系统

else { books.Bookid = textBox1.Text.Trim();books.Bookname = textBox2.Text.Trim();books.Booktype = comboBox1.Text.Trim();books.Bookauthor = textBox5.Text.Trim();books.Bookprice = textBox4.Text.Trim();books.Bookpub = textBox3.Text.Trim();books.Bookcontent = textBox7.Text.Trim();books.Bookissue = textBox6.Text.Trim();SqlCommand cm = bm.qurryByID(books.Bookid);if(null!=cm.ExecuteScalar()){ MessageBox.Show(”此图书已存在“, ”确定“);} else { int i = bm.addBook(books);if(i!= 0)MessageBox.Show(”添加图书成功“, ”确定");} } 查询用户信息界面: 24

基于C#的图书馆管理系统

结论

本系统用SQL Server 2000做为后台数据库创建所需要的数据库和表,用C#语言进行连接,以及对数据库进行检索、添加和删除。从最后设计出的测试结果来看,效果比较明显,检索迅速、查找方便、可靠性高、存储量大、信息利用率高。该系统能够极大地提高图书馆管理的效率,优化图书馆的人力、物力,降低图书馆的管理成本,为企业人事管理提供帮助。

当然,要作为实际应用还有一些具体细节问题需要解决,还有一些功能需要改进。例如:没有实现多条记录的连锁删除和添加以及外部数据的导入功能;还没能实现学生借书时间的上限及超期罚款等功

基于C#的图书馆管理系统

能。在今后的工作、学习中我将认真总结经验教训,努力使自己成为一名技术过硬、工作严谨、思维活跃的工程人员,为提高人们的生活质量做出更大的贡献。

参考文献

[1]郑阿奇.SQL Server实用教程(第二版).北京:电子工业出版社.2005 [2]崔淼,陈明非.Visual C# 2005 程序设计教程.北京:机械工业出版社,2007.1 [3]段德亮,余键,张仁才。C#课程设计.北京:清华大学出版社,2008.6 [7]李月军,数据库管理与开发教程,2009,人民邮电出版社 [8]Visual C# 2005 从入门到精通,2007,电子工业出版社

第二篇:毕业设计 C#仓库管理系统摘要

渔阳建业有限公司仓库管理信息系统设计

与实现

摘要

在传统仓库管理过程中,表单填写与查询管理都非常的耗费人力物力,最后需要盘点或统计十分耗费时间和人力。同时由于采用手工操作,不可避免造成一些的错误。现在许多公司都采用计算机来管理仓库信息,避免了手工操作的不足。采用仓库管理信息对物资的出入情况进行管理,可以很方便地完成各类统计,为生产销售人员及时提供相关信息。

本系统主要实现仓库管理的自动化,包括货物的入库、出库、调库等操作,及货物有关信息的管理,如仓库单位管理、货物类别管理、供货商信息管理、客户档案管理和仓库管事操作员信息管理等。本系统采用sql 2005作为后台的数据管理系统,以visual studio 2005作为前端开发工具,对数据进行添加、修改、保存、删除等处理,具有很强的实用性。

本系统主要功能是以管理员身份登录能够完成对库存等诸多信息进行实时管理功能。系统以提供操作简单、方便、易懂易用为开发目标,用户界面友好,及具有高效的数据处理能力。

关键词:仓库管理信息管理系统自动化

The Design and Implementation ofYuyang Warehouse Management

Information System

ABSTRACT

In the traditional warehouse management process, it is very costly to

第三篇:基于C#的家政服务管理系统

C#系统开发

题目:家政服务管理系统

系别:计算机科学与技术系 班级:软件102 学号:101012241 姓名:吕明敬 辅导老师:孙波 日期:2012-6-14

摘要

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

随着计算机技术的高速发展,人们对计算机的依赖性越来越强,特别是用计算机开发的数据库以及数据管理系统在生活应用中表现得更为突出,为此开发此系统。通过使用家政服务管理系统,使家政服务店的管理工作系统化、规范化、自动化、简易化、智能化,从而达到提高家政服务管理效率的目的。

一、绪论

在现代社会中管理的作用越来越显得重要和突出。一般来讲,管理通过计划、组织、指导与领导、控制等手段,为组织制定目标,应用组织的各种要素,以实现组织的目标。传统的管理活动中,把人、才、物作为企业的主要资源。但是随着社会化大生产的不断扩大和社会对产品多样化的需求,人们越来越重视信息在生产经营及企业管理中的作用,并把它当做企业的一种极其重要的资源,人们称之为“信息资源”,信息资源的处理已经成为当今世界上一项主要的社会活动。

本世纪以来,由于社会生产力的迅速发展和科学技术的突飞猛进,人们进行信息交流的深度和广度不断增加,管理所需要的信息量急剧增长,同时对信息的处理要求及时、准确,这导致了传统的信息处理方法和手段已不能适应现代管理的需要;电子计算机的诞生和在信息处理中的应用,标志着一个崭新时代——“信息时代”的开始,它使企业管理现代化成为可能。

一定意义上说,管理信息系统的产生和发展是建立在电子计算机基础之上的。硬件方面,自1946年第一台电子计算机诞生以来,计算机技术的发展可谓日新月异,从庞大的只能在实验室里供研究使用的计算机到如今能适应不同环境满足不同需求的各种各样的计算机;运算速度从每秒几千次到每秒几百亿次;处理器从焊有上百万个电子管的大的惊人的电子板到只有指甲大小的集成电路;现在计算机在硬件方面的发展已达到了每三个月更新换代一次的惊人速度。软件方面,也已从机器语言、汇编语言、高级语言发展到现如今的第四代语言——非结构化、面向对象、可视化的语言。管理信息系统的发展 管理信息系统通过对企业当前运行的数据进行处理来获得有关信息,以控制企业的行为;利用过去和现在的数据及相应的模型,对未来的发展进行预测;能从全局目标出发,对企业的管理决策活动予以辅助。从工业发达国家来看,管理信息系统的发展经历了以下几个阶段。

第一阶段:(1953年至1965年)单项数据处理阶段,也称电子数据处理(EDP)阶段。这是电子计算机在管理领域应用的起步阶段。这一阶段,由于当时计算机硬、软件的限制,数据处理的性质只是使用计算机代替人的手工劳动,进行简单的单项数据处理工作,如计算工资、数据统计、报表登记、编制计划等。这个阶段的处理方式主要是集中式的批处理。

第二阶段:(1965年至1970年)综合数据处理阶段,也称事务处理系统(TPS)阶段。这个阶段计算机硬、软件有了很大的发展,出现了多用户的分时系统,计算机开始应用于对某一个管理子系统的控制,并具有一定的反馈功能。如库存管理系统、生产调度系统、学籍管理系统等。这个阶段的处理方式已发展为面向终端的联机实时处理。

第三阶段:(1970年至今)管理信息系统(MIS)阶段。这个阶段是在企业中全面的使用计算机把各种管理子系统的功能集中起来,构成了计算机化的全方位的信息系统,即现代管理信息系统。这个阶段的处理方式是在数据库和网络基础上组成分布式处理系统。它的特点是使用数据库和分时处理的计算机网络,并充分利用运筹学等数学方法,实现了硬件、软件和数据资源的共享。

总的说来,计算机技术的发展,其性价比大幅的下降,使得其被大量广泛的使用。针对现实中的各种应用需求,相应的产生很多技术体系、技术标准,如J2EE、。NET,COM/COM+等。这又大大的推动了企业的信息化进程。其影响可以归纳为如下两点:

(1)计算机已经成为我们学习和工作的得力助手:

今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:

①计算机可以代替人工进行许多繁杂的劳动; ②计算机可以节省许多资源;

③计算机可以大大的提高人们的工作效率; ④计算机可以使敏感文档更加安全,等等。(2)开发家政服务管理信息系统的意义

家政服务管理系统的使用,加强对客户资料的管理。通过对客户使用情况的分析,可以掌握用户的喜好,而有针对性的采购家政,减少了不必的家政的购置,加快资金的流转速度。另一方面,家政服务店的管理工作系统化、规范化、自动化、简易化、智能化,从而提高家政服务管理效率。

二、需求分析

1、系统的初步调查:

建立一个好的管理信息系统,必须要有一个好的管理基础。所谓好的管理基础,指的是合理的管理体制、完善的制度、科学的管理方法和准确的原始数据。与企业管理相比,我国的企业管理在这方面占有较大的优势。

应该看到,我国发展管理信息系统的时间还不长,设计开发的实际经验也很不足。要使管理信息系统在企业建立、使用,并从中获得巨大的效益,必须具备以下基本条件。

(1)领导重视、管理人员积极性高

管理信息系统的建立,需要企业提供资源、经费、人力和时间,要涉及管理体制、规章制度的变化、调整和大量数据的编码、表格形式协调等工作,这些企业管理的全局性问题必须在企业高层领导的重视和支持下才能获得解决。

管理人员的积极性也是不容忽视的条件。管理人员是管理信息系统的直接用户,它们的积极性和配合程度,关系到管理信息系统的使用效果和生命力。

(2)具备一定的资源条件

管理信息系统的资源主要包括计算机硬、软件设备,不间断电源(UPS)、空调等辅助设备和计算机房设施等,有条件的企业应尽量发掘和利用现有计算机设备。管理信息系统的费用可分为开发费用和运行费用,前者包括设备购置、人员工资、培训和开发过程中的一系列支出等,后者包括机器运行、维护和修理费,人员工资和水、电、纸张和软盘等日常开支。

要有足够的资金保证,才能顺利完成整个系统的开发工作。当然,资金的投入也可以在开发和运行过程中分阶段进行,在逐步取得阶段成果的基础上补充更多的资源。(3)组织一个强有力的开发小组

管理信息系统的质量,在某种意义上直接取决于开发人员的水平和素质。开发小组的人数因系统规模大小而异,通常包括系统分析员、程序员、数据录入员和硬、软件维护人员。由于管理信息系统的开发通常是从逐个子系统分期分批进行的,同时,已开发完毕投入使用的系统仍需不断维护、改进和完善,因此这个开发小组应该在相当长的时期内存在。

在正式的立项之前必须进行可行性分析,而可行性分析主要是对现行系统进行充分的调查研究,细致了解现行系统的现状流程,以及存在的主要问题,在此基础上提出新的系统的逻辑模型。

详细的现状调查目的是为了弄清现行系统的基本功能及信息流程,为了新系统逻辑模型提供基础。它是建立新系统的前期工作,也是进行系统分析和设计的重要基础。因此要建立新的家政管理系统就必须对家政店现行租借流程进行分析,以导入逻辑模型,进尔形成目标系统的逻辑模型。

2、系统的可行性分析

系统的可行性分析包括两个详细的部分:分析开发新的系统的必要性和可能性。必要性在前面系统初步调查中已经作了详细的分析,在这里就不再赘述;可能性主要包括经济可行性、技术可行性和运行可行性三个方面。

经济可行性研究是对组织的经济现状和投资能力进行分析,对系统建设运行和维护费用进行估算,对系统建成后可能取得的社会和经济效益进行估计。

技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。家政服务管理系统用的是VF开发语言,调试相对简单,当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前单机模式相对发展成熟,故软件的开发平台成熟可行。硬件方面,它们速度快、容量大、可靠性能高、价格低,完全能满足系统的需求。

运行可行性是对组织结构的影响,现有人员和机构、设施设施和环境对系统的适应性及人员培训补充计划的可行性。当前我们信息化技术已经相当普及,各类操作人员水平都有相当的高度,所以在运行上是可行性的。

3、系统的开发步骤

一般说来,管理信息系统的建立与应用可以划分成总体规划、系统开发和系统运行三个阶段,其中系统开发阶段还可进一步分为系统分析、系统设计和系统实施等工作环节。上述各个阶段排列成一个严格的线性开发序列,在每个工作阶段均产生完整的技术文档作为下一阶段工作的指导和依据,每一阶段都应对文档进行评审,确信该阶段工作已完成并达到要求后才能进入下一阶段,同时在以后的工作中不能轻易改变前面经过评审的成果。

上述开发方式的主要优点是便于开发工作的组织和管理,并且可大大降低管理信息系统开发的复杂性。国内外许多系统开发的实例都证明这是一种行之有效的开发方式。

国外曾有人对一些软件项目开发各阶段的工作量进行了统计,结果表明,在开发过程中各工作阶段所占全部工作量的比重分别达到系统分析:系统设计:编程:模块调试:系统调试=20%:15%:20%:25%:20%。由此可见,程序编写在开发工作中只占很小比例,而调试工作却占整个开发工作量的一半左右,因此“系统开发就是编程”的习惯说法显然是片面的。另据统计,在建立管理信息系统的三个阶段中,总体规划和系统开发阶段的工作量约占整个工作量的2/3,而运行、维护阶段要占1/3,这说明一个管理信息系统开发后,仍应十分重视它的维护工作,以便使系统不断完善并充分发挥其作用。

4、对本系统的分析 对本系统的目标设计

通过使用家政服务管理系统,使家政服务店的管理工作系统化、规范化、自动化、简易化、智能化,从而达到提高家政服务管理效率的目的。

(1)开发设计思想:

①尽量利用基础软硬环境,采用先进的管理系统开发方案从而达到充分利用现有资源,提高系统开发水平和应用效果的目的;

②系统应符合家政服务管理的规定,满足家政店相关人员日常使用需要,并达到操作过程中的直观、方便、实用、安全等要求;

③系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员进行补充、维护;

④系统应具有各种票据的打印功能,并有这些票据的存根,报表; ⑤系统应具备数据库维护功能,及根据用户需求进行数据的删除、备份等操作。

(2)现状分析

当家政公司的客户较少时,能较好的安排员工为客户提供服务。但当客户较多时,对客户信息及员工的信息的管理,会花费大量人力及物力,结果往往不理想,比如,不能及时更新客户联系信息,以致使不能及时的联系客户,更甚者失去客户。其次,在对客户的服务进行计费,对员工的工作进行计酬,往往存在着分岐。

(3)系统功能分析

①员工资料管理:可以完成对员工信息的查询,添加,删除,修改等操作。②员工服务安排管理:可以根据员工编号查看员工具体的分工。③客户服务跟踪管理

④客户查询:提供客户对基本信息的查询。⑤员工查询:可以查看员工的基本信息。⑥相关表册打印:打印相关联的信息。

三、系统设计

1、功能模块

管理信息系统设计阶段的主要目的是将系统分析阶段所提出的反映了用户信息需求的系统逻辑方案转换成可以实施的基于计算机与通信系统的物理(技术)方案。

具体要求对系统进行功能分解,不断下去,直到分解成含义明确,功能单一的单元功能模块,从而绘制出系统的功能模块图,即HIPO图。家政服务管理信息系统的HIPO图如下:

家政服务管理系统用户操作公司概况数据查询报表打印添加用户删除用户删除用户公司信息重新登录服务情况客户预约查询服务项目价格员工信息客户预约添加客户资料用户切换退出系统

2.数据库概念结构设计

在数据库设计中,先要对系统分析所得的数据字典中的数据存储进行分析,然后得出系统的关系模式,可以采用实体——联系图(简称E——R图)的方法进行数据结构的描述。E——R图由实体、属性、联系三部分组成。

3、数据表如下:

普通用户表:

公司信息表:

管理员表:

员工信息表

服务项目价格表:

客户意见表:

服务情况表:

预约表:

客户资料表:

4、数据库的安全性、完整性、并发控制和恢复

信息数据是是一种非常重要的资源,因此保证数据库的安全可靠、正确有效是非常重要的问题。一般的数据库管理系统(DBMS)都有提供了一定的数据保护功能。数据库保护也称为数据控制,主要包括数据的安全性、完整性、并发控制和数据库的恢复

四、系统编码与实现

1、登录界面的设计及实现

2、删除用户

3、添加员工信息

4、服务信息表

服务情况代码:

namespace jiazheng { public partial class Form10 : Form { SqlDataAdapter adapter;

public Form10(){ InitializeComponent();this.StartPosition = FormStartPosition.CenterScreen;}

private void Form10_Load(object sender, EventArgs e){

// TODO: 这行代码将数据加载到表“dbbaseDataSet.服务情况表”中。您可以根据需要移动或移除它。

this.服务情况表TableAdapter.Fill(this.dbbaseDataSet.服务情况表);BindingSource tableBindingSource = new BindingSource();tableBindingSource.DataSource = dbbaseDataSet.服务情况表;

}

private void button1_Click(object sender, EventArgs e){

string xiangmu = textBox1.Text;string bianhao = textBox2.Text;string name = textBox3.Text;string dianhua = textBox4.Text;string diqu = textBox5.Text;string sql = string.Format(“insert into 服务情况表(服务项目,客户编号,客户姓名,联系电话,居住地区)values('{0}','{1}','{2}','{3}','{4}')”,xiangmu ,bianhao ,name ,dianhua ,diqu);try { SqlCommand command = new SqlCommand(sql, Class1.connection);Class1.connection.Open();int result = command.ExecuteNonQuery();if(result!= 1){ MessageBox.Show(“添加失败!”);} else { MessageBox.Show(“添加成功!”);} } catch(Exception ex){ MessageBox.Show(ex.Message);Console.WriteLine(ex.Message);} finally { Class1.connection.Close();}

}

private void button2_Click(object sender, EventArgs e){ if(dataGridView1.SelectedRows.Count == 0){ MessageBox.Show(“请先单击最左边的空白列选择要删除的行,可以按住同时选中多行”);} else { if(MessageBox.Show(“确实要删除选定的行吗?”, “小心”, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)== DialogResult.Yes){

string name = this.dataGridView1.SelectedRows[0].Cells[0].Value.ToString();MessageBox.Show(name);string sql = “delete from 服务情况表 where 服务项目='” + name + “'”;adapter = new SqlDataAdapter(sql, Properties.Settings.Default.dbbaseConnectionString);adapter.Fill(dbbaseDataSet.服务情况表);bindingSource1.DataSource = 服务情况表BindingSource;dataGridView1.DataSource = bindingSource1;textBox1.Clear();textBox2.Clear();textBox3.Clear();textBox4.Clear();textBox5.Clear();} }

}

private void button3_Click(object sender, EventArgs e){ this.Validate();try {

MessageBox.Show(“保存成功!”);this.服务情况表TableAdapter.Fill(dbbaseDataSet.服务情况表);

} catch(Exception ex){ MessageBox.Show(ex.Message, “保存失败!”);}

}

private void groupBox1_Enter(object sender, EventArgs e){

}

private void label2_Click(object sender, EventArgs e){

}

private void label1_Click(object sender, EventArgs e){

}

private void label3_Click(object sender, EventArgs e){

}

private void label5_Click(object sender, EventArgs e){

}

private void label4_Click(object sender, EventArgs e){

} } }

5、预约项目表

6、用户操作表

7、主界面

8、公司信息表

9、客户预约表

客户预约代码:

namespace jiazheng { public partial class Form11 : Form { SqlDataAdapter adapter;

public Form11(){ InitializeComponent();this.StartPosition = FormStartPosition.CenterScreen;}

private void Form11_Load(object sender, EventArgs e){ // TODO: 这行代码将数据加载到表“dbbaseDataSet.预约表”中。您可以根据需要移动或移除它。

this.预约表TableAdapter.Fill(this.dbbaseDataSet.预约表);// TODO: 这行代码将数据加载到表“dbbaseDataSet.预约表”中。您可以根据需要移动或移除它。

this.预约表TableAdapter.Fill(this.dbbaseDataSet.预约表);BindingSource tableBindingSource = new BindingSource();tableBindingSource.DataSource = dbbaseDataSet.预约表;}

private void button1_Click(object sender, EventArgs e){ string yuyuehao = textBox1.Text;string fuwuming = textBox2.Text;string kehuming= textBox3.Text;string haoma = textBox4.Text;string dianhua = textBox5.Text;string sql = string.Format(“insert into 预约表(预约号,服务项目名,客户名称,楼牌号码,联系电话)values('{0}','{1}','{2}','{3}','{4}')”,yuyuehao,fuwuming,kehuming,haoma,dianhua);try { SqlCommand command = new SqlCommand(sql, Class1.connection);Class1.connection.Open();int result = command.ExecuteNonQuery();if(result!= 1){ MessageBox.Show(“添加失败!”);} else { MessageBox.Show(“添加成功!”);} } catch(Exception ex){ MessageBox.Show(ex.Message);Console.WriteLine(ex.Message);} finally { Class1.connection.Close();} }

private void button2_Click(object sender, EventArgs e){ if(dataGridView1.SelectedRows.Count == 0){ MessageBox.Show(“请先单击最左边的空白列选择要删除的行,可以按住同时选中多行”);} else { if(MessageBox.Show(“确实要删除选定的行吗?”, “小心”, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)== DialogResult.Yes){

string name = this.dataGridView1.SelectedRows[0].Cells[0].Value.ToString();MessageBox.Show(name);string yuyuehao = textBox1.Text;string sql = “delete from 预约表 where 预约号='”+yuyuehao+“'”;adapter = new SqlDataAdapter(sql, Properties.Settings.Default.dbbaseConnectionString);adapter.Fill(dbbaseDataSet.预约表);bindingSource1.DataSource = 预约表BindingSource;dataGridView1.DataSource = bindingSource1;textBox1.Clear();textBox2.Clear();textBox3.Clear();textBox4.Clear();textBox5.Clear();} }

}

private void button3_Click_1(object sender, EventArgs e){ this.Validate();try {

MessageBox.Show(“保存成功!”);this.预约表TableAdapter.Fill(this.dbbaseDataSet.预约表);

} catch(Exception ex){ MessageBox.Show(ex.Message, “保存失败!”);}

}

} }

五、实验小结:

通过本次做的家政服务管理系统,在设计期间,我也遇到了不少的困难和问题,例如,知识掌握的不牢固,不能灵活的运用所学的知识,实践动手能力不强等,但是,本着学习和实践的目的,我认着的查阅了相关的资料,并积极,虚心的向老师和同学请教,解决了不少的问题,在解决问题的同时,还使我学习到了更多的专业知识,也使我对所学知识掌握的更加的牢固。也使因为这样,才使我提高了独立分析问题,解决问题的能力,也提高了我的动手操作的能力。

第四篇:纸质图书馆管理系统

纸质图书馆管理系统V3.0

纸质图书馆管理系统V3.0经过严格的软、硬件测试和大规模应用测试过程,是一款功能性强、易用性好、兼容性强、稳定性高于一身的图书管理软件。科迅纸质图书馆管理系统V3.0是专门针对各中小学图书馆自动化管理而研发的,适用于各中小学、高中及企事业单位的中小型图书馆,支持图书馆藏量50万册以上。

使用纸质图书馆管理系统V3.0这个系统的用户不需要购买服务器、不需要系统维护、不用需要担心数据安全,只要有一台能上网的电脑安装本系统后,就能实现图书馆图书采购,编目,典藏,流通,借阅,归还,报表统计馆藏查询等的计算机自动化管理。

纸质图书馆管理系统V3.0有以下特点:

1、专业与适用性相结合,可操作性强:系统既遵照国家相关标准,同时将标准进行精简和固化到系统模块,使图书管理员不需要太强的专业知识即可迅速适应和使用,后期图书室的扩建都显得简单易行。

2、安全性及可扩展性强:系统核心采用目前最先进的前端开发工具Visual C++开发,所有软件部件全部为本地代码,不采用任何其他外部构件,从而保证了稳定性和可靠性,系统提供手动及自动定时数据备份功能。系统支持条码、IC卡、ID卡,也可与学校一卡通无缝兼容。

3、图书编目、上架效率高:提供近100万条编目数据支持,支持Z39.50协议,可从国家图书馆网络数据库免费下载图书信息,编目速度高,从而极大地减轻编目工作量。

4、强大的报表统计和打印功能:系统提供了多个图书馆管理常用报表,亦可根据需要自定义报表,方便随时查看和打印图书基本信息及流通。

5、造价低:对运行环境要求不高,支持Windows 98以上所有操作系统。自带读者证、书标、条形码、目录卡片等的制作系统,节约外购成本。

第五篇:C#学生成绩管理系统课程设计剖析

目录

一、设计目的.............................................1

二、需求分析.............................................2 2.1系统需求简介.......................................2 2.1.1系统目标......................................2 2.1.2功能需求分析..................................2 2.1.3性能需求分析..................................2 2.2系统业务功能分析...................................2 2.2.1具体分析有两个角色:老师和学生................3 2.2.2流程图.......................................3

三、模块分析及设计.......................................3

四、数据库设计...........................................4 4.1数据字典..........................................4 4.1.1数据流.......................................4 4.1.2 数据存储.....................................4 4.2 E-R图...........................................5 4.3系统数据库的设计...................................6

五、设计过程及要点.......................................9 5.1数据库及窗体设计...................................9 5.2 主要代码........................................11

六、设计总结............................................12

七、参考资料............................................12

一、设计目的

为了提高高校学生成绩信息的管理效率,方便学生和教师对学生成绩信息进行查询、方便学校里面管理员去管理和查询学生信息,建立一个学生成绩管理系统,使学生信息管理工作规范化,系统化,程序化,避免学生成绩管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改学生信息是必须而且十分迫切的工作。本次课程设计题目为《学生成绩管理系统》,涉及成绩管理系统的登录界面、老师对学生成绩的查询、学生对学生成绩的查询、以及老师对学生成绩的增删改查分析统计等内容。本功能实现对学生信息、教师信息情况信息的管理和统计、课程信息和成绩信息查看及维护。

本课程设计的目的是使学生能熟练掌握简单的简单Windows窗体应用程序的设计和数据库的应用,希望通过本次课程设计锻炼学生使用C#语言解决实际问题的能力。本系统后台数据库采用Microsoft SQL Server 数据库,该数据库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大,效率高;前台采用Microsoft 公司的Visual Studio 2008作为主要开发工具,可与SQL Server 2005数据库无缝链接。本报告详细的介绍了学生信息管理系统的开发过程,主要涉及到的工作如下:设计目的、需求分析、模块分析及设计、数据库设计、制作过程及要点、设计总结。

二、需求分析

2.1系统需求简介

2.1.1系统目标

根据查询条件实现学生信息的查询 学生选课信息查询、成绩信息的查询

(3)学生信息、课程信息、成绩信息的增加、删除、修改(4)对基本信息完成增加、删除、修改时,需注意表与表之间的关联

2.1.2功能需求分析

本系统的功能需求分析如下:

学生信息查询:学生可以根据学号、姓名、专业进行查询.学生信息管理:主要是用于学生信息更新、插入、删除; 学生成绩录入:用于学生成绩管理,录入学生成绩,也可以更新。

2.1.3性能需求分析

(1)登录、用户界面需求:简洁、易懂、易用、友好的用户界面。(2)安全保密性需求:只有凭借用户名和密码登陆系统,才能进行信息的管 理等。

2.2系统业务功能分析

2.2.1具体分析有两个角色:老师和学生

学生只能有查询的权利,其中包括按学号查询,按姓名查询和按课程号查询;

而老师则有查询以及对学生成绩增删改查分析统计功能,而分析主要是分析每一课程的及格人数,不及格人数和及格率等,统计则是统计各个班级和课程成绩的升序排序等。

2.2.2流程图

图一 总流程图

三、模块分析及设计

《学生成绩管理系统》包括 5个模块:登录及主界面,成绩添加,成绩查询,成绩增删改,成绩分析与统计。登陆及主界面:用户人员在登录界面中输入用户名与密码。通过用户名与数据库里的用户表相比配,将学生与教师区分开,二者各自进入自己的页面。二者拥有各自权限,分别拥有不同的功能。

成绩添加:主要实现学生成绩的添加功能,将学生的各种信息添加到数据库中。

成绩查询:主要三种方式,按学号,按姓名,按课程号查询学生的成绩。

成绩增删改:主要是老师对学生的各项信息或成绩的修改,删除,添加等,以实现学生成绩管理系统的及时更新。

成绩分析统计:对学生成绩的分析统计包括各个学生或课程的及格人数,不及格人数,及格率,学生成绩的排序等等。

四、数据库设计

4.1数据字典

4.1.1数据流

课程信息:课程号,课程名称,学期,课程时间,学分等信息 学生信息:学号,姓名,专业,性别,生日,年龄,现状等信息 教师信息:教师编号,姓名等信息 4.1.2 数据存储

成绩表:包括学生姓名,学号,课程号,成绩等信息 登录信息表:包括学生学号,密码及教师编号,密码等信息 4.2 E-R图

图二 学生信息E-R图

图三 课程信息E-R图

图四 教师信息E-R图

图五 总E-R图

4.3系统数据库的设计

综合以上分析,要实现系统功能,应该建立如下表:

表一 课程表

表二 学生表

表三 成绩表

表四 教师表

表五 用户表

五、设计过程及要点

这次课程设计我主要做数据库和登陆界面的设计并实现该系统的登录功能。

5.1数据库及窗体设计

其中数据库我一共设计了五个表,分别是学生表,课程表,成绩表,教师表和用户表,这些表的详细信息已经在上面有了介绍。

然后就是登录功能的实现。

图六 登录窗体

登录窗体主要用了3个label控件,2个textbox控件,2个radioButton控件,2个button控件,实现了教师跟学生的登录,用户名跟密码输入正确后,选择老师或者学生后分别进入各自的主界面,在主界面中可以对学生的成绩进行查询,删除等等操作。老师和学生的主界面分别如下图:

图七 学生主界面

图八 教师主界面

5.2 主要代码

namespace WindowsFormsApplication1 { public partial class 登录 : Form { public 登录(){

InitializeComponent();sqlhelper = new Sqlhelper(“server=.;database=xscj;integrated security=true”);} Sqlhelper sqlhelper private void button1_Click(object sender, EventArgs e){ string sn;string str = “server=.;database=xscj;integrated security=true”;SqlConnection conn = new SqlConnection(str);conn.Open();

if(radioButton1.Checked){ textBox1.Text.Trim()+ “'and password='” +textBox2.Text.Trim()+ “'”;SqlCommand comm = new SqlCommand(cstr, conn);SqlDataReader dr = comm.ExecuteReader();if(dr.Read()){ sn = textBox1.Text.Trim();教师界面 f1 = new 教师界面();f1.Show();this.Visible = false;} else { MessageBox.Show(“输入有误,请重新输入!”);textBox1.Text = “";textBox2.Text = ”“;} } if(radioButton2.Checked){ string cstr = ”select * from [user] where type='教师'and uid='“ + 11

string cstr = ”select * from [user] where type='学生'and uid='“ +textBox1.Text.Trim()+ ”'and password='“ + textBox2.Text.Trim()+ ”'“;SqlCommand comm = new SqlCommand(cstr, conn);SqlDataReader dr = comm.ExecuteReader();if(dr.Read()){ sn = textBox1.Text.Trim();学生界面 f2 = new 学生界面();f2.Show();this.Visible = false;} else { MessageBox.Show(”输入有误,请重新输入!“);textBox1.Text = ”“;textBox2.Text = ”";} } conn.Close();conn.Dispose();} } }

六、设计总结

为期一周的课程设计结束了,在老师和同学的帮助下,我基本完成系统的设计。我们小组按照系统工程软件设计的要求,从设计目的、需求分析、模块分析及设计、数据库设计等各个步骤,分步完成系统的各项任务,实现了系统中的学生信息查询,学生信息增删改,学生信息添加等模块的功能。

在这短短的五天里收获如下: 巩固和加深了对C#的理解,提高综合运用本课程所学知识的能力。

2、培养了我选用参考书,查阅手册及文献资料的能力。培养独立思考,深入研究,分析问题、解决问题的能力。

3、通过实际编译系统的分析设计、编程调试,掌握应用软件的分析方法和工程设计方法。

4、更加深刻的了解了小组团队协作的重要性,只有整个小组的人通力合作才可能会完成一个项目并且进步。

根据我在课程设计中遇到的问题,我将在以后的学习当中注意以下几点:

认真上好专业实验课,多在实践中锻炼自己。

2、写程序的过程中要考虑周到,严密。

3、在做设计的时候要有信心,有耐心,切勿浮躁。

4、认真的学习课本知识,掌握课本中的知识点,并在此基础上学会灵活运用。

5、在课余时间里多写程序,熟练掌握在调试程序的过程中所遇到的常见错误,以便能节省调试程序的时间。

七、参考资料

[1] 钱能.C++程序设计,2008,16(2):233-237 [2] 钱能.C++程序设计试验指导,2008.34(3):35-38 [3] 谭浩强.C程序设计.北京:清华大学出版社,2001 13

下载基于C#的图书馆管理系统(5篇范例)word格式文档
下载基于C#的图书馆管理系统(5篇范例).doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    图书馆管理系统课程设计目录

    目录[摘要] 2 一 系统概述 ………………………………………………………………………2 1系统分析 …………………………………………………………………………2 1.1图书馆管......

    图书馆管理系统可行性研究报告

    图书馆管理系统可行性研究报告 标签: 分类:MyDocument 杂谈 1. 引言1.1编写目的 本报告的目的是研究本系统的总体需求、实现方案,并分析开发系统的可行性,为决策者提供是否开发......

    A图书馆管理系统毕业论文(摘要)

    中山大学南方学院2012届本科生毕业论文 VTB图书馆管理系统毕业设计(论文) 摘要随着计算机技术的飞快发张,电子信息化慢慢替代了企业管理的传统管理手法。这是一种现代流行的经......

    图书馆管理系统调研报告

    流通企业信息化建设及分析摘要本文阐述了医药流通企业信息化建设的必要性建设步骤,以及信息化建设给企业带来的效益分析.关键词:医药流通企业;信息化建设;企业发展1、 企业......

    基于RFID的图书馆管理系统

    基于RFID的图书馆管理系统 对于一个高校来说,图书馆的地位举足轻重,其藏书量、电子资料状况、信息服务水平及管理先进性都体现着一个学校的综合实力。图书馆服务于全校教师的......

    图书馆管理系统数据字典

    图书馆管理系统数据字典 数据流描述: 数据流编号:D01 数据流名称:图书采编信息 简述:图书采编信息 数据流来源:图书购买后,由图书馆采编人员整理后,输入计算机 数据流去向:采编管理......

    图书馆随书光盘管理系统

    一、问题提出 随着计算机技术、信息存储技术、多媒体技术的迅速发展,基于光电技术的电子出版物大量涌现,许多图书在出版纸质印刷品的同时,会随书附带一张学习或实例、解说用的......

    佼佼者图书馆管理集成系统范文

    佼佼者图书馆管理集成系统佼佼者图书馆管理集成系统简介 佼佼者图书馆管理集成系统的数据库采用目前业界通用的商用数据库平台—SQL Server,SQL Server是美国微软公司开发的......