机房管理系统(数据库课程设计)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中北大学
数据库课程设计
说明书
学院、系:软件学院
专业:软件工程
学生姓名:*** 学号:********* 设计题目:软件学院机房管理系统
起迄日期: 2012年5月28日- 2012年6月22日****:***
2012 年 6月 19 日
1.需求分析
一本系统信息要求:
在Windows平台下,使用面向对象程序设计语言(C#),结合SQL Server进行开发一个数据库管理系统—软件学院机房管理系统。实现软件学院机房上机管理自动化,简洁化。
该系统可以随时添加新用户,而且还可以对用户的信息进行查询,对上机情况进行查询。同时具有上机和下机管理功能。具体情况如下:
1.该系统要求具有上下机功能。
(1)实现无人值守,通过验证身份做到自动判断是否允许学生、管理员上机;
(2)学生上即使可以对上机情况进行查询
(4)用户上下机时更新机器状态表信息
(3)学生下机时自动将该学生所用机器电源关掉。
2.该系统要方便管理。
(1)根据学生机、器信息的不同,记录每个学生、机器的信息
(2)能够对学生、机器信息进行操作
3.该系统要求根据学生信息
(1)对学生信息进行查询
(2)对上机情况进行查询
4.该系统要求系统界面友好。
二本系统开发设计思想:
1.该系统先对机房现状进行统计,收集机房机号、所处状态等信息,必要时对机房机器作增减操作。
2.对学生信息进行统计,了解学生库中有哪些学生,并对每个学生按照班级进行分组,以备学生上机时确定学生的班级号和学号。
3.学生可以通过该系统查询自己的上机时长。
4.在学生下机后,系统要求能够自动的关闭学生计算机电源。
6.系统还应为管理员提供汇总服务,管理员可以查询指定学生、机器信息,全体学生、机器信息。
三本系统功能处理:
(1)用户上下机操作
(2)学生信息管理
(3)机器状态管理
(4)信息的查询管理
四本系统分组任务安排
组长:**** 功能(1)
组员:*** 功能(3)
*** 功能(4)
*** 功能(2)
2.概要设计
一本系统主要功能模块划分:
(1)用户上下机操作:主要包含用户上机功能,加强对用户身份的识别,使得数据库中的信息有安全保障,有学生下机功能,下机后自动关机,其中包含上下机时对数据库中用户的机器状态的更新功能;
(2)学生信息管理:主要对学生的管理,包含学生信息的添加,删除,修改功能;
(3)机器状态管理:主要对机房机器的管理,包含管理机房机器的添加,删除功能;
(4)信息查询管理:主要对学生包含对学生和机房机器的信息查询;
二
三数据库需求分析
上下机操作依赖于学生信息和机器状态
根据上述数据库之间的对应及依赖关系,可确定数据库所必备信息的以下几个方面(1)学生信息(学号,班号,处分记录)
(2)机器信息(机号,状态,上机时间,下机时间,用户)
(3)用户信息(用户名,密码,用户身份)
3数据库概念结构设计
一概念结构设计E-R图
五数据库逻辑结构设计
数据字典是各类数据描述的集合,它是进行详细的数据收集和数据分析后所获得的主要成果,是关于数据库中数据的描述,即对元素的描述。
数据字典是在系统分析阶段建立,在数据库设计过程中不段修改、充实、完善的。
针对本系统,通过机房管理内容和过程分析,设计的数据项和数据结构如下。
(1)学生信息(学号,班号,处分记录)
(2)机器信息(机号,状态,上机时间,下机时间,用户)
(3)用户信息(用户名,密码,用户身份)
总体表预览
学生信息表
表5机器状态表
用户信息表
4系统功能实现
一编写代码
using System;
using System.Collections.Generic;
using ponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
1用户登录模块
此模块要求用户匹配数据库数据登录后根据身份不同进入不同的界面,并要求更新机器状态表信息。
namespace WindowsFormsApplication1
{
public partial class用户登录 : Form
{
public用户登录()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string userName = txtName.Text;
string password = txtPwd.Text;
string connString = @"Data Source=DARLING-PC\SQLEXPRESS;Initial Catalog=软件学院机房管理系统;Integrated Security=True";
SqlConnection connection = new SqlConnection(connString);
//获取用户名和密码匹配的行的数量的SQL语句
string sql = String.Format("select count(*) from [用户信息] where txtName='{0}'and txtPwd='{1}'", userName, password);
try
{
connection.Open();//打开数据库连接
SqlCommand command = new SqlCommand(sql, connection);//创建command对象
int num = (int)command.ExecuteScalar();//执行查询语句,返回匹配的行数
connection.Close();
if (num > 0)
{
//如果有匹配的行,则表明用户名和密码正确
MessageBox.Show("欢迎进入软件学院机房管理系统", "登陆成功",