ORACLE学生成绩管理系统.docx
《ORACLE学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《ORACLE学生成绩管理系统.docx(26页珍藏版)》请在冰豆网上搜索。
ORACLE学生成绩管理系统
存档资料 成绩:
华东交通大学理工学院
课程设计报告书
所属课程名称ORACLE数据库
题目 学生成绩管理系统
分院 电 信分 院
专业班级 计算机科学与技术ﻩ
学 号
学生姓名
指导教师
2013 年 1月4日
华东交通大学理工学院
课程设计(论文 )任务 书
专业计算机科学与技术班级 姓名
一、课程设计(论文)题目学生成绩管理系统
二、课程设计(论文)工作:
自2012年 12月 31日起至 2013年1月4日止。
三、课程设计(论文)的内容要求:
1、学生成绩管理系统的设计
1.在对数据库理论及知识理解的基础上,针对具体的实际问题,设计合适的数据库表。
2.给出系统的概要设计、详细设计,完成相关的算法描述。
3.设计必要的视图、触发器、存储过程
4.完成规范化的课程设计说明书的编写
本设计是我和戈振军2个合作完成,我主要负责各个模块的界面设计与源代码的编译,最后测试系统的运行。
戈振军(20090210440123)主要负责各种数据的收集整理,数据库的设计,E-R图的设计与系统框架的搭建。
学生签名:
2013年1月4日
课程设计(论文)评阅意见
序号
项目
等 级
优秀
良好
中等
及格
不及格
1
课程设计态度评价
2
出勤情况评价
3
任务难度评价
4
工作量饱满评价
5
任务难度评价
6
设计中创新性评价
7
论文书写规范化评价
8
综合应用能力评价
综合评定等级
评阅人 职称
20年 月 日
ﻬ目录
1.1系统背景ﻩ4
1.2可行性研究5
第二章需求分析5
2.1运行环境:
ﻩ5
2.2数据需求ﻩ6
第三章软件设计7
第四章系统实现ﻩ10
4.1登录模块ﻩ10
4.2添加信息管理模块11
4.3 管理员模块13
4.4读者借阅退还模块14
第五章 心得体会17
第六章 参考文献(资料)18
第七章 致谢ﻩ19
第一章系统概述
1.1系统背景
当今时代是飞速发展的信息时代。
在各行各业中离不开信息处理,这正是计算机网被广泛应用于管理信息系统的外部环境。
计算机的最大好处在于利用它能够进行信息管理。
使用计算机进行信息处理,不仅提高了工作效率,而且大大的提高了其安全性
本系统的主要是为了减轻新生入学、不断增加、修改图书给图书馆带来的不便而设计的。
图书馆管理系统是办公自动化不可缺少的一部分,是适应现代管理制度要求、推动学生学籍管理走向科学化、规范化的必要条件。
该软件最终的使用者是学校,公司,图书馆管理者,并提供以下的功能:
1.提供图书馆的基本信息;
2.图书馆管理者可以根据读者信息创建读者的帐户;
3.图书馆管理者必须先登录才能了解图书馆的详细信息和自己的基本信息,可以对图书进行添加、查找、修改、注销等的操作;
4.读者必须先登录才能对图书进行借阅、归还、续借等操作。
1.2 可行性研究
1.技术条件方面的可能性
技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬件、软件配置能否满足开发者的需要等。
图书馆管理系统的工作主要是在读者和图书馆之间架起一座桥梁,能相互沟通信息和处理信息。
所使用的语言是C#和SQL之间连接,这是大家还比较熟悉的内容。
2.使用方面的可行性
从社会效益上看,随着技术的发展,采用软件管理图书馆日常工作,毫无疑问会在使用过程中产生新的需求和问题,这样也会不断地促进信息技术和软件应用的革新。
经过研究,此系统的用户无使用方面的问题。
第二章 需求分析
2.1运行环境:
操作系统:
WindowsXP,Windows 7;数据库:
Oracle10g;以C#为编程语言。
2.2数据需求
图书属性E-R图
借阅信息属性E-R图
用户信息属性E-R图
第三章软件设计
3.1总体设计
1.数据库设计
1、Bborrow借书管理
字段名
数据类型
长度
约束
说明
rId
Char
10
主键
读者编号
rName
Char
10
读者姓名
bId
Char
10
书编号
bName
Char
10
书名
bdate
datetime
8
借书时间
bdatabace
datetime
8
还书时间
bFine
Char
7
罚款
2、Bmanage添加图书
字段名
数据类型
长度
约束
说明
bId
char
10
主键
图书标号
bName
char
10
书名
bNumber
char
10
书数目
bSore
char
20
分类
bState
char
10
借书状态
bPhoto
Image
书照片
3、Madmin图书员管理
字段名
数据类型
长度
约束
说明
mId
char
10
主键
管理员职工号
mPwd
char
10
管理员密码
mName
char
10
管理员姓名
mSex
char
10
管理员性别
mNumber
char
20
管理员电话
4、Sreader读者信息表(学生表)
字段名
数据类型
长度
约束
说明
rSno
char
10
主键
学生号
rName
char
10
学生姓名
rPwd
char
10
密码
rAge
char
10
年龄
rSex
char
10
性别
rbrith
Datetime
8
生日
rstate
char
8
状态
rNumber
char
12
电话号码
rEmail
char
20
电子邮件
rAdress
char
50
地址
rGrade
char
10
年级
rClass
char
10
班级
5、Treader读者信息表(教师表)
字段名
数据类型
长度
约束
说明
tSno
char
10
主键
职工号
tName
char
10
职工姓名
tPwd
char
10
密码
tAge
char
10
年龄
tSex
char
10
性别
tstate
char
8
状态
tNumber
char
12
电话号码
tEmail
char
20
电子邮件
rAdress
char
50
地址
5、Trecord借阅历史(学生版)
字段名
数据类型
长度
约束
说明
rId
int
10
主键
读者编号学号
rName
Char
10
读者姓名
bId
int
10
图书编号
bName
Char
50
图书名称
6、Trecord借阅历史(教师版)
字段名
数据类型
长度
约束
说明
rId
int
10
主键
读者编号学号
rName
Char
10
读者姓名
bId
int
10
图书编号
bName
Char
50
图书名称
7、Sye系统设置
字段名
数据类型
长度
约束
说明
rId
int
10
主键
标识
Readerstate
Char
10
读者(学生)借书的本书限制
Readerfine
Char
10
读者超期罚款设置
Readertime
Char
10
读者时间限制
Teacherstate
Char
10
教师借书的本书限制
Teacherfine
Char
10
教师罚款设置
Teachertime
Char
10
教师时间限制
第四章系统实现
4.1 登录模块
1.模块界面
1.图书管理员的登陆
2.原代码清单
1.登录窗口
privatevoid button1_Click(object sender,EventArgs e)
{
boolisuser=false;
stringmessage ="";
input();
if(logintype.Text.Trim() =="管理员")
{
if(input())
{
isuser= yanzhengUser(logintype.Text,loginid.Text,loginpwd.Text,ref message);
if(isuser)
{
Adminform adminform=newAdminform();
adminform.Show();
this.Hide();
}
else
{
MessageBox.Show(message,"登陆失败", MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}
}
private boolinput()
{
if(loginid.Text.Trim()=="")
{
MessageBox.Show("请输入用户名");
loginid.Focus();
returnfalse;
}
elseif(loginpwd.Text.Trim()=="")
{
MessageBox.Show("请输入密码");
loginpwd.Focus();
return false;
}
elseif (logintype.Text.Trim()=="")
{
MessageBox.Show("请选择类型");
returnfalse;
}
else
{
return true;
}}
publicboolyanzhengUser(stringlogintype,string loginid, stringloginpwd,refstringmessage)
{
int count= 0;
boolisuser=false;
if(logintype=="管理员")
{
stringsql= string.Format("selectcount(*)fromMadminwheremName='{0}'andmPwd='{1}'",loginid,loginpwd);
try
{
SqlCommandcommand= newSqlCommand(sql,DBHelper.connection);
DBHelper.connection.Open();
count=(int)command.ExecuteScalar();
if (count == 1)
{
isuser=true;
}
else
{
message="用户名或密码错误";
isuser=false;
}
}
catch(Exception ex)
{
message=ex.Message;
Console.WriteLine(ex.Message);
}
finally
{
DBHelper.connection.Close();
}
}
4.2添加信息管理模块
1.模块界面
1.新增图书窗口
2.功能说明 本模块主要实现图书增加创建,输入相应的图书的相关信息,当没有错误时,点击保存会提示添加成功,如出现错误系统会给出提示。
3. 原代码清单
1.新增图书窗口
private voidbtnSave_Click(objectsender, EventArgse)
{
if(ValidatInput())
{
stringname= txtName.Text;
string pwd =txtPassword.Text;
stringsex=rdoMale.Checked ?
rdoMale.Text:
rdoFemale.Text;
stringnumber=txtTel.Text;
string age =txtAge.Text;
string sql=string.Format("INSERT INTOMadmin(mName,mPwd,mAge,mSex,mNumber)VALUES(\'{0}\',\'{1}\',\'{2}\' , \'{3}\',\'{4}\')",
name,pwd,age,sex, number);
try
{
SqlCommand command= newSqlCommand(sql,DBHelper.connection);
DBHelper.connection.Open();
int result=command.ExecuteNonQuery();
if(result<1)
{
MessageBox.Show("添加失败!
","操作提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
else
{
MessageBox.Show("添加成功!
","操作提示", MessageBoxButtons.OK,MessageBoxIcon.Information);
this.Close();
}
}
catch(Exceptionex)
{
MessageBox.Show("操作数据库出错!
","操作演示",MessageBoxButtons.OK,MessageBoxIcon.Error);
Console.WriteLine(ex.Message);
}
finally
{
DBHelper.connection.Close();
}}}
4.3管理员模块
1.模块界面
1图书的查找及修改窗口
2.功能说明
本模块主要实现对图书信息的查找及修改功能,输入图书名,显示需要的信息,保存修改。
3.原代码清单
1.图书的查找及修改窗口
privatevoidFillListView()
{
stringsno;
stringname;
stringnumber;
string sore;
stringsql = string.Format(“selectbookId,bookName,bookNumber,bookSorefromBmanage wherebookName like\’%{0}%\’”, txtBookName.Text);
try
{
SqlCommandcommand=newSqlCommand(sql,DBHelper.connection);
DBHelper.connection.Open();
SqlDataReader dataReader = command.ExecuteReader();
lvBook.Items.Clear();
if(!
dataReader.HasRows)
{
MessageBox.Show(“抱歉,没有您要找的用户!
”,“结果提示”,MessageBoxButtons.OK,MessageBoxIcon.Information);
}
else
{
while (dataReader.Read())
{
sno =dataReader[“bookId”].ToString();
name= dataReader[“bookName”].ToString();
number=dataReader[“bookNumber”].ToString();
sore=dataReader[“bookSore”].ToString();
ListViewItemlviBook= new ListViewItem(name);
lviBook.Tag=(string)dataReader[“bookId”];
lvBook.Items.Add(lviBook);
lviBook.SubItems.AddRange(newstring[]{name,number,sore });
}
}
dataReader.Close();
}//连接数据库,将数据读取出放入lvBook
catch(Exception ex)
{
MessageBox.Show(“查询数据库出错!
”,“提示”,MessageBoxButtons.OK, MessageBoxIcon.Error);
Console.WriteLine(ex.Message);
}
finally
{
DBHelper.connection.Close();
}
}
//实现查找功能
privatevoidbtnSelect_Click(objectsender,EventArgse)
{
if(txtBookName.Text ==“”)
{
MessageBox.Show(“请输入图书名”, “输入提示”, MessageBoxButtons.OK, MessageBoxIcon.Information);
txtBookName.Focus();
}
else
{
FillListView();
}
}
4.4读者借阅退还模块
1.模块界面
1.借书窗口
2.功能说明
本模块主要是实现图书管理员对读者借书的相关操作,查看读者的所借数目和是否能够借阅,以及所借书籍的库存情况。
3.原代码清单
1.借书窗口
privatevoidbtnbook_Click(objectsender,EventArgse)
{
if(txtbook.Text== "")
{
MessageBox.Show("图书编号不能为空,请从新输入");
bkborrowbookb =newbkborrow();
bookb.Show();
}
else//获取图书转台
{
UserHelperuserhelper=newUserHelper();
stringbid=txtbook.Text;
intrid=Convert.ToInt32(txtreader.Text);
stringrid= txtreader.Text;
stringsql=string.Format("SElECTbookName,bookNumber FromBmanageWherebookId=\'{0}\'",bid);
try
{
DBHelper.connection.Open();
SqlC