用户 用户编号 所在院系 用户性别 ……. 用户姓名
图3.2 用户实体E-R图
3.教师信息E-R图如图3.3所示
教师信息 自动编号 通信地址 教师姓名 相关课程 所属学院 所属系 E-mail地址 个人主页
图3.3 教师信息实体E-R图
7
4.回复作业实体E-R图如图3.4图所示
回复作业 自动编号 回复日期 学生姓名 作业标题 作业内容 图3.4 回复作业实体E-R图
作业ID号
该E-R图有6个实体类型,其属性如下:
用户(主键,用户帐号,用户密码,用户类型,用户姓名,用户性别,用户所在院系,教师姓名)
课程(主键,课程编号,课程名称,开课院系,上课时间,上课阶段,任课教师,课程学分,上课地点,课程备注)
作业(主键,作业标题,作业在服务器的保存地址,1.发布作业2.学生提交答案,课程编号,提交答案学生编号,1答案教师未浏览2.教师已浏览)
公告(主键,公告标题,公告内容,公告发布日期,课程编号)
课程资源(主键,资源名称,课程编号,资源在服务器的存放位置,资源上传日期,资源扩展名,资源大小,类型1能浏览2可下载)
选课记录(主键,课程编号,学生编号,选课日期) 3.2.4数据库逻辑结构设计
根据以上的总体设计得出以下的逻辑设计:
表3.1用户信息表 t_user
字段名 类型 关键字与否 关键字 备注 主键,递增 用户帐号 id accout
int[10] char[50] 8
password type name sex collage teacher Varchar[200] int[50] char[50] char Varchar[50] char[50] 用户密码 用户类型 用户姓名 用户性别 用户所在院系 若type=1此为教师姓名 表3.2 课程表 t_course
字段名 类型 关键字与否 关键字 表3.3作业表 t_homework
字段名 类型 关键字与否 关键字 备注 主键 作业标题 保存地址 发布时间 1发布作业2提交答案 课程编号 提交作业答案学生编号 1提交作业未浏览2已浏览 表3.4教学资源表 t_resouce
字段名 类型 关键字与否 关键字 9
备注 主键 课程编号 课程名称 开课院系 上课时间 上课阶段 任课教师 课程学分 上课地点 课程备注 id Course_code Course_name collage Course_time Start_end Course_teach Course_credit Course_site Course_note int[50] Varchar[50] Varchar[50] Varchar[50] Varchar[50] Varchar[50] Varchar[50] Varchar[50] Varchar[50] Varchar[50] id title link date type Course_code User_site Course_note int Varchar varChar datetime char varchar varchar char 备注 主键 资源名称 课程编号 存放位置 id title Course_id link
int varChar varChar varChar
date ext filesize type
varChar varChar varChar char 上传日期 资源扩展名 资源大小 1能浏览2能下载 表3.5课程公告表 t_notice
字段名 类型 关键字与否 关键字 备注 主键 公告标题 公告内容 公告发布日期 课程编号 id title detail date Course_id int[20] varChar[20] varChar[11] datetime char 表3.6选课记录表 xk_record
字段名 类型 关键字与否 关键字 备注 主键 课程编号 学生编号 选课日期 id Course_id User_code date int[20] varChar[20] varChar[11] datetime 3.2.5建表的SQL语句
完成逻辑设计后,开始在SQL数据库中建立实际的数据库及各个表,下面是创建数据库及表的SQL语句:
Create Database teachonline; --创建数据库 用户信息表:
Create Table t_user (
id int(8) PRIMARY KEY, accout char(10) password varchar(2) type int(2)
name char(50) NULL, sex char(10) NULL, collage varchar(50) NULL, teacher char(50) NULL, );
课程表:
10
Create Table t_course ( id course_code course_name collage course_time start_end course_teah course_credit course_site
int(8) PRIMARY KEY, varchar(10) varchar(2) varchar(2)
varchar(50) NULL, varchar(10) NULL, varchar(50) NULL, varchar(50) NULL, varchar(20) NULL,
course_note varchar(50) NULL, );
作业表:t_homework
Create Table t_homework (
id int(8) PRIMARY KEY, title varchar(10) link varchar(50) date datetime(10)
type char(50) NULL, course_code varchar(50) NULL, user_id varchar(50) NULL, status char(50) NULL, );
教学资源表:t_resource
Create Table t_resource (
id int(8) PRIMARY KEY, title varchar(10) course_id varchar(50) link varchar(50)
date datetime ext varchar(50) filesize varchar(50 type char(50) );
NULL, NULL, NULL, NULL,
课程公告表:t_notice
Create Table t_notice (
id int(8) PRIMARY KEY,
11