ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:578.32KB ,
资源ID:7500372      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7500372.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库课程设计 学生考勤.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库课程设计 学生考勤.docx

1、数据库课程设计 学生考勤湖南文理学院数据库原理与应用报告 专业班级: 电信12101班 学生姓名: 学生学号: 指导教师: 刘长青 设计时间: 2015.1.4-2015.1.10 一、需求分析1、数据需求2、数据流图3、数据字典二、概念结构设计三、逻辑结构设计四、物理结构设计五、数据库的实施1、创建数据库2、数据表的维护与创建3、数据库索引和视图4、查询操作六、数据库触发器的规划和设计七、数据库的安全管理与维护八、结论学生考勤管理系统一、需求分析为物电学院设计一个学生考勤管理系统,该系统主要实现对学生基本信息、教师基本信息、学生考勤等的管理,学生考勤管理系统功能需求包括:学生基本信息表,教师

2、基本信息表,班级表,专业表,课程表,班主任表,请假信息表,上课出勤记录表。1、数据需求:(1)学生基本信息表:学号,姓名,性别,班级,专业,院系(2)教师基本信息表:姓名,性别,编号(3)班级表:班主任,名称,编号(4)专业表:专业名称,编号(5)课程表:课程号,课程名,课程性质(6)班主任表:编号,姓名,性别(7)请假信息表:编号,学号,原因,开始时间,结束时间,请假天数,申请请假时间,班主任审批状态,班主任审批时间(8)上课出勤记录表:编号,上课时间,学号2、数据流图:3、数据字典(1)数据项数据项:学号别名:学生编号含义说明:唯一标识每个学生类型:字符型长度:9位取值范围:0000009

3、9取值含义:前四位表示学年,第5,6,7位表示专业和班级,第8,9,表示学号(2)数据结构数据结构:学生含义说明:学生考勤管理系统子系统的主体结构数据,定义了一个学生的有关信息组成:学号、姓名、性别、班级、专业、电话号码(3)数据流数据流名:请假信息表说明:学生请假信息及相关课程数据流来源:学生基本信息表,教师基本信息表、课程信息表数据流去向:请假学生、课程、组成:请假原因+学生学号+请假时间平均流量:500条/年高峰流量:50/天(4)数据存储数据存储:学生基本信息表说明:记录学生的基本信息写文件的处理:新生入学报到后从学院新生登记表中获取信息输入流出数据流:为请假信息表提供学生基本信息组成

4、:学号、姓名、性别、班级、专业、手机号码、数据量:平均每年2000条存取方式:随机存取二、概念结构设计E-R模型:三、逻辑结构设计1、学生表student字段名数据类型可否为空键引用备注stu_nochar(10)否主键学生学号stu_namevarchar(30)否学生姓名stu_sexchar(2)否性别stu_classchar(13)否外键所属班级stu_majorchar(30)否外键所属专业Stu_tellvarchar(20)否电话号码2、专业表major字段名数据类型可否为空键引用备注major_idnumber否主键专业编号major_namechar(20)否专业名称3、教

5、师表teacher字段名数据类型可否为空键引用备注tea_nochar(10)否主键任课老师编号tea_namechar(20)否任课老师姓名tea_sexchar(2)否性别tea_tellVarchar(20)否电话号码4、班主任表classteacher字段名数据类型可否为空键引用备注classtea_nochar(5)否主键任课老师编号classtea_namechar(20)否任课老师姓名classtea_sexchar(2)否性别classtea_majornumber否外键所属专业classtea_tellVarchar(20)否电话号码5、学生上课出勤记录表kaoqin_rec

6、ord字段名数据类型可否为空键引用备注kaoqin_idchar(13)否主键上课出勤编号sk_timedate否上课时间stu_numberchar(10)否外键学生学号stu_statuschar(10)否学生上课考勤状态teacher_nochar(10)否外键教师编号course_nochar(13)否外键课程编号6、课程信息表course字段名数据类型可否为空键引用备注course_nochar(13)否主键课程编号course_namechar(20)否课程名称course_xzchar(4)否课程性质7、班级表classes字段名数据类型可否为空键引用备注class_nochar

7、(10)否主键课程编号class_namechar(20)否课程名称classtea_nochar(5)否外键课程性质8、请假信息表qingjia字段名数据类型可否为空键引用备注idnumber否主键请假代号class_idchar(10)否外键班级代号stu_novarchar2 (20)否外键学生学号leave_reasonvarchar2 (200)否请假原因start_timedate否开始时间end_timedate否结束时间day_numbernumber否请假天数qingjia_timedate否申请请假时间class_tea_idchar(5)否外键class_tea_sp_s

8、tatuschar(10)否班主任审批状态class_tea_sp_timedate否班主任审批时间备注:status 表示审批状态:0为等待审批,1为同意请假,2为不同意请假。四、物理结构设计确定数据库的物理结构整个数据库包括八个表,每个表都有不同的联接关系,还有创建的视图也将表联系起来。 存取途径:索引存取方法 (1)按学生所在班级建立索引,可提高查询速度。 (2)查询常用到的字段(学生学号、学生姓名、课程编号、教师姓名),可创建索引。五、数据库的实施1、创建数据库CREATE DATABASE studentkaoqin ON PRIMARY ( NAME = Nstudentkaoqi

9、n, FILENAME = NE:fsfsqlstudentkaoqin.mdf ) ( NAME = Nstudentkaoqin_log, FILENAME = NE:fsfsqlstudentkaoqin_log.ldf)2、数据表的创建和维护(1)表的创建- 专业表major create table major( major_id int not null, major_name char(10) not null, constraint pk_major primary key (major_id)- 教师表teachercreate table teacher( tea_no c

10、har(10) not null, tea_name char(20) not null, tea_sex char(2) check (tea_sex=男 or tea_sex=女), tea_tell varchar(20) not null, constraint pk_teacher primary key (tea_no)- 班级表classescreate table classes( class_no char(10) primary key, class_name char(20) not null,)- 学生表studentcreate table student( stu_

11、no char(10) not null, stu_name varchar(30) not null, stu_sex char(2) check (stu_sex=男 or stu_sex=女), stu_tell varchar(20) not null, stu_class char(10) references classes(class_no), stu_major int references major(major_id), constraint pk_student primary key(stu_no)- 课程信息表coursecreate table course( co

12、urse_no char(13) primary key, course_name char(20) not null, course_xz char(4) not null)- 学生上课出勤记录表kaoqin_recordcreate table kaoqin_record( kaoqin_id char(13) primary key not null, sk_time datetime not null, stu_number char(10) references student(stu_no), stu_status char(10) not null, teacher_no cha

13、r(10) references teacher(tea_no), course_no char(13) references course(course_no)- 请假信息表qingjiacreate table qingjia( id int primary key, class_id char(10) references classes(class_no), stu_no char(10) references student(stu_no), leave_reason varchar(200) not null, start_time datetime not null, end_t

14、ime datetime not null, day_number int not null, qingjia_time datetime not null, class_tea_id char(5) references classteacher(classtea_no), class_tea_sp_status char(10), class_tea_sp_time datetime,)- 班主任表classteachercreate table classteacher( classtea_no char(5) not null, classtea_name char(20) not n

15、ull, classtea_sex char(2) check (classtea_sex=男 or classtea_sex=女 )classtea_tell varchar(20) not null, classtea_major int references major(major_id), constraint pk_classteacher primary key (classtea_no)(2)添加约束手机号码的限制alter table studentadd constraint ck_telphone1check(Telphone like 0-90-90-90-90-90-9

16、0-90-90-90-90-9)alter table classteacheradd constraint ck_telphone2 check(Telphone like 0-90-90-90-90-90-90-90-90-90-90-9)alter table teacheradd constraint ck_telphone2 check(Telphone like 0-90-90-90-90-90-90-90-90-90-90-9)(3)添加内容-1、学生表student 添加内容insert into student values(201210101, 黄小明, 男, 201210

17、1, 1, )insert into student values(201210102, 张乐, 男, 2012101, 1, )insert into student values(201220101, 刘丹, 男, 2012201, 2, )insert into student values(201220102, 程冬冬, 男, 2012201, 2, )insert into student values(201230101, 胡雪露, 男, 2012301, 3, )insert into student values(201230102, 张亮, 男, 2012301, 3, )

18、-2、班主任表classteacher 添加内容insert into classteacher values(01, 刘敏, 女, 1, )insert into classteacher values(02, 刘圆圆, 女, 1, )insert into classteacher values(03, 刘峰, 女, 2, )insert into classteacher values(04, 胡学达, 女, 2, )-3、课程表course 添加内容insert into course values(01, 单片机原理及应用, 考试)insert into course values(

19、02, 大学物理, 考试)insert into course values(03, 数据库原理及应用, 考察)insert into course values(04, 模拟电子技术, 考试)insert into course values(05, 高等数学, 考试)insert into course values(06, 大学英语, 考试)insert into course values(07, 大学体育, 考察)-4、考勤记录表kaoqin_record 添加内容insert into kaoqin_record values(01, 2015/1/8 8:00, 20121010

20、1, 缺课, 01 ,01)insert into kaoqin_record values(02, 2015/1/9 14:30, 201220102, 请假, 06 ,02)insert into kaoqin_record values(03, 2015/1/9 14:30, 201230101, 缺课, 04 ,05)insert into kaoqin_record values(04, 2015/1/10 9:00, 201230102, 缺课, 05 ,03)insert into kaoqin_record values(05, 2015/1/10 14:30, 2012101

21、02, 请假, 05 ,03)insert into kaoqin_record values(06, 2015/1/11 7:00, 201220101, 缺课, 02 ,06)-5、专业表major 添加内容insert into major values(1, 电子信息)insert into major values(2, 光电技术)insert into major values(3, 物理)-6、请假表qingjia 添加内容insert into qingjia values(1, 2012201, 201220102, 生病, 2015/1/8 0:00, 2015/1/10

22、0:00, 3,2015/1/7 0:00, 01 ,1, 2015/1/8 0:00,)insert into qingjia values(2, 2012101, 201210102, 考驾照, 2015/1/10 0:00, 2015/1/11 0:00, 1,2015/1/9 0:00, 02 ,1, 2015/1/9 0:00,)insert into qingjia values(3, 2012201, 201220101, 兼职, 2015/1/11 7:00, 2015/1/11 18:00, 1,2015/1/10 0:00, 04 ,2, 2015/1/10 0:00,)-

23、7、班级表classes 添加内容insert into classes values(2012101, 电信)insert into classes values(2012201, 光电)insert into classes values(2012301, 物理)-8、教师表teacher 添加内容insert into teacher values(01, 刘大磊, 男, )insert into teacher values(02, 赵霞, 男, )insert into teacher values(03, 张天, 男, )insert into teacher values(04,

24、 张雪艳, 女, )insert into teacher values(05, 刘涛, 女, )insert into teacher values(06, 陈龙, 男, )3、数据库索引和视图(1)创建索引-为表student 和teacher 中的Telphone 字段创建一个唯一索引PK_telphonecreate unique index unq_ stu_tell 1 ON student(stu_tell)create unique index unq_ tea_tell 2 ON teacher(tea_tell)-为表course中的course_no字段创建升序的聚集索引

25、create clustered index clu_ course_no on student(course_no)(2)创建视图学生考勤视图:CREATE VIEW dbo.考勤ASSELECT dbo.student.stu_name AS 学生姓名,dbo.kaoqin_record.stu_status AS 考勤状态, dbo.course.course_name AS 课程名, dbo.kaoqin_record.sk_time AS 上课时间, dbo.teacher.tea_name AS 教师姓名, dbo.teacher.tea_tel AS 教师电话FROM stude

26、nt,kaoqin_record, course,teacher 请假视图:CREATE VIEW dbo.请假ASSELECT dbo.classes.class_name AS 班级, dbo.student.stu_name AS 学生, dbo.qingjia.leave_reason AS 请假原因, dbo.qingjia.day_number AS 请假天数, dbo.classteacher.classtea_name AS 班主任, dbo.qingjia.class_tea_sp_status AS 审批状态FROM dbo.classes, dbo.classteache

27、r , dbo.student , dbo.qingjia4、查询操作(1)基本查询-1查询student表中所有学生的全部信息SELECT * from student(2)条件查询-1、查询电信班,男学生 select * from student where stu_sex=男 and stu_class=2012101(3)排序查询- 查询考试的课程并按降序排列SELECT course_no,course_name,course_xz FROM courseWHERE course_xz=考试ORDER BY course_no DESC(4)筛选和分组查询-查询请假天数小于2天的学生学号SELECT stu_no,day_number FROM qingjiaGROUP BY stu_no,day_numberHAVING day_number2(5)联结查询-查询学生专业SELECT DISTINCT student.* ,major.*FROM student,ma

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1