当前位置:文档之家› 学生信息管理数据库设计报告

学生信息管理数据库设计报告

《数据库》期末课程设计报告学生信息管理系统1课程设计题目:学生信息管理系统随着学校规模的不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增加。

面对庞大的信息量,就需要有学生信息管理系统来提高学生管理工作的效率。

通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。

现在的时代是网络普及是时代,学生有条件通过网络方便快捷的查询自己的个人信息。

所以,学生信息管理系统既能方便学校管理部门的管理,又能方便学生及时查询个人信息。

2需求分析需求分析阶段的目标和任务2.1.1处理对象学生个人信息:学号,姓名,性别,年龄,院系学生课程信息:学号,选修课程号,课程成绩课程信息:课程号,课程名称,课程信息教师信息:教师名字,教师编号,教师年龄,教师工资,教师所属院系任课教师信息:教师编号,课程号院系信息:院系编号,院系名称2.1.2处理功能及要求开发学生信息管理系统,主要为减轻教师人员的负担,使学生信息的存入记录与取出记录相对方便,便于学生个人信息的增加与减少,降低出错率,使管理更加合理、科学,也为老师节省开支。

在系统中的新生信息的录入、教师信息的查询,由于在学生信息管理的过程中会涉及到大量的数据操作,如数据的添加、删除、修改和保存等。

这主要包括:1.能够对学生个人信息进行一定的操作处理:1)学生个人信息的增加、删除以及修改。

2)学生个人信息的多关键字检索查询。

2 .能够对学生个人信息,教师信息的查询相关资料,这其中包括:1)学生个人信息的增加、删除及修改。

2 )教师个人信息的增加,删除及修改3.对查询、统计的结果能够列表显示。

2.1.3安全性和完整性要求1)安全性要求系统安全性要求体现在数据库安全性、信息安全性和系统平台的安全性等方面。

安全性先通过视图机制,教务员可以设置密码来限制别人访问系统的视图,这样可提供系统数据一定程度上的安全性,再通过分配权限、设置权限级别来区别对待不同操作者对数据库的操作来提高数据库的安全性;系统平台的安全性体现在操作系统的安全性、计算机系统的安全性和网络体系的安全性等方面。

2)完整性要求系统完整性要求系统中数据的正确性以及相容性。

可通过建立主、外键,使用约束,或者通过check 使用触发器和级联更新。

2.2需求分析阶段成果2.2.1体会与收获系统需求分析主要是通过对网上一些资源以及《SQL SEERVER 2000案例教程》这本书的相关资料的查看,以及联系一些现实学校的班主任记录学生信息的基本情况,总结学生信息管理系统至少应该具备对重要相关信息的哪些管理功能,以及在管理中的一些问题。

因为是第一次做这样的需求调查,有些东西到现在可能还不是做的很好,但是这些我以后都会慢慢把他完善的。

希望本系统能在使用中不断地发现漏洞,改善漏洞,不断完善本系统。

2.2.2学生信息管理系统数据流程图顶层数据流图:第2层数据流图:(学生信息录入,教师信息录入,学生课程信息录入,学生成绩录入,学生信息查询和修改等)223学生信息管理系统数据字典(a)数据项:系统涉及的数据项有15项表1.1数据项列表数据项编号数据项名数据项含义数据类型长度别名DI-1 sno 学生编号Char 15DI-2 sname 学生姓名char 15DI-3 sage 学生年龄int 4DI-4 ssex 学生性别char 15DI-5 sdno 学生所在院系编号char 15DI-6 tno 教师编号Char 15DI-7 cno 课程号char 15DI-8 tname 教师名称char 15DI-9 tage 教师年龄int 4DI-10 tsalary 教师工资int 4DI-11 dno 院系编号char 15DI-12 dname 院系名称char 15DI-13 cname 课程名称char 100DI-14 credit 课程学分int 4DI-15 Grade 课程成绩int 4(b)数据结构:表1.2数据结构列表数据结构编号数据结构名组成学生教师查询信息院系信息表教务员任课教师表学生成绩表教师信息表DS-1 STUDENT Sno,Sn ame,Ssex,Sage,Sd noDS-2 SC Dno,Cn ame,GradeDS-3 COURSE Dn o,C name,CreditDS-4 DEPART Dn o,D nameDS-5 TEACHER Tno,Tn ame,Tsage,Tsalary,D noDS-6 TCTno,Cno3概念设计阶段3.1任务与目标任务:开发学生信息管理系统,主要为减轻教师工作的负担,使老师对学生信息的记录与查询相对方便,便于学生信息的增加与减少,降低出错率,使管理更加合理、科学,也为老师节省开支。

在系统中实现了学生信息的录入、修改、查询等操作,所以在学生信息管理的过程中会涉及到大量的数据操作,如数据的添加、删除、修改等目标:开发本系统的目的在于代替手工管理、修改、查询等工作,具体要求包括:数据录入:录入学生个人信息、学生成绩;数据修改:修改学生个人信息,修改教师个人信息;数据查询:查询学生个人信息,查询学生选课信息,查询任课教师信息3.2阶段结果(1 )根据不同的对象,分别画出各分 E —R图:(a)院系的E—R图:(d)学生信息的E—R图:(e)教师实体E —R图:(2 )合并各分E —R图,消除属性冲突、命名冲突、结构冲突等三类冲突,得到初步E-R图,再消除不必要冗余,得到的学生信息管理E-R图如下所示:数据库中关系图4. 逻辑设计阶段4.1逻辑设计的任务和目标概念设计阶段是独立于任何一种数据模型的。

系统逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。

具体内容包括数据组织(将E-R图转换成关系模型、模型优化、数据库模式定义、用户子模式设计)以及数据处理(画出系统功能模块图)两大任务。

4.2关系模型设计1)DEPAR T院系信息表)(课程表)2)COURSE3)STUDENT学生个人信息表)4)S C(选课表)5)T EACHERS师个人信息表)6)T C(任课教师表)4. 3用户子模式举例学生个人信息查询视图列名数据类型可否为空说明Sno Char not Null 主键Sn ame Char NulllCno Char NullCn ame Char NullNullTno Char课程信息查询视图列名数据类型可否为空说明Cno Char notNull 主键Sn ame Char NulllGrade Int Null教师个人信息查询视图列名数据类型可否为空说明Tn ame Char notNull 主键Cn ame Char NulllSn ame Char Null4.4数据处理系统功能模块图:5. 物理设计阶段5.1物理设计阶段的目标与任务数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1 )确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。

5.2数据存储方面为数据库中各基本表建立的索引如下:1. 由于学生个人信息表中的属性姓名经常在查询条件中出现,且它们的值一般都是唯一,在两个属性上建立索引;2. 由于学生个人信息表中的主码学号经常在查询条件和连接条件中出现,且它们的值是唯一的,在两个属性上建立唯一性索引;5.3系统功能模块依据需求分析阶段看,学生信息管理系统主要分为学生个人信息管理,课程信息管理,教师信息管理等主要方面。

6数据库部分1)基本表STUDNET学生信息表JS ESX_ L 100023200800100183200300110015200300120001200300120003200S0012000S200800120011200300120015E003001?001b2009001200^EOQ8QO12Q035£0080012003620080012003920DS0013004220030012005320030012005620030012005720030012005620080012005S20080012006620030012006720Q3D0120afig 创曲⑷1200兀E0QeQ012Q0T?200300 lOTfiO睫務倆强瞄Efe暗园宁®力障踱煎均.张味董张蔡陈陈姦陈莖吗商高高韩诃何侯侯鬣鮭蒋鞠孔郎_男女男女女女男男女女男男女女男女女男男男男男男玄男.222122212122222£22£1£12121£12222202220222021£1IB2210003100241002610001lOOtE10006100261002610009iQm1QQZ4lOOilE1002410005100261002610012100Z&100121000910012100011001210026TEACHER教师个人信息表T RO JEACEER*中的数据.检匿昱14student s中-**20081001—1114^ 上|T RUTI*|r*g*iTsilary2003001001 SB £00800110060 20080011009120DS00110165 200800110244 2008001200022O08Dai2O0O4 200800120005 EOO0OO12OOO T 200300120U03 200000120012 200800120013 200800120014 200800120017 200800120D1B20OSOO12002D 20OSOO120021 帕463942岳43454151雀5O413945353T47001001459001001460C0100085700100174S00100104000100014S0C100104500looie3400100055T0C1001753001001645001001639001002460001001155001000547C010010200S00120022 200800120024 200800120026 200SOQ120027 2006001200^E0030J 120^0 2003001200^] £000001200^6 3T4SC010009 29550010005 4&470010013 45390C10001 4&390010001畔400010Q01雀5T0C10017 39390030024 40400010008COURSE 课程表pT TI表 u COURSE w 中 ,桂孟昱 a st udent "C MCr«di tSC 学生选课表1!;5- 4IB 号理红理造折程程统」信原系物刨分工工系-学率学踣电信咸字机倍子明壽件传作- 文穗逍电数通集数黴適原发电報遗操"2329330TC任课教师表_ L Tno£00800100198MO6OO11CO0D 2006001100912006X1 K1&5 200600110241 20080013000220080012COQ4 2006001200052coeooi2cao72006001Z00032Q06001ZOaiZ 200600120013200B001ZC014111]11 200600120017200EQ0120013 200600120020 200800120021200E0012L022 20080012002420060012CO2&20oeooi2cas7Z006001ZDOZ9 200600120030200B0012C031 200800130036222E2DEPART院系表表- STUD EJI"中的數据.检遼是 * student"中* a 200B1DU1-1714"上Sn*Sdrifi2)视图CREATE VIEW dbo.VIEWI WITH SCHEMABINDING ASSELECT dbo.SC.S no, dbo.COURSE.C no, dbo.COURSE.Credit FROM dbo.COURSE INNER JOINdbo.SC ON dbo.COURSE.C no = dbo.SC.C noCREATE VIEW dbo.VIEW2 WITH SCHEMABINDING ASSELECT dbo.TEACHER.T name, dbo.TEACHER.D no, dbo.DEPART.D name FROM dbo.DEPART INNER JOINdbo.TEACHER ON dbo.DEPART.D no = dbo.TEACHER.D noCREATE VIEW dbo.VIEW3 AS200S00120001 2Q080D120003 ZOOSOOl2000S ZOOSOOl20011 200800120015 20000012001620050012002820CS00120035 20080012OO3G 200800120039 20080012004£ 200800120053 200800120056 21 21 EE EE 22 22 21 21 21 2121 2210001 10005 IOOOS 20080012005T EOOSOOl20056 ^OOSOOI2005^ 200800120066 2008001200&1 soosooijooa^ 20CS00120076 20080Q12X76 20Q8DQ12D0S0 200000120081 200800120083 200900120036亍睡力22 20 EE 1Q0Z6 10026 IQOO^ lOOOS 1M24 LOJOE inn?-, 10005 1002610026 Mil二10J2I :琛波2Q22 20 21 21 19館£1 19 2210012 IODO? 1QQ1L IOC J O I 100^4:0“二'10Q2E 10002玲园SELECT dbo.STUDENT.Sname, o, dbo.SC.GradeFROM dbo.SC INNER JOINdbo.STUDENT ON dbo.SC.Sno = dbo.STUDENT.SnoCREATE VIEW dbo.VIEW4ASSELECT dbo.STUDENT.Sname, o, ame, dbo.TC.Tno FROM dbo.TC INNER JOINdbo.COURSE ON o = o INNER JOIN dbo.SC ONo = o INNER JOIN dbo.STUDENT ON dbo.SC.Sno =dbo.STUDENT.SnoCREATE VIEW dbo.VIEW5WITH SCHEMABINDINGASSELECT dbo.STUDENT.Sname, o, ame, dbo.COURSE.Credit, dbo.SC.GradeFROM dbo.COURSE INNER JOINdbo.SC ON o = o INNER JOIN dbo.STUDENT ONdbo.SC.Sno = dbo.STUDENT.SnoCREATE VIEW dbo.VIEW6WITH SCHEMABINDINGASSELECT dbo.STUDENT.Sno, dbo.STUDENT.Sname, dbo.DEPART.Dname, ameFROM dbo.STUDENT INNER JOINdbo.DEPART ON dbo.STUDENT.Sdno = dbo.DEPART.Dno INNER JOIN dbo.SCON dbo.STUDENT.Sno = dbo.SC.Sno INNER JOIN dbo.COURSE ON o = oCREATE VIEW dbo.VIEW7WITH SCHEMABINDINGASSELECT dbo.TEACHER.Tname, ameFROM dbo.TEACHER INNER JOINdbo.TC ON dbo.TEACHER.Tno = dbo.TC.Tno INNER JOINdbo.COURSE ON o = oCREATE VIEW dbo.VIEW8WITH SCHEMABINDINGASSELECT dbo.TEACHER.Tname, ame, dbo.STUDENT.Sname FROM dbo.TEACHER INNER JOINdbo.TC ON dbo.TEACHER.Tno = dbo.TC.Tno INNER JOIN dbo.COURSE ONo = o INNER JOIN dbo.SC ON o =o INNER JOIN dbo.STUDENT ON dbo.SC.Sno = dbo.STUDENT.Sno 3) 存储过程CREATE PROCEDURE [user1].[PROCEDURE NAME] ASselect distinct s.sname from student s join sc on s.sno=sc.sno where grade <80CREATE PROCEDURE [user1].[PROCEDURE NAME] AS select sname ,sage from student where sdno in (10001,10005,10007)CREATE PROCEDURE [user1].[PROCEDURE NAME] AS select Sname,Sage from STUDENT WHERE Sage <22CREATE PROCEDURE [user2].[sum] AS select count(distinct sno) from scCREATE PROCEDURE [user3].[tac] ASselect sname ,tname,t.dno from student s join sc on s.sno=sc.sno join tc on o=o join teacher t on t.tno=tc.tnoCREATE PROCEDURE [user2].[teacher] AS select tname,tsalary from teacher order by tsalaryCREATE PROCEDURE [user3].[teacherc] ASselect tname,cname from teacher t join tc on t.tno =tc.tno join course c on o=oCREATE PROCEDURE [user4].[yuanxi] AS select * from student s join depart d ons.sdno=d.dnoCREATE PROCEDURE [user4].[yua nxi2] ASselect dno,sn ame,sage from stude nt s join depart d on s.sd no=d.d noCREATE PROCEDURE [user1].[zha ng] ASselect * from stude nt where sn ame like' 张__'4) 触发器create trigger tr_stud on stude ntfor updateasdeclare @msg varchar(100)select @msg=str(@@rowco un t)+' stude nts has bee n updated' print @msgreturncreate trigger truteacher on teacherfor update asif update(t no)beginupdate tcset tno=i.tno from tc,inserted i,delected d where tc.tno=d.tnoendcreate trigger [delete] on [dbo].[tc]for deleteasdelete scfrom sc,deleted dwhere sc.c no=d.c no5) 用户名称笠录名数据犀谴问许可许可许可许可许可車USERS USERS怦可6)角色席mvi 昭r pa literstandby erffluser7)索引ALTER TABLE [dbo].[COURSE] WITH NOCHECK ADDCONSTRAINT [PK_COURSE_CB] PRIMARY KEYCLUSTERED[Cno] )ON [PRIMARY] GOALTER TABLE [dbo].[DEPART] WITH NOCHECK ADDPRIMARY KEY CLUSTERED ([Dno] )ON [PRIMARY] GOALTER TABLE [dbo].[SC] WITH NOCHECK ADDCONSTRAINT [PK_SC_0425A276] PRIMARY KEY CLUSTERED([Sno], [Cno] )ON [PRIMARY] GOALTER TABLE [dbo].[STUDENT] WITH NOCHECK ADDPRIMARY KEY CLUSTERED ([Sno] )ON [PRIMARY] GO序fs用堆唯推准淮应标标标标标ALTER TABLE [dbo].[TEACHER] WITH NOCHECK ADD CONSTRAINT [PK_TEACHER] PRIMARY KEY ([Tno] ) ON [PRIMARY] GOALTER TABLE [dbo].[COURSE] WITH NOCHECK ADDCONSTRAINT [UQ__COURSE__023D5A04] UNIQUE ([Cno] ) ON [PRIMARY] GOALTER TABLE [dbo].[DEPART] WITH NOCHECK ADDUNIQUE NONCLUSTERED([Dno] ) ON [PRIMARY] GOALTER TABLE [dbo].[SC] WITH NOCHECK ADD CONSTRAINT [CK_SC] CHECK ([GRADE] <= 100) GOALTER TABLE [dbo].[STUDENT] WITH NOCHECK ADDUNIQUE NONCLUSTERED([Sno] ) ON [PRIMARY] GOALTER TABLE [dbo].[TEACHER] WITH NOCHECK ADDUNIQUE NONCLUSTERED([Tno]) ON [PRIMARY] GOCLUSTEREDNONCLUSTEREDCREATE UNIQUE INDEX [COURSE_Index_1] ON [dbo].[COURSE]([Cname]) ON [PRIMARY] GO 8) 完整性约束ALTER TABLE [dbo].[SC] ADDCONSTRAINT [FK__SC__Cno__060DEAE8] FOREIGN KEY([Cno]) REFERENCES [dbo].[COURSE] ([Cno]),CONSTRAINT [FK__SC__Sno__0519C6AF] FOREIGN KEY([Sno]) REFERENCES [dbo].[STUDENT] ([Sno]) ON DELETE CASCADE GOALTER TABLE [dbo].[STUDENT] ADDFOREIGN KEY([Sdno]) REFERENCES [dbo].[DEPART] ([Dno])GOALTER TABLE [dbo].[TC] ADDCONSTRAINT [FK__TC__Cno__09DE7BCC] FOREIGN KEY ([Cno])REFERENCES [dbo].[COURSE]([Cno]),CONSTRAINT [FK_TC_Tno_08EA5793] FOREIGN KEY([Tno])REFERENCES [dbo].[TEACHER]([Tno])GOALTER TABLE [dbo].[TEACHER] ADDFOREIGN KEY([Dno])REFERENCES [dbo].[DEPART]([Dno])GO7 VB部分登陆界面登陆后界面谍程信息I教师信息维护I 学生基本信息修改学生信息学生课程信息查询课程信息课程查询教师信息查询教师信息增添TitoTnameTat&TsalirV ►200600100198 飙悦邨4700 20060011DOSO46 5900 2QO6QOL10091 丁涛39 6000 ZQ060011016542 5700 200800110244 高金花-45 4800 20080012000243 40002008X120GIM 尹翩 45 43002OD8 00120005 牖it41 450020080012000751 34002OCK0OL20O0a 商兗区 425100200S0012Q012 庄±01EDE8002OD8 00120013 11 450D200800120014393900200600L2001T【宋代螯45BOOOXfflX)添加歩)_硼M _卅際迪)| M| 4|Record: 1。

相关主题