您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 数据库选课系统设计文档
《数据库设计——选课系统》院系:计算机科学与技术专业:软件工程(嵌入式)指导老师:*****学号:*****姓名:***实验日期:2010.6.231.需求分析1.1项目背景许多大学的课程都是通过网上的选课系统进行选课的,因此需要建立一个选课系统的数据库。1.2项目意义通过设计选课系统的数据来方便同学进行选课,提高选课效率。2.数据库概念结构设计3.数据库逻辑结构设计3.1ER图转化为关系模型的方法1.一个实体型转换为一个关系模式。实体的属性就是关系的属性。实体的码就是关系的码。2.一个联系转化为一个关系模式,与该联系相连的各实体的码以及联系的属性转化为关系的属性,该关系的码则有三种情况:若联系为1:1,则每个实体的码均是该关系的后选码。若联系为1:n,则关系的码为n端实体的码。若联系为m:n,则关系的码为诸实体码的组合。3.同一实体集的实体间的联系,即自联系,也可按上述1:1、1:n和m:n三种情况分别处理。4.具有相同码的关系模式可合并。为了减少系统中的关系个数,如果两个关系模式具有相同的主码,可以考虑将他们合并为一个关系模式。合并方法是将其中一个关系模式的全部属性加入到另一个关系模式中,然后去掉其中的同义属性(可能同名也可能不同名),并适当调整属性的次序。3.2关系模型学生(学号,姓名,性别)课程(课程号,课程名称,学分)教师(教师编号,教师名,性别)教师教材学生课程讲授选课成绩mmnn1教材(书号,书名,出版社)讲授(课程号,教师编号,书号)选课(学号,课程号,成绩)3.3表结构4.数据库的物理结构设计4.1SQL语句建立表学生表:CREATETABLEStudent(Snochar(10)primarykey,Snamechar(10),Ssexchar(6))课程表:CREATETABLECourse(Cnochar(10)primarykey,Cnamechar(20),Creaditint)教师表:CREATETABLETeacher(Tnochar(10)primarykey,学生学号varchar(10)姓名varchar(10)性别varchar(6)教师教师编号varchar(10)教师名varchar(10)性别varchar(6)选课学号varchar(10)课程号varchar(10)成绩float教材书号varchar(10)书名varchar(20)出版社varchar(20)讲授教师编号varchar(10)课程号varchar(10)书号varchar(10)课程课程号varchar(10)课程名varchar(20)学分intTnamechar(10),Tsexchar(6))教材表:CREATETABLEBook(Bnochar(10)primarykey,Bnamechar(20),Presschar(20))讲授表:CREATETABLETeach(Tnochar(10),Cnochar(10),Bnochar(10),Primarykey(Tno,Cno,Bno),Foreignkey(Tno)referencesTeacher(Tno),Foreignkey(Cno)referencesCourse(Cno),Foreignkey(Bno)referencesBook(Bno))选课表:CREATETABLECourseop(Snochar(10),Cnochar(10),Gradefloat,Primarykey(Sno,Cno),Foreignkey(Sno)referencesStudent(Sno)Foreignkey(Cno)referencesCourse(Cno))4.2表的关系图5.结束语通过这次实验使我对数据库设计有了进一步了解,对数据库的各项操作也更加熟练。
本文标题:数据库选课系统设计文档
链接地址:https://www.777doc.com/doc-4458641 .html