学生学籍管理系统(SQL数据库系统设计)

上传人:i**** 文档编号:109036465 上传时间:2022-06-16 格式:DOCX 页数:36 大小:461.24KB
返回 下载 相关 举报
学生学籍管理系统(SQL数据库系统设计)_第1页
第1页 / 共36页
学生学籍管理系统(SQL数据库系统设计)_第2页
第2页 / 共36页
学生学籍管理系统(SQL数据库系统设计)_第3页
第3页 / 共36页
点击查看更多>>
资源描述
. .数据库课程设计报告专业班级小组成员指导老师开始时间完成时间a. .目录数据库课程设计报告11.问题描述31.1背景31.2需求分析32.数据字典42.1建表清单42.2管理员表( A)42.3学生信息表( S)52.4课程表( C)63.概念结构设计83.1功能图83.2数据流图93.3E-R图104.逻辑结构设计134.1E-R图的转换136.程序实现166.2程序代码166.2功能的实现结果337.结论35a. .课题名称: 学生学籍管理系统1. 问题描述1.1背景随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。任何一个单位需要高效率地把部活动有机地组织起来并迅速发展,就必须建立与自身特点相适应的管理系统。对于我们学校而言,毫无疑问,在实现学校信息化的过程中,实现学生学籍管理的信息化就显得尤为重要。学生学籍管理系统主要用于学校学生学籍的管理,总体任务是实现学生信息关系的系统化、科学化、规化和自动化,其主要任务是用计算机对学生学籍进行日常管理,如查询、修改、增加、删除,另外还考虑到学生选课,针对这些要求来设计学生学籍管理系统。在本次实验中,我们需要学习并掌握数据库设计的流程和基本方法。在这基础上完成对学生学籍系统数据库的设计和相应文档的编写工作,从而更加深入地掌握数据库系统分析与设计的基本概念和基本方法,提高从事数据库系统建设和管理工作的基本技能和能力。1.2需求分析根据用户的需求,学生学籍管理系统将满足一下需求:A)学生个人基本信息1) 实现学生基本情况的录入、修改、删除等基本操作。2) 对学生基本信息提供灵活的查询方式。3)a. .B)选课功能1) 完成一个班级的学期选课功能。2)C)成绩管理1) 实现学生成绩的录入、修改、删除等基本操作。2) 能方便的对学生的个学期成绩进行查询。3) 具有成绩统计、排名等功能。4)2. 数据字典2.1 建表清单表名中文对照A管理员表S学生信息表C课程表B班级表P专业表D院系表CS选课表T老师表J授课表2.2管理员表( A)a. .管理员表(A)是字段名字段描述数据类型长可约缺备注否主度空束省键值是A_ID管理员编号CHAR(4)4A_USER用户名VARCHA1R(10)0A_PW用户密码VARCHA2R(20)0A_PERM用户权限INT不同用户拥有不同权限2.3学生信息表( S)学生信息表( S)是字段名字段描述数据类型长可约缺备注否主键度空束省值是S_NO学号CHAR(10)10S_NAME姓名VARCHAR(10)10是S_SEX性别CHAR(2)2是男女S_BIRT出生日期VARCHAR(10)10是S_NAFA民族VARCHAR(8)8是汉S_BIPL籍贯VARCHAR(10)10是S_ADDR地址VARCHAR(50)50是S_POST邮编CHAR(6)6是S_TELVARCHAR(20)20是S_ID身份证号CHAR(18)18是S_POLA政治面貌VARCHAR(10)10是其他群众共青团中共党员S_YEAR入学年份VARCHAR(10)10是S_DEPA院系CHAR(4)是S_PROF专业CHAR4)是S_CLAS班级CHAR(4)是S_NOTE备注VARCHAR(1000100是)0a. .2.4课程表( C)课程表( C)是字段名字段描述数据类型长可约缺备注否主度空束省键值是C_ID课程编号CHAR(4)4C_NAME课程名VARCHAR(22是0)0C_PRNO先行课CHAR(4)4是C_CREDIT学分INTC_NOTE课程简介VARCHAR(22是00)002.5班级表( B)班级表( B)是字段名字段描述数据类型长可约缺备注否主键度空束省值是B_ID班级编号CHAR(4)4B_NAME班级名VARCHAR(44是0)0B_NUM班级人数SMALLINT是B_MASTER班主任名VARCHAR(4)是P_ID专业编号CHAR(4)2.6专业表( P)专业表( P)是字段名字段描述数据类型长可约缺备注否主键度空束省值是P_ID专业编号CHAR(4)4P_NAME专业名VARCHAR(44是0)0P_NUM专业人数INT是D_ID学院编号CHAR(4)4a. .2.7院系表( D)院系表( D)是字段名字段描述数据类型长可约缺备注否主键度空束省值是D_ID学院编号CHAR(4)4D_NAME学院名VARCHAR(44是0)0D_NUM学院人数INT是D_MASTER院长名VARCHAR(4)4是2.8选课表( CS)选课表( CS)是字段名字段描数据类型长可约缺备注否主键述度空束省值是T_ID学院编CHAR(4)2号0是C_ID课程编CHAR(4)4号CS_RESULT成绩FLOAT是2.9教师表( T)教师表( T )是字段名字段描述数据类型长可约缺备注否主度空束省键值是T_ID教师编号CHAR(4)4T_NAME教师名VARCHAR(4)4是T_COR所授课程VARCHAR(22是0)0T_TEL手机CHAR(11)1是1a. .2.10授课表( J)授课表( J)是字段名字段描数据类型长可约缺备注否主键述度空束省值是T_ ID教师CHAR(4)4编号是C_ID课程编CHAR(4)4号J_TIME授课时VARCHAR(20是间)3. 概念结构设计3.1功能图学生学籍管理系统成特绩殊输统录修删查查情出计入改除看询况报、处表排理名a. .3.2数据流图数据流图是用图形的方式完成系统息的传递,先构建系统抽象模型, 既顶层数据流图为图(1):学生学生选课 /退选选课、成绩表学籍管理系统系管理员系管理员录如 /更新学生、系、学生、课程、班级及专业信专业、课程及成绩信息息表,留级、休学处理表图(2) :学籍管理系统信息流图由上图知,学生进入系统只完成选课及退选。而系管理员进入系统后录入/ 更新的信息抱括:专业、班级、学生。对学生选课进一步分班解级可描得述信图息(2):学生描述信息a. .专业描述信息学生信息班级信息选课申请专业信息学生身份验证验证不通过课程描述信息通过申请选课不成功选课处理课程信息选课成功已选课程选课信息记录图(3):学生选课分解子图图中的专业、学生、班级信息以及学生选的课程都又系管理员录入。学生通过身份验证后进入系统,选择自己的必修和选修课,并能对已选课进行撤消。学生选完课提交后,将结果保存。3.3E-R 图a. .a. .a. .4. 逻辑结构设计4.1 逻辑结构设计步骤(1)将概念结构转换为一般关系、网状、层次模型。(2)将转换来的关系、网状、层次模型向特定DBMS 支持下的数据模型转换。(3)对数据模型进行优化。4.2 E-R 图的转换管理员表a. .学生表班级表专业表学院表课程表a. .选课表教师表授课表5. 物理结构设计a. .5.1 物理关系模型6. 程序实现6.2 程序代码建立数据库:CREATEDATABASESTUDENTON(NAME = STUDENT_Data,FILENAME= C:Program FilesMicrosoft SQLServerMSSQL.1MSSQLDataSTUDENT.mdf ,SIZE= 10MB ,MAXSIZE= 50MB ,FILEGROWTH = 10%)LOG ONa. .(NAME = lbr_Log ,FILENAME= C:Program FilesMicrosoft SQLServerMSSQL.1MSSQLDataSTUDENT_Log.ldf ,SIZE= 2MB ,MAXSIZE= 5MB ,FILEGROWTH = 1MB)GOUSESTUDENT建表:create table A -管理员表(A_ID CHAR(4) ,A_USERvarchar(10) not null,A_PW varchar (20 ) not null,A_PERM int not null,constraint pk_A primary key (A_ID)gocreate table D -院系表a. .(D_ID CHAR(4) not null,D_NAME varchar(40 ) ,D_NUM int ,D_MASTER varchar(4),constraint pk_D primary key (D_ID ),)gocreate table P -专业表(P_ID CHAR(4) not null,P_NAME varchar (40 ),P_NUM int ,D_ID CHAR(4) not null,constraint pk_P primary key (P_ID),constraint fk_P_D foreign key (D_ID) references D(D_ID)on delete cascadeon update cascade,)goa. .create table B -班级表(B_ID CHAR(4) not null,B_NAME varchar (40 ),B_MASTER varchar (4),B_NUM smallint ,P_ID CHAR(4) not null, -专业编号constraint pk_B primary key (B_ID),constraint fk_B_P foreign key (P_ID) references P(P_ID)on delete cascadeon update cascade,)gocreate table S -学生表(S_NO char(10) not null,S_NAME varchar(10),S_SEXchar(2) check(S_SEXin(男,女),S_BIRTvarchar(10),S_NAFA varchar(8),a. .S_BIPLvarchar(10) ,S_ADDR varchar(50),S_POSTchar(6), -邮政编码S_TELvarchar (20 ),S_ID char(18), -返回不带前导空格 (LTrim) 、后续空格 (RTrim)或前导与后续空格 (Trim)的字符串副本。S_POLA varchar(10) check( rtrim (S_POLA) in (其他 , 群众 ,共青团 ,中共党员 ),S_YEARvarchar(10),-入学时间S_DEPACHAR(4), -院系S_PROFCHAR(4), -专业S_CLASCHAR (4), -班级S_NOTE varchar(1000),constraint pk_S primary key(S_NO),constraint fk_S_CLASforeign key (S_CLAS) references B (B_ID)on delete cascadeon update cascade,)gocreate table C -课程表(C_ID CHAR(4) not null,a. .C_NAME varchar (20 ),C_PRNO CHAR (4) ,C_CREDIT int not null,C_NOTE varchar(200 ),constraint pk_C primary key (C_ID),constraint fk_C foreign key (C_PRNO) references C(C_ID)gocreate table CS -选课表(S_No char(10) not null,C_ID CHAR(4) not null,CS_RESULTFLOAT,constraint pk_C_S primary key(S_No,C_ID),constraint fk_C_S_Sforeign key(S_No) references S(S_No),constraint fk_C_S_C foreign key(C_ID) references C(C_ID)gocreate table T -教师表(a. .T_ID CHAR(4) not null,T_NAME varchar (4),T_COR varchar (20 ) ,T_TEL char(11),constraint pk_T primary key (T_ID)gocreate table J -授课表表(T_ID char(4) not null,C_ID CHAR(4) not null,J_TIME varchar (20 ),constraint pk_T_C primary key(C_ID,T_ID),constraint fkJ_C foreign key(C_ID) references C(C_ID),constraint fkJ_T foreign key(T_ID) references T(T_ID)go插入数据:insert A(A_ID,A_PERM,A_PW,A_USER)values (0001,1,password1,六 )a. .goinsert A(A_ID,A_PERM,A_PW,A_USER)values (0002 ,2,password2 ,齐)goinsert D (D_ID ,D_Name ,D_NUM ,D_MASTER)values (0001,信息技术学院 ,5000 ,五 )goinsert P (P_ID,D_ID ,P_NAME ,P_NUM )values (0001,0001,数字媒体技术 ,120)goinsert P (P_ID,D_ID ,P_NAME ,P_NUM )values (0002 ,0001,软件工程 ,120)goinsert B (B_ID,P_ID,B_NAME ,B_NUM ,B_MASTER)a. .values (0001,0001,1班 ,120,丽)goinsert B (B_ID,P_ID,B_NAME ,B_NUM ,B_MASTER)values (0002 ,0002 ,1班,120,王宏 )goinsert Svalues(1001010018,苏希 ,女,1989-7-10,汉族 ,省,北京师大学分校,519078 ,158*,7,中共党员 ,2007-9-1 ,0001 ,0001,0001,无)goinsert Svalues(1001010764,妮,女,1990-8-10,汉族 ,省,北京师大学分校,519078 ,158*,8,中共党员 ,2007-9-1 ,0001 ,0001,0001,无)goinsert Svalues(1001010056,王帅 ,男 ,1989-7-10,汉族 ,省 ,北京师大学分校,519078 ,158*,9,中共党员 ,2007-9-1 ,0001 ,0002 ,0002 ,无)goinsert Svalues(1001010065,思,男,1989-7-10,汉族 ,省,北京师大学分校a. .,519078 ,158*,6,中共党员 ,2007-9-1 ,0001 ,0002 ,0002 ,无)goinsert Svalues(1001010034,邵明 ,男 ,1989-7-10,汉族 ,省 ,北京师大学分校,519078 ,158*,7,中共党员 ,2007-9-1 ,0001 ,0001,0001,无)goinsert C(C_ID,C_NAME ,C_CREDIT,C_NOTE)values(0001,数据库原理 ,3,无)goinsert C(C_ID,C_NAME ,C_CREDIT,C_PRNO,C_NOTE )values(0002 ,VB,3,0001,无)goinsert C(C_ID,C_NAME ,C_CREDIT,C_PRNO,C_NOTE )values(0003 ,C+ ,3,0001,无)goinsert C(C_ID,C_NAME ,C_CREDIT,C_NOTE)values(0001,数据库原理 ,3,无)goa. .insert T(T_ID,T_NAME ,T_TEL,T_COR)values(0001,周鹏 ,136*,数据库原理 )goinsert T(T_ID,T_NAME ,T_TEL,T_COR)values(0002 ,黄静 ,136*,VB)goinsert T(T_ID,T_NAME ,T_TEL,T_COR)values(0003 ,何辉 ,136*,C+ )goinsert J(T_ID,C_ID,J_TIME)values(0001,0001,周三节 )goinsert J(T_ID,C_ID,J_TIME)values(0002 ,0002 ,周一节 )goinsert J(T_ID,C_ID,J_TIME)a. .values(0003 ,0003 ,周二节 )goinsert CS(S_No,C_ID,CS_RESULT)values(1001010018,0001,90)goinsert CS(S_No,C_ID,CS_RESULT)values(1001010764,0002 ,80 )goinsert CS(S_No,C_ID,CS_RESULT)values(1001010056,0003 ,88)goinsert CS(S_No,C_ID,CS_RESULT)values(1001010065,0001,78)goinsert CS(S_No,C_ID,CS_RESULT)values(1001010065,0002 ,78)goa. .insert CS(S_No,C_ID,CS_RESULT)values(1001010065,0003 ,89)goinsert CS(S_No,C_ID,CS_RESULT)values(1001010034,0003 ,93)go功能实现代码:/*学生专业课程视图 */create view IS_S_Cour(S_NO,S_NAME,S_PROF,S_COURSE) asselect S.S_NO,S. S_Name,S.S_CLAS,C.C_NAMEfrom S,C,CSwhere S.S_NO= CS.S_No and C.C_ID= CS. C_IDgo/*/*学生成绩视图 */create view RESULT_S(S_NO,S_NAME,C_ID,C_NAME ,CS_RESULT) asselect S.S_NO,S. S_Name,CS.C_ID,C.C_NAME ,CS. CS_RESULTfrom S,C,CSa. .where S.S_NO= CS.S_No and C.C_ID= CS. C_IDgo/*/*对学生基本信息提供灵活的查询方式。*/CREATEPROCEDURE student学号 CHAR (10),姓名 VARCHAR (10) OUTPUT ,性别 CHAR (2)OUTPUT ,生日 VARCHAR (10) OUTPUTASSELECT姓名 = S_NAME,性别 = S_SEX,生日 = S_BIRTFROM SWHERE S_NO= 学号DECLARE姓名 VARCHAR (10) ,性别 CHAR(2),生日 VARCHAR (10)EXEC student 1001010764 ,姓名 OUTPUT ,性别 OUTPUT ,生日 OUTPUTSELECT姓名 ,性别 ,生日/*/*对学生的成绩进行查询。*/a. .CREATEPROCEDURE RESULT(S_NAME,C_NAME ,CS_RESULT)学号 CHAR (10),姓名 VARCHAR (10) OUTPUT ,课程名 CHAR (20 )OUTPUT ,成绩 FLOAT OUTPUTASSELECT姓名 = S_NAME,课程名 = C_NAME ,成绩 = CS_RESULTFROM S,C,CSWHERE S.S_NO= 学号DECLARE姓名 VARCHAR (10) ,课程名 CHAR (20 ),成绩 FLOATEXEC RESULT 1001010764,姓名 OUTPUT ,课程名 OUTPUT ,成绩 OUTPUTSELECT姓名 ,课程名 ,成绩/*/*二班选课情况 */create view SELECTC(S_CLAS,S_NO,S_NAME,C_NAME ) asselect S.S_CLAS,S.S_NO,S.S_Name,C.C_NAMEfrom S,C,CSwhere S.S_NO= CS.S_No and C.C_ID= CS. C_ID AND S.S_CLAS= 0002a. .go/*/*C+课的成绩平均分 */create view AVGRESULT(C_NAME ,ARGRESULT) asselect C_NAME ,AVG(CS_RESULT)from CS,CwhereC.C_ID= CS.C_ID AND C.C_ID = 0003GROUP BY C_NAMEgo/*/*C+课的成绩平均分排序 */select S.S_NO,S_NAME,C_NAME ,CS_RESULTfrom CS,C,Swhere S.S_NO= CS.S_No and C.C_ID= CS. C_ID AND C.C_ID = 0003ORDER BYCS_RESULTDESC;go/*/a. ./*更新学号为的 */UPDATE SSETS_TEL= 136*WHERE S_NO = 1001010018GO/*/*删除学号为的记录 */DELETEFROM SWHERE S_NO = 1001010056/*/*学生表民族默认值为汉族*/ALTERTABLE SADD CONSTRAINT MINZUDEFAULT 汉族 FOR S_NAFAa. ./*/6.2 功能的实现结果完成各种功能的截图:学生专业课程视图学生成绩视图对学生的成绩进行查询(存储过程 )a. .二班选课情况(视图)C+ 课的成绩平均分(视图)C+ 课的成绩平均分排序a. .对学生基本信息提供灵活的查询方式(存储过程 )7. 结 论通过以上的设计方案基本上可以得出一个简单的学籍管理系统的数据库,其a. .中包含了学生基本信息、课程信息、学生选课情况、教师信息、教师授课情况、班级、院系等。而且能够对其中的各项信息进行比较灵活的查询。 尽管建立的表不多,设计得也不算复杂, 但是我们在实验中涉及到了诸多数据库的知识, 除了基本的建表、 更新和查询操作外, 还有视图、存储过程等等。 尽管设计到的知识点并不多,比如存储过程的操作, 我们小组研究了很久才能勉强完成功能, 本想附加些触发器的容, 但是因为诸多原因, 还是没有加上。 总的说来,该系统数据库的设计虽然很简单, 但也包含了学籍管理系统的部分要求, 能够完成一定的数据管理功能。经过这段时间的学习、 实践,我们获得了许多课堂外的知识, 并深刻的体会到实践是检验真理的唯一标准, 只有理论与实践相结合, 才能更加掌握书本知识,同时学到了更多的知识。首先我们要感谢学校给我们安排了致辞数据库系统设计的机会,然后要感谢周鹏老师对我们热心的指导和帮助, 是他教会了我们解决问题的方法,这样才使得我们能够顺利的完成本次课程设计。 同时我们还要感谢许多同学给予的帮助,有了大家的帮助让我们有更多的信心。a
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 演讲稿件


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!