求学生考勤系统报表/数据库设计方案

MyRee 2005-03-11 03:32:32
本人的毕业设计要求是做一个中学的考勤系统(Delphi+MS SQL server)
学生考勤时用C/S模式输入数据到Server中
学校管理人员可以用B/S模式从Server中查看记录
这个中学有初中和高中部,都在一起上课.
学校有一种特殊的"选课"制
学校规定每个年级的课表,就拿高一年级星期一的课程来说吧
星期一 ..
上 1 数学 ..
2 英语 ..
3 语文 ..
午 4 体育 ..

下 5 自然 ..
6 数学 ..
7 英语 ..
午 8 英语 ..

同一年级的同一门课程有3个老师上,这3个老师在不同的教室里
学生可以根据喜好到不同老师老师那听课,而且可以每次都到不同
的老师那里听.
每个上课的地方(一般是教室)都有考勤机器,学生都有考勤卡

我要设计一个数据结构来体现学生的出勤信息

我这里有一个设想

上课的时候的数据

学生 : 学号*
姓名
性别
年龄
年级

课程:课程号*
上课老师
所在教室所能容纳的人数

教师:教师号*
姓名
性别
年龄


这个数据结构设计的有很大问题
我要怎么样设计才能统计学生的出勤信息还有老师的出勤?


请给点提示或者资料,谢谢
100分聊表谢意,我以后还有更多的问题要问的:)
...全文
516 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
MyRee 2005-03-16
  • 打赏
  • 举报
回复
给个下载地址 ?
MyRee 2005-03-16
  • 打赏
  • 举报
回复
结账了,谢谢大家的帮忙
MyRee 2005-03-16
  • 打赏
  • 举报
回复
king20151111 2005-03-15
  • 打赏
  • 举报
回复
这种系统在网上有现成的系统,下载一个下来看看吧
ohui 2005-03-15
  • 打赏
  • 举报
回复
补充一下。第一个查询表少打了一个字母'b'
SELECT ISNULL((SELECT SUM(1) FROM 学生表 a WHERE a.学号= b.学号),0.00) as '出勤人数'/SUM(1)*100 FROM 上课记录表 b

这种格式的查询语句虽然可以满足要求。不过可能生成结果的速度会太慢。不过你是做毕业论文。对速度要求不大。只要能得出结果就可以了。如果是以后做商业软件这种方式就要分情况考虑。
ohui 2005-03-15
  • 打赏
  • 举报
回复
老师的出勤率:

SELECT ISNULL((SELECT SUM(1) FROM 教师表 a WHERE a.教师号= b.教师号),0.00) as '出勤人数'/SUM(1)*100 FROM 上课记录表 b group by b.教师号

以上部分内容引用了‘真名’的内宾。特此说明与感谢。
ohui 2005-03-15
  • 打赏
  • 举报
回复
我提供一个思路。
学生表 : 学号*
姓名
性别
年龄
年级
课程表:课程号* ,课程名
教师表:教师号*
姓名
性别
年龄
上课记录表:ID
课程号
学生号
教师号

如果要统计学生的出勤率

SELECT ISNULL((SELECT SUM(1) FROM 学生表 a WHERE a.学号= b.学号),0.00) as '出勤人数'/SUM(1)*100 FROM 上课记录表
MyRee 2005-03-14
  • 打赏
  • 举报
回复
请帮帮我的阿
kuailewangzi1212 2005-03-14
  • 打赏
  • 举报
回复
跟大家提一个问题,如果是学生一年之后升级、留级怎么办呀?大家考虑考虑,我一直不得其解
real_name 2005-03-14
  • 打赏
  • 举报
回复
老大,
我给你想的那么辛苦, 你也不说两句
ohui 2005-03-14
  • 打赏
  • 举报
回复
跟着
rjyun 2005-03-13
  • 打赏
  • 举报
回复
有意思,各位大俠,拔刀相助
wt505 2005-03-13
  • 打赏
  • 举报
回复
嗯!

不好意思,我也快毕业了,这方面的问题我还没有遇到过,那我也帮你顶一下吧!!!
rocklabzhang 2005-03-13
  • 打赏
  • 举报
回复
有意思
up
MyRee 2005-03-12
  • 打赏
  • 举报
回复
主要是人很多阿,一个学校初中加高中有好几个班。
而且假如教一 101 8:00-9:00 为高一 01班 数学课
但是 101 9:10-10:00 就可能为 初三 02班 语文课
real_name 2005-03-11
  • 打赏
  • 举报
回复
上课的时候的数据
学生表 : 学号*
姓名
性别
年龄
年级
课程表:课程号* ,课程名
教师表:教师号*
姓名
性别
年龄
教室表:教室号*,教室名(或是教室地点),所在教室所能容纳的人数------------这个就不要了吧
当日老师出勤表:日期,第几节课,教室号,教师号,课程号,
当日学生出勤表:日期,第几节课,教室号,学号,课程号,
统计学生的出勤 select count(学生表.学号)-sum(当日学生出勤表.学号)
from 当日学生出勤表 ,学生表 where 日期= xxxxxxxx
老师的出勤 一样

WM_USER 2005-03-11
  • 打赏
  • 举报
回复
这得算是一个比较复杂的关系模型了,
UP一下
WM_USER 2005-03-11
  • 打赏
  • 举报
回复
顶一下,希望楼主在做的过程中把你的思想及其其它的一些东西都拿出来讨论一下,难得的学习机会呀!!
bangchui 2005-03-11
  • 打赏
  • 举报
回复
顶一下,希望楼主在做的过程中把你的思想及其其它的一些东西都拿出来讨论一下,难得的学习机会呀!!
子陌红尘 2005-03-11
  • 打赏
  • 举报
回复
这得算是一个比较复杂的关系模型了,可惜今天马上就下班了,改天研究一下。

UP一下
加载更多回复(1)

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧