大学生选课管理系统实验报告.docx

上传人:b****6 文档编号:15510608 上传时间:2023-07-05 格式:DOCX 页数:39 大小:764.07KB
下载 相关 举报
大学生选课管理系统实验报告.docx_第1页
第1页 / 共39页
大学生选课管理系统实验报告.docx_第2页
第2页 / 共39页
大学生选课管理系统实验报告.docx_第3页
第3页 / 共39页
大学生选课管理系统实验报告.docx_第4页
第4页 / 共39页
大学生选课管理系统实验报告.docx_第5页
第5页 / 共39页
大学生选课管理系统实验报告.docx_第6页
第6页 / 共39页
大学生选课管理系统实验报告.docx_第7页
第7页 / 共39页
大学生选课管理系统实验报告.docx_第8页
第8页 / 共39页
大学生选课管理系统实验报告.docx_第9页
第9页 / 共39页
大学生选课管理系统实验报告.docx_第10页
第10页 / 共39页
大学生选课管理系统实验报告.docx_第11页
第11页 / 共39页
大学生选课管理系统实验报告.docx_第12页
第12页 / 共39页
大学生选课管理系统实验报告.docx_第13页
第13页 / 共39页
大学生选课管理系统实验报告.docx_第14页
第14页 / 共39页
大学生选课管理系统实验报告.docx_第15页
第15页 / 共39页
大学生选课管理系统实验报告.docx_第16页
第16页 / 共39页
大学生选课管理系统实验报告.docx_第17页
第17页 / 共39页
大学生选课管理系统实验报告.docx_第18页
第18页 / 共39页
大学生选课管理系统实验报告.docx_第19页
第19页 / 共39页
大学生选课管理系统实验报告.docx_第20页
第20页 / 共39页
亲,该文档总共39页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

大学生选课管理系统实验报告.docx

《大学生选课管理系统实验报告.docx》由会员分享,可在线阅读,更多相关《大学生选课管理系统实验报告.docx(39页珍藏版)》请在冰点文库上搜索。

大学生选课管理系统实验报告.docx

大学生选课管理系统实验报告

数据库技专题训练I(2015年春)

序号:

数据库专题训练------数据库应用系统开发

实验报告

 

系别:

计算机科学与技术

班级:

计12-1班

姓名:

刘杰

学号:

12101020128

成绩:

评语:

 

指导教师签字:

日期:

大学生选课管理系统

1、需求分析

1.需求说明

☐教务处的管理人员录入全校的课程基本信息和本学期的课程授课教师、地点、时间;

☐在学生入学的时候,学院的管理人员录入学生基本信息;

☐学生每学期自己上网登录系统选课,选课成功后信息存入数据库中,学生自己可以查询选课的情况;

☐学生选课不成功的情况有:

☐所选课程的先修课还没有记录,系统提示“缺先修课,选课失败”;

☐本学期所选课程的上课时间有冲突,系统提示“上课时间有冲突,选课失败”;

☐学生一学期所选课程的学分最多不能超18学分

☐学生可以注销所选课程。

☐学院管理员可以查询学生前几学期的选课信息、可以查询课程基本信息、学生基本信息;

☐当学生退学时,由教务处的管理人注销学生基本信息;

☐如果开课之后,学生要求退课,则由教务处的工作人员为学生注销所选课程;

☐允许学生休学,教务处为休学的退学做学籍冻结处理;复学后为其办理解冻处理;

☐每学期教务处为学生办理学期注册手续;没有办理学期注册的学生不能选课;

☐学期末,学院工作人员负责录入学生的成绩。

2.数据流程图

a.顶层数据流图

b.分解数据流图

3.数据字典

角色信息=角色编号+角色名称

角色编号=“1”….“4”

角色名称=2(汉字)6

用户信息=用户编号+角色编号+用姓名+用户密码

用户编号=2(字母或数字)18

角色编号=“1”….“4”

用户姓名=2(汉字)6

用户密码=2(字母或数字)18

学生基本信息=学号+姓名+性别+民族+出生年月+学院+系+专业+入学时间+政治面貌+住址+备注

学号=(数字)11

姓名=2(汉字)6

性别=“男”/“女”

民族=2(汉字)6

出生年月=年+月

学院=2(字母或数字)11

系=2(字母或数字)11

专业=2(字母或数字)11

入学时间=年+月+日

政治面貌=“党员”/“预备党员”/“团员”/“群众”

住址=2(汉字)18

备注=0(汉字或字母)100

教师基本信息=工号+姓名+密码+性别+年龄+民族+学院+住址+备注

工号=2(字母或数字)11

姓名=2(汉字)6

密码=2(字母或数字)18

性别=“男”/“女”

年龄=“20“…”60“

民族=2(汉字)6

学院=2(汉字)12

住址=2(汉字)18

备注=0(汉字或字母)100

课程信息=课程号+课程名称+先修课+学分+学时+课程类别+开课学院

课程号=2(字母或数字)11

课程名称=2(汉字)15

先修课=2(字母或数字)11

学分=“1“…”16“

学时=“16“…”128“

课程类别=“专业选修“/”专业必修“/”公共选修“/”公共必修“

开课学院=2(字母或数字)11

课程任务=任务编号+课程编号+课程名称+任课教师+课堂容量+选课人数+上课时间段+上课日期+上课地点+合班标志+开课季别+开始周+结束周+课程介绍

任务编号=2(字母或数字)11

课程编号=2(字母或数字)11

课程名称=2(汉字)15

任课教师=2(字母或数字)11

课堂容量=“0“….”240“

选课人数=“0“….”9999“

上课时间段=“1-2节“…”11-12节“

上课日期=“周一“…”周日“

上课地点=2(汉字)15

合班标志=2(汉字)15

开课季别=“春季学期“/”秋季学期“

开始周=“1“…”20“

结束周=“8“…”28“

课程介绍=0(汉字)100

学生选课信息表=学号+课程号+成绩+选课年份+选课季别+中签标志

学号=2(字母或数字)11

课程号=2(字母或数字)11

成绩=“0“…”100“

选课年份=年

选课季别=“春季学期“/”秋季学期“

中签标志=“0“/“1“

留言=留言编号+发送者+接收者+日期+留言内容

留言编号=“0“….”99999999“

发送者=2(字母或数字)11

接收者=2(字母或数字)11

日期=年+月+日

留言内容=2(字母或汉字)200

文件信息=文件编号+课程编号+文件名称+文件路径

文件编号=“0“…”99999“

课程编号=2(字母或数字)11

文件名称=2(字母,数字或汉字)20

文件路径=2(字母或数字)100

学院信息=学院编号+学院名称

学院编号=2(字母或数字)11

学院名称=5(汉字)20

专业信息=专业编号+专业名称+所属学院

专业编号=2(字母或数字)11

专业名称=5(汉字)20

所属学院=2(字母或数字)11

班级信息=班级编号+班级名称+所属专业

班级编号=2(字母或数字)11

班级名称=5(汉字)20

所属专业=2(字母或数字)11

4.系统E-R图

2、系统设计

1.系统模块结构图

a.顶层模块结构图

b.详细模块结构图

2.系统用例图

a.学生用例图

b.教师用例图

c.管理员用例图

3.系统数据库详细设计

a.表字段说明

表名称:

角色表简称:

t_role

名称

简称

类型

长度

是否可为空

备注

角色编号

roleid

int

4

主键,自增

角色名称

rolename

nvarchar(50)

50

表名称:

用户表简称:

user_inf

名称

简称

类型

长度

是否可为空

备注

用户编号

userid

nvarchar(50)

50

主键

用户类型

roleid

int

4

外键

用户密码

pwd

nvarchar(50)

50

表名称:

教师信息表简称:

teacher_inf

名称

简称

类型

长度

是否可为空

备注

教师编号

tno

nvarchar(50)

50

主键

教师姓名

tname

nvarchar(50)

50

密码

tpwd

nvarchar(50)

50

性别

tsex

nvarchar(50)

50

年龄

tage

int

4

民族

trace

nvarchar(20)

20

所属学院

sdeptno

Nvarchar20)

20

外键

家庭住址

taddress

nvarchar(60)

60

其它

another

nvarchar(100)

100

表名称:

学生信息表简称:

stu_inf

名称

简称

类型

长度

是否可为空

备注

学号

Sno

nvarchar(50)

50

主键

姓名

Sname

nvarchar(50)

50

密码

Spwd

nvarchar(50)

50

性别

Ssex

nvarchar(20)

20

民族

Srace

nvarchar(20)

20

所属学院

Sdeptno

nvarchar(20)

20

班级

Class

Nvarchar(50)

50

专业

Smajor

nvarchar(50)

50

入学时间

Entertime

nvarchar(50)

50

毕业时间

Graduatetime

nvarchar(50)

50

政治面貌

Poli_status

nvarchar(20)

20

住址

saddress

nvarchar(60)

60

其它

another

nvarchar(100)

100

表名称:

课程基本信息表简称:

course_inf

名称

简称

类型

长度

是否可为空

备注

课程号

Cno

nvarchar(50)

50

主键

课程名称

Cname

nvarchar(50)

50

先修课

Pro_cno

nvarchar(50)

50

学分

Credit

int

4

学时

Ctime

int

4

课程类别

Course_kind

nvarchar(50)

50

开课学院

sdept

nvarchar(50)

50

表名称:

课程任务表简称:

course_task

名称

简称

类型

长度

是否可为空

备注

任务编号

taskno

nvarchar(50)

50

主键

课程编号

cno

nvarchar(50)

50

外键

课程名称

cname

nvarchar(50)

50

任课教师

cteacher

nvarchar(50)

50

课堂容量

capacity

int

4

选课人数

Sel_person

int

4

上课时间段

classtime

nvarchar(50)

50

上课日期

weekdays

nvarchar(30)

30

上课地点

location

nvarchar(50)

50

合班标志

classflag

nvarchar(50)

50

开课季别

season

nvarchar(50)

50

开始周

startweek

int

4

结束周

endweek

int

4

课程介绍

introduction

nvarchar(200)

200

表名称:

选课记录表简称:

sel_course_record

名称

简称

类型

长度

是否可为空

备注

学号

sno

nvarchar(50)

50

主键

课程号

cno

nvarchar(50)

50

成绩

grade

int

4

选课年份

year

int

4

中签标志

flag

int

4

选课季别

season

nvarchar(50)

50

表名称:

留言记录表简称:

msg

名称

简称

类型

长度

是否可为空

备注

留言编号

msgno

int

4

主键,自增

发送方

sender

nvarchar(50)

50

接收方

receiver

nvarchar(50)

50

日期

date

nvarchar(50)

50

留言内容

msg

nvarchar(200)

200

表名称:

文件信息表简称:

file_up

名称

简称

类型

长度

是否可为空

备注

文件编号

fileid

int

4

主键,自增

课程编号

cno

nvarchar(50)

50

文件名称

file_name

nvarchar(50)

50

文件路径

file_path

nvarchar(100)

100

表名称:

学院信息表简称:

sdept_inf

名称

简称

类型

长度

是否允许为空

备注

学院编号

Sdeptno

Nvarchar(20)

20

主键

学院名称

Sdeptname

Nvarchar(50)

50

表名称:

专业信息表简称:

major_inf

名称

简称

类型

长度

是否允许为空

备注

专业编号

majorno

Nvarchar(20)

20

主键

专业名称

majorname

Nvarchar(50)

50

所属学院

sdeptno

Nvarchar(20)

20

外键

表名称:

班级信息表简称:

class_inf

名称

简称

类型

长度

是否允许为空

备注

班级编号

Classno

Nvarchar(20)

20

主键

班级名称

classname

Nvarchar(50)

50

所属专业

majorno

Nvarchar(20)

20

外键

b.表创建

createtablet_role(

roleidintidentity(1,1)notnullprimarykey,

rolenamenvarchar(50)notnullunique

createtablesdept_inf

sdeptnonvarchar(20)notnullprimarykey,

sdeptnamenvarchar(50)notnull

createtablemajor_inf(

majornonvarchar(20)notnullprimarykey,

majornamenvarchar(50)notnull,

sdeptnonvarchar(20)notnull

foreignkey(sdeptno)referencessdept_inf(sdeptno)

createtableuser_inf

useridnvarchar(50)notnullprimarykey,

roleidintnotnull,

pwdnvarchar(50)notnull,

foreignkey(roleid)referencest_role(roleid)

createtableteacher_inf

tnonvarchar(50)notnullprimarykey,

tnamenvarchar(50)notnull,

tpwdnvarchar(50)notnull,

tsexnvarchar(20)notnull,

tageintnotnull,

tracenvarchar(20)notnull,

sdeptnonvarchar(20)notnull,

taddressnvarchar(60),

anothernvarchar(100)

foreignkey(sdeptno)referencessdept_inf(sdeptno)

/*学生基本信息*/

createtablestu_inf(

snonvarchar(50)notnullprimarykey,

snamenvarchar(50)notnull,

spwdnvarchar(50)notnull,

ssexnvarchar(20)notnull,

sageintnotnull,

sracenvarchar(20)notnull,

sdeptnonvarchar(20)notnull,

classnvarchar(50)notnull,

smajornvarchar(50)notnull,

entrancetimenvarchar(50)notnull,

graduattimenvarchar(50)notnull,

politicalstatusnvarchar(20)notnull,

saddressnvarchar(60),

anothernvarchar(100)

foreignkey(sdeptno)referencessdept_inf(sdeptno)

/*课程基本信息*/

createtablecourse_inf(

cnonvarchar(50)notnullprimarykey,

pro_cnonvarchar(50),

cnamenvarchar(50)notnull,

creditintnotnull,

ctimeintnotnull,

course_kindnvarchar(50)notnull,

sdeptnvarchar(50)notnull,

/*学院开课信息*/

createtablecourse_task

tasknonvarchar(50)notnullprimarykey,

cnonvarchar(50)notnull,

cnamenvarchar(50)notnull,

cteacharnvarchar(50)notnull,

capacityintnotnull,

classtimenvarchar(50)notnull,

weekdaysnvarchar(30)notnull,

locationnvarchar(50)notnull,

classflagnvarchar(50)notnull,

seasonnvarchar(50)notnull,

startweekintnotnull,

endweekintnull,

introductionnvarchar(200),

/*选课记录表*/

createtablesel_course_record

snonvarchar(50)notnull,

cnonvarchar(50)notnull,

gradeint,

yearintnotnull,

flagintnotnull,/*中签标志*/

seasonnvarchar(50)notnull,

primarykey(sno,cno)

3、系统实现

1.系统主要功能界面设计

a)登陆界面

b)学生操作界面

c)教师操作界面

d)学院管理员操作界面

e)系统管理员操作界面

2.系统主要功能界面代码实现

a)登陆界面

namespaceWindowsFormsApplication2

{

publicpartialclasslogin:

Form

{

publiclogin()

{

InitializeComponent();

}

privatevoidbutton1_Click(objectsender,EventArgse)//登陆按钮

{

stringuserid=textBox1.Text;//用户名

stringpwd=textBox2.Text;//密码

stringrolename=comboBox1.Text;

stringconn_string="DataSource=MR_LIU\\LIUJIE;InitialCatalog=course_sel;IntegratedSecurity=True;UserID=sa;pwd=liujie260593";

SqlConnectioncon=newSqlConnection();

con.ConnectionString=conn_string;

try

{

con.Open();

//获取角色编号

//Class_rolerole=newClass_role();

SqlCommandcm=newSqlCommand("selectroleidfromt_rolewhererolename=@rolename",con);

cm.Parameters.Add(newSqlParameter("@rolename",rolename));

Form_main.roleid=(int)cm.ExecuteScalar();

con.Close();

con.Open();

stringstr_sql=

"selectcount(userid)fromuser_infwhereuserid=@useridandpwd=@pwdandroleid=(selectroleidfromt_rolewhererolename=@rolename)";//执行的命令Sql

SqlCommandcmd=newSqlCommand(str_sql,con);

cmd.Parameters.Add(newSqlParameter("@userid",userid));

cmd.Parameters.Add(newSqlParameter("@pwd",pwd));

cmd.Parameters.Add(newSqlParameter("@rolename",rolename));

intflag=(int)cmd.ExecuteScalar();

if(flag>0)

{

Form_main.userid=textBox1.Text;

Form_mainf=newForm_main();

f.Show();

this.Hide();

}

else

{

MessageBox.Show("用户名或密码输入不正确!

");

}

}

catch(Exceptionex)

{

MessageBox.Show(ex.ToString());

}

finally

{

con.Close();

}

}

privatevoidlogin_Load(objectsender,EventArgse)

{

stringconn_string="DataSource=MR_LIU\\LIUJIE;InitialCatalog=course_sel;IntegratedSecurity=True;UserID=sa;pwd=liujie260593";

SqlConnectioncon=newSqlConnection();

con.Connec

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 历史学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2