在线考试系统数据库设计

合集下载

考试系统数据模型设计文档

考试系统数据模型设计文档

考试系统数据模型设计文档目录一、项目背景 (2)二、术语和缩写词 (2)2.1 术语 (2)2.2 缩写词 (3)三、数据模型概述 (3)3.1 模型范围 (3)3.2 模型目标 (3)四、概念数据模型(CDM) (3)4.1 实体关系图(ERD) (3)4.2 实体说明 (4)五、逻辑数据模型(LDM) (5)5.1 表结构设计 (5)5.2 视图设计 (6)5.3 存储过程设计 (6)六、物理数据模型(PDM) (7)6.1 数据库选型 (7)6.2 数据库架构设计 (7)6.3 数据存储和性能优化 (7)七、数据安全设计 (8)7.1 用户和权限管理 (8)7.2 数据加密 (8)八、数据备份和恢复策略 (8)8.1 备份计划 (8)8.2 恢复策略 (8)九、数据模型验证和维护 (9)9.1 验证计划 (9)9.2 维护计划 (9)十、附录 (9)10.1 参考资料 (9)10.2 数据字典 (9)一、项目背景随着教育信息化的发展,考试的形式和方式也在不断变革。

为了满足在线考试的需求,提高考试的效率和质量,开发一款功能强大、稳定可靠的考试系统至关重要。

本数据模型设计文档旨在为考试系统的数据库设计提供详细的规划和说明。

二、术语和缩写词2.1 术语✓考生:参与考试的人员。

✓试题:考试中呈现给考生的问题。

✓试卷:一组试题的集合,用于一次考试。

✓考试:考生在规定时间内完成试卷答题的过程。

✓成绩:考生完成考试后获得的分数。

2.2 缩写词✓UID:用户标识(User Identifier)✓SID:试卷标识(Sheet Identifier)✓TID:试题标识(Test Identifier)三、数据模型概述3.1 模型范围本数据模型涵盖了考试系统中与考生信息、试题管理、试卷生成、考试安排、成绩统计等相关的功能模块。

3.2 模型目标✓支持高效的试题录入、存储和检索。

✓实现灵活的试卷生成和管理。

✓准确记录考试过程和结果。

在线考试系统数据库设计

在线考试系统数据库设计

(一)考生
考生=编号+姓名+密码+性别+注册时间+提示问题+问题答案+专业+身份证号编号设计=类型(1:考生;
2:教师;3:管理员)+注册序号
(二)教师
教师=编号+姓名+密码+性别+注册时间+提示问题+问题答案+专业+身份证号编号设计=类型(0:考生;1:教师;2:管理员)+注册序号
(七)管理员管理员=编号+姓名+密码+性别+加入时间+身份证号+类别编号设计=类型(0:考生;1:教师;2:管理员)+注册序号
(四)套题
套题=编号+名称+所属课程+添加时间
tb Tao
(六)单选题考试题目
(七)多选题考试题目
(八)填空考试题目
(九)判断题考试题目
tb_pan Questio ns 表的结构
字段名
数据结构 是否为空
是否主键/外默认值 键
描述
(十)客观题(问答题,计算题该部分由教师批改)考试题目
tb objQuestions 表的结构
(十一)考生成绩信息表
tb stuResult
(十二)考生选课表
tb stuLesson
(十三)教师选课表
tb_tecLesson表的结构。

基于Web数据库在线考试系统的设计与实现研究

基于Web数据库在线考试系统的设计与实现研究
本, 将教师从繁重的考试工作 中解放 出来 , 使得教师有更 多的时 间和精 力投 身于教学 科研 工作 中去 , 同时 也为学 生提供 一个 较为公平 、 公正的考试环境 . 针对这种情况 , 笔者利用 AS P和 We 数据库技术 相结 合设计 了一套基于 We b b的通用在线考试 系 统. 它克服了 目前许 多考试系统通常存在 的不 足 : ①只适 用于某 一科 目, 具备 通用性 ; 不能现 场 随机抽 取试 卷 ; 不 ② ③交 互性 欠佳 , 具有很强的通用性和灵 活性 .
查询 等.
第二级 : 教师 , 主要 有维 护试题库 、 设定 出题 规则 、 统计考生考试成绩 等权限 .
第 三级 : 学生 , 主要有 参加考试 , 询 自己分数的权限 . 查
整个试题 库和教师学生注册密码权 限都是通过 We 数据 库进 行管理 , b 系统管 理员具有最高权 限 .
1 系统 功能分析
1 1 系统 结构 图 .
系统采用 AS P+S OL—Sre0 0实 . 第一级 : 系统管 理员 , 具有对系统 的绝对权限 . 管理 员 以专有 权 限登陆 系统 , 完成 对教 师和考 生信 息 的增 加 、 删除 、 修改 、
De i n an e lz to r e r h o nlne e a y tm a e n we t b e sg d r a ia in e a c n o i x m s se b s d o b da a a s s
F AN n z i Yu —h
0 引 言
随着 网络技术 和数据库技术 的迅 速发展 , 的技术手段 和载体都 发生 了革命性 的变化 . 考试 在传 统考试 方式 中 , 工组卷 、 人 改卷 等导致教 师工 作量 繁重 , 且效率低 下. 各教 育部 门迫切需 要开 发出 一套基 于 We 数据 库 的在线 考试 系统 以降低 考试 成 b

java在线考试系统课程设计

java在线考试系统课程设计

java在线考试系统课程设计一、课程目标知识目标:1. 理解Java语言面向对象编程的基本概念,掌握类的定义、属性和方法的创建与调用。

2. 学会使用Java集合框架处理数据,掌握异常处理机制。

3. 掌握Java在线考试系统的需求分析、功能模块划分和数据库设计。

技能目标:1. 能够运用所学知识独立设计并实现一个Java在线考试系统。

2. 通过实际操作,提高问题分析、系统设计和编程实现的能力。

3. 学会使用Java开发工具(如Eclipse)进行项目开发,培养良好的编程习惯。

情感态度价值观目标:1. 培养学生团队协作精神,提高沟通与协作能力。

2. 增强学生对Java编程的兴趣,激发主动学习的热情。

3. 培养学生面对问题时的积极态度,勇于克服困难,提高解决问题的能力。

课程性质:本课程为实践性较强的课程,旨在通过Java在线考试系统项目的设计与实现,让学生掌握Java编程的基本知识和技能,提高实际项目开发能力。

学生特点:学生已具备一定的Java基础,具有较强的学习能力和探究精神,但实际项目经验不足。

教学要求:注重理论与实践相结合,充分调动学生的主观能动性,培养其独立思考和解决问题的能力。

通过项目实践,使学生能够将所学知识应用于实际项目中,提高编程技能和团队协作能力。

同时,关注学生情感态度价值观的培养,激发学习兴趣,为其未来的学习和发展奠定基础。

二、教学内容1. Java面向对象编程基础:- 类与对象- 继承与多态- 抽象类与接口- 异常处理2. Java集合框架:- List、Set、Map接口及其实现类- 集合的遍历与操作3. 数据库设计:- 数据库基本概念- SQL语句编写- JDBC连接数据库4. Java在线考试系统设计与实现:- 系统需求分析- 功能模块划分- 数据库设计- 界面设计- 业务逻辑实现5. 项目实践:- 分组合作,明确分工- 项目进度安排与监控- 编码规范与代码审查- 系统测试与优化教学内容根据课程目标进行科学性和系统性的组织,涵盖Java面向对象编程、集合框架、数据库设计和项目实践等方面。

在线考试系统技术方案

在线考试系统技术方案

在线考试系统技术方案目录一、背景 (3)二、系统内容 (4)2.1、考试内容的设计和编辑 (4)2.1.1题型设计 (4)2.1.2题目难度设置 (4)2.1.3题目数量制定 (6)2.1.4考试内容的时效性 (7)2.1.5答案设置 (7)2.1.6试卷组成 (7)2.1.7试卷评分标准 (7)2.2 系统用户管理 (8)2.2.1用户注册 (8)2.2.2登录模块 (8)2.2.3用户信息管理 (8)2.2.4用户权限和角色控制 (8)2.2.5用户反馈和处理 (8)2.3 考试流程管理 (9)2.3.1考试安排 (9)2.3.2考试提醒 (9)2.3.3考试监管 (9)2.3.4试卷发放 (9)2.3.5答题记录和评分 (10)2.3.6考试结果查询 (10)2.3.7考试数据处理 (10)2.4 考试安全性管理 (10)2.4.1身份验证机制 (10)2.4.2试卷加密 (11)2.4.3考试监管 (11)2.4.4网络安全 (11)2.4.5备份与恢复 (11)2.4.6安全审计 (11)2.4.7投诉处理 (11)2.5考试结果分析模块 (12)2.5.1数据搜集 (12)2.5.2数据处理 (12)2.5.3成绩排名 (12)2.5.4能力评估 (12)2.5.5学科分析 (12)2.5.6教师评估 (13)2.5.7可视化分析 (13)2.6 技术支持和维护 (13)2.6.1系统监控 (13)2.6.2数据备份 (13)2.6.3系统更新 (14)2.6.4技术培训 (14)2.6.5技术支持 (14)2.6.6安全防范 (14)2.6.7故障处理 (14)三、数据库设计 (15)3.1用户表(users) (15)3.2试卷表(papers) (15)3.3题目表(questions) (16)3.4答卷表(answers) (16)3.5考试记录表(records) (16)3.6分数汇总表(scores) (17)四、技术方案规划 (20)五、培训 (21)六、其他说明 (21)七、总结 (21)一、背景在线考试系统是一种基于网络技术与计算机软硬件的教育评价工具,它利用互联网的便利性和强大的信息处理能力,提供了一种方便、快捷、高效的教育考核方式。

在线考试及分析系统数据库的分析与设计

在线考试及分析系统数据库的分析与设计
U e i 建 立 一对 一 的关联 。考生 答卷 考 试 时间 sr d 信 息表 记录 考生 的考 试答 案 。考 试成
题 号 题 型
学 生 学号
文 本 文 本 文 本
( )题 库管 理 系统 首 先提 示 教师 输 入用 户 名和 密 码 ,然 后教 师 输 1 入 用户 名和 密码 提 交 ,系 统验 证输 入 的用 户 名和 密码 是 否正 确 ,如 正确 ,
通 过对 系统 的 需求进 行 建模 ,直 观形 象 的 图形化 表示 ,便 于清 晰地 认
支 持 问 题 。N tc p浏 览 器 也 可 以 正 常 显 示 A Pn t 面 。 ③ Pg s e sa e S .e 页 ae:
A P n t 回标 准 的H M 页面 ,可 以正 常地在 常用 的浏 览器 中显 示 。浏 览者 S. e返 TL 查 看页 面 源文 件 时 ,看 到 的是A P n t S . e 生成 的H M 代码 ,而 不 是A P n t TL S . e 程
篡 V 霎A

在 线 考试 及 分析 系 统 数 据 库 的分析 与设 计
焦 建 陈
青岛 266 ) 6 0 1 ( 岛科技大学 信 息科学与技 术学 院 山东 青
[ 摘
要] 设计并分析在 线考试及分析 系统数据库 ,该系统严格 按照 软件工程的模式 来进行设计 ,使用A P n t 术并采用M c o e i r a w a e 0 4 S .e技 a r m d a D e m e v r 2 0 作为设 数据库 AP nt S . e 技术
字段 大 小
8 l 0 8
识 整个 系统 的流程 和 功能 。按 照 面 向对 象的 分析 与 设计 思想 , 首先 分析 员 通 过识 别 出系 统参 与 者 ( 角色 )及 系 统应 完 成 的动作 ( 用例 ),得 到系 统 业 务模 型 图 ( 用例 图 ); 然后 分析 并 得 出各 个动 作 ( 例 )的活 动 图 ( 用 参

网络在线考试系统的数据库设计

网络在线考试系统的数据库设计

网络在线考试系统的数据库设计作者:雷晓敏来源:《中小企业管理与科技·上旬刊》2011年第11期摘要:为了建立一个新型的、安全可靠的网络在线考试系统,数据的安全性和完整性应有较高的要求。

该文介绍了在线考试系统数据库的概念设计、物理结构设计、逻辑结构、数据库连接池技术,对于在线考试系统的数据库设计有一定的参考价值。

关键词:在线考试系统SQL Server 2000数据库连接池技术众所周知,当今社会各种领域与计算机互联网技术越来越密切相关,计算机信息技术的快速发展正在改变着世界。

随着计算机网络及网络应用软件的日益普及,现代化教育蓬勃发展,建立一个新型的、安全可靠的在线考试系统已成为可能。

1 数据库开发工具的选取由于网络在线考试系统对于数据的安全性及完整性要求比较高,并且为了增加程序的适用范围,还要保证系统可以拥有存储足够多的数据能力。

因此需要选择一种可靠、安全和易用的数据库开发工具,SQL Server 2000作为一种高性能的关系型数据库管理系统,有着较好的可靠性、安全性和易用性。

SQL server 2000是Microsoft公司在2000年推出的,它继承了SQL Server 7.0版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,共有4个版本,分别是个人版,标准版,企业版和开发版。

SQL server 2000的特点:①Internet集成。

②可伸缩性和可用性。

③企业级数据库功能。

④易于安装、部署和使用。

2 数据库设计2.1 数据库概念设计2.1.1 考生档案实体考生档案实体包括编号、姓名、密码、性别、专业、班级、提示问题、问题答案、注册时间、身份证号属性。

2.1.2 教师档案实体教师档案实体包括编号、姓名、密码、性别、所属院系、注册时间、联系电话属性。

2.1.3 管理员档案实体教师档案实体包括编号、姓名、密码。

2.1.4 套题实体套题实体包括编号、套题名称、所属课程和添加时间属性。

简单的在线考试系统(JSP+MysqL)

简单的在线考试系统(JSP+MysqL)

北方民族大学课程设计报告系(部、中心)计算机科学与工程学院姓名于淼学号20113185专业计算机科学与技术班级(2)班同组人员尚娜、农晓蕾、杨柳课程名称网络程序设计设计题目名称在线考试系统起止日期 2013.10.10-2013.12.8 成绩________________________________指导老师签名________________________在线考试系统摘要基于Web的在线考试系统——随着计算机及网络技术的飞速发展,Internet/Intranet应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息自动化的作用也越来越大,从而使我们从繁杂的事务中解放出来,提高了我们的工作效率。

在众多的网络服务中,Web 给人耳目一新的感觉,而在这其中,JSP技术和基于Struts框架技术则因为可以进行复杂的数据库操作、很强的交互性以及方便用户控制和管理备受青睐。

目前存在各级各类的考试,而它们的各种工作主要还是依赖于手工完成,手工管理还存在这许多弊端,由于不可避免的人为因素,造成数据的遗漏、误报。

计算机信息化管理有着储存量大,速度快等许多优点,因此我们可以利用计算机网络,利用ASP技术实现动态的管理。

随着计算机网络技术的进一步发展和普及,利用JSP技术开发的各种网络在线考系统必将大行其道。

关键字:JSP技术;Struts ;在线考试系统目录:1、在线考试系统的需求分析 (4)1.1硬件,软件环境说明 (4)1.1.1硬件环境说明 (4)1.1.2软件环境说明 (4)1.1.3在线考试系统网站的技术说明 (7)1.1.3.1关于对B/S架构的理解 (7)1.1.3.2B/S架构带来的巨大好处 (8)1.2功能需求分析 (8)2、在线考试系统的总体规划与结构框图 (8)2.1在线考试系统总体设计 (8)2.2在线考试系统的总体规划设计 (8)2.2.1学生模块 (9)2.2.2管理员模块 (9)2.3在线考试系统各个模块之间的关系图及动作分解 (10)2.3.1各个子模块之间的关系和操作动作分解 (10)2.3.2管理员模块下各个子模块之间的关系及动作分解 (10)3、在线考试系统数据库设计 (11)3.1数据库的需求分析 (11)3.2在线考试系统概念结构设计 (11)3.2.1在线考试系统数据库的实体设计 (11)3.2.2在线考试系统数据库的E-R图 (12)3.3数据库的逻辑结构设计 (13)3.3.1在线考试系统数据库逻辑结构设计 (13)4、针对具体的功能模块写出设计流程图与关键的程序代码 (14)4.1在线考试系统设计流程图 (14)4.2在线考试系统管理模块设计流程图 (14)4.3在线考试系统用户登录模块设计 (15)4.4系统关键程序代码 (16)4.4.1dl.jsp源代码 (16)4.4.2zc.jsp源代码 (18)4.4.3zxks(1).jsp源代码 (23)4.4.4xgzl.jsp源代码 (26)4.4.5htdl.jsp源代码 (31)4.4.6gl_student.jsp源代码 (33)4.4.7gl_addstudent.jsp源代码 (35)4.4.8gl_lesson.jsp源代码 (40)4.4.9gl_addlesson.jsp源代码 (42)4.4.10gl_timu.jsp源代码 (46)4.4.11gl_addtimu源代码 (48)5.测试和演示系统并抓取图形界面 (53)5.1系统开发与运行环境的配置 (53)5.1.1JDK的安装与配置 (53)5.1.2Tomcat的安装与配置 (53)5.1.3Dreamweaver CS3的站点的配置 (53)5.2演示系统并抓取系统图形界面 (58)6、测试结果及存在的问题 (65)6.1测试的结果 (65)6.2存在的问题 (66)7、参考文献 (66)1.在线考试系统的需求分析1.1硬件、软件环境说明1.1.1硬件环境说明在线考试系统的硬件环境是:CPU采用的是Inter(R)Core(TM)i3-2330M CPU@2.20GHz;硬盘容量:500GB;显示器的分辨率是1366×768。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库设计文档成员:指导老师:日期:2011-5-22目录数据库设计文档 (1)目录 (2)数据库设计文档 (3)1 引言 (3)1.1 编写目的 (3)1.2 项目来源 (3)1.3 文档约定 (3)1.4 预期读者和阅读建议 (3)1.5 参考资料 (3)2 数据库命名规则 (3)3 数据库设计说明 (5)3.1 数据库逻辑设计 (5)数据词典 (5)实体关系 (5)E_R 图 (9)SR关系: (9)3.2 数据库物理设计 (10)3.3 数据库分布 (10)3.4 基表设计 (10)3.4.1. tb_user: 考生信息表 (11)3.4.2. tb_invigilate: 监考人员信息表 (12)3.4.3. tb_admin: 管理员信息表 (12)3.44 tb_page:考试试卷信息表 (13)345. tb_select:选择题信息表 (14)3.4.6. tb_boolean:判断题信息表 (15)3.4.7. tb_a nswer:简答题信息表 (16)3.4.8. tb_subject:考试科目信息表 (17)3.5 视图设计 (18)3.6 索引设计 (18)3.7 序列设计 (18)3.8 完整性设计 (19)3.9 授权设计 (19)3.10 触发器设计 (19)3.11 存储过程设计 (24)3.11.1 CRUD中的CUD三个操作 (24)3.12 数据复制设计 (28)4 查询记录语句 (28)5 词汇表 (29)6 历史数据处理 (30)数据库设计文档1 引言1.1 编写目的本文档是本项目开发中至关重要的一部分,通过本档编写,对本项目中相关数据存储信息进行明确定位,对数据结构等相关信息进行明确说明。

本文档尽可能的详细说明各个实体的属性及相互联系,使开发人员的开发效率尽可能增加。

1.2 项目来源实训要求开发人员:全体成员文档使用者:oracle 开发人员、程序设计人员1.3 文档约定1.4 预期读者和阅读建议开发人员:对oracle 和java 熟悉测试人员:对java 及oracle 有一定的了解1.5 参考资料1 《在线考试系统可行性分析》2 《在线考试系统需求分析》3《项目(bbs)数据库设计文档一刘维毅》2 数据库命名规则db_examonline: 在线考试系统数据库tb_invigilate: 监考人员tb_user: 学生或用户信息表tb_select选择题相关信息表tb_an swer简答题相关信息tb_boolea n判断题相关信息tb_admin:管理员信息表tb_page数据库测试试题3 数据库设计说明3.1 数据库逻辑设计数据字典考生属性:编号tid,姓名uname登录密码upassword,学号uno, 班级uclass, 考试状态ustate监考人员属性:编号tid,姓名name登录密码password 管理员属性:编号aid,姓名name登录密码password 试卷属性:编号pid, 科目subject, 选择题数量snum, 判断题数量bnum,问答题数量anun,考试时间pageDate选择题属性:编号id,题目name选项 A optionA选项B optionB选项C option C选项D optionD,所属科目subject 判断题属性:编号id,题目name对选项yes,错选项no , 所属科目subject简答题属性:编号id, 题目name, 所属科目subject 科目属性:编号sid, 科目subject实体关系E_R图S —R关系:Stb_user(usid, un ame,upassword,uno,uclass,ustate)监考人员关系表:Stb_invigilate(tid,name,password) 管理员信息关系:Stb_admin(aid,name,password)考试试卷信息关系:Stb_page(us£,pid,subject,s nu m,b nu m,a nu m,pageDate) 选择题信息关系:Stb_select(id,pid,subject, name,opti on A,opti on B,opti on C,opti onD)判断题信息关系:Stb_boolean(id,pid,subje[t,name,yes,no) 简答题信息关系:Stb_answer(id,pid,subject,name) 科目信息关系:Stb_subject(sid,subje[t)3.2数据库物理设计暂无3.3数据库分布暂无3.4基表设计在线考试系统数据库:3・4・1・ tb_user:考生信息表属性:编号Tid,姓名name,登录密码password,学号number,班级class,考试状态stateCreate table tb_user(Tid nu mber(10) primary key,Un ame varchar2(50),Upassword char(16),Uno number(10),Uclass varchar2(50),Ustate nu mber(1));3・4・2・ tb_invigilate:监考人员信息表属性:编号tid,姓名name,登录密码passwordCreate table tb_i nvigilate(Tid nu mber(10) primary key,Name varchar2 (50),Password char(16));3・4.3・ tb_admin:管理员信息表属性:编号aid,姓名name,登录密码passwordCreate table tb_adm in(Aid nu mber(10) primary key,Name varchar2(50),Password char(16));3・4・4. tb_page:考试试卷信息表属性:编号pid,科目subject,选择题数量snum,判断题数量bnum,问答题数量anun,考试时间pageDateCreate table tb_page(Pid nu mber(10) primary key,Subject varchar2(50),Snum nu mber(2),Bnum nu mber(2),Anum nu mber(2),pageDate date,tid number(10),constraint page_FK foreign key (subject) referencestb_subject(subject),con stra int page_FK2 foreig n key(tid) referen ces tb_user(tid));3・4.5・ tb_select选择题信息表属性:编号id,题目name选项A optionA,选项B optionB,选项C option C,选项D optionD,所属科目subjectCreate table tb_select(Id nu mber(10) primary key,Name varchar2(50),optio nA varchar2(100),optio nB varchar2(100),optio nC varchar2(100),optio nD varchar2(100),subject varchar2(50),pid nu mber(10),con stra int select_FK foreig n key(subject) refere ncestb_subject(subject),con stra int select_FK2 foreig n key(pid) refere nces tb_page(pid) );3・4.6・ tb_boolean:判断题信息表属性:编号id,题目name对选项yes,错选项no ,所属科目subjectCreate table tb_boolea n(id number(10) primary key,Name varchar2(50),Subject varchar2(50),Pid number(10),con stra int boolea n_FK foreig n key(subject) refere nces tb_subject(subject),con stra int boolea n_FK2 foreig n key(pid) refere nces tb_page(pid) );3・4・7. tb_answer:简答题信息表属性:编号id,题目name,所属科目subjectId nu mber(5) primary key,Name varchar2(50),Subject varchar2(50),Pid number(10),con stra int an swer_FK foreig n key(subject) referen cestb_subject(subject),con stra int an swer_FK2 foreig n key(pid) refere nces tb_page(pid) );3・4.8・ tb_subject:考试科目信息表属性:编号sid,科目subjectCreate table tb_subject(Sid number(10),Subject varchar2(50) primary key);〃备注uid是关键字已被系统占用3.5 视图设计3.6 索引设计3.7 序列设计设计目的:通过序列的设计,可以使得编号可以进行自增,从而达到设计目的。

Tb_sq序列自动进行递增初值为:1递增为:1最大值:无Create sequence tb_sqIncrement by 1Start with 1NomaxvalueNocycleCache 10;Tb_invigilate_sq监考人员的tid 自动进行递增Create sequence tb_invigilate_sqIncrement by 10Start with 10NomaxvalueNocycleCache 10;3.8 完整性设计请参阅本文档的基表设计的外键设置3.9 授权设计3.10 触发器设计Tb_user_triggerCreate or replace trigger tb_user_triggerBefore insert on tb_userFor each rowDeclareNext_no number;BeginSelect tb_sq.nextvalInto next_noFrom dual;:new.tid:=next_no;End;/--insert into tb_user (uname, upassword,uno, uclass, ustate) --values(…);Tb_invigilate_triggerCreate or replace trigger tb_invigilate_triggerBefore insert on tb_invigilateFor each rowDeclareNext_no number;BeginSelect tb_sq.nextvalInto next_noFrom dual;:new.tid:=next_no;End;Tb_admin_triggerCreate or replace trigger tb_admin_triggerBefore insert on tb_adminFor each rowDeclareNext_no number;BeginSelect tb_sq.nextvalInto next_noFrom dual;:new.aid:=next_no;End;Tb_page_triggerCreate or replace trigger tb_page_trigger Before insert on tb_pageFor each rowDeclareNext_no number;BeginSelect tb_sq.nextvalInto next_noFrom dual;:new.pid:=next_no;End;Tb_select_triggerCreate or replace trigger tb_select_trigger Before insert on tb_selectFor each rowDeclareNext_no number;BeginSelect tb_sq.nextvalInto next_noFrom dual;:new.id:=next_no;End;Tb_boolean_triggerCreate or replace trigger tb_boolean_trigger Before insert on tb_booleanFor each rowDeclareNext_no number;BeginSelect tb_sq.nextvalInto next_noFrom dual;:new.id:=next_no;End;Tb_answer_triggerCreate or replace trigger tb_answer_trigger Before insert on tb_answerFor each rowDeclareNext_no number;BeginSelect tb_sq.nextvalInto next_noFrom dual;:new.id:=next_no;End;Tb_subject_triggerCreate or replace trigger tb_subject_triggerBefore insert on tb_subjectFor each rowDeclareNext_no number;BeginSelect tb_sq.nextvalInto next_noFrom dual;:new.sid:=next_no;End;3.11 存储过程设计3.11.1 CRUD 中的CUD 三个操作--向试卷表中插入信息(create操作)Create or replace procedure insert_tb_page(p_subject in tb_page.subject%type, p_snum intb_page.snum%type, p_bnum in tb_page.bnum%type,p_anum in tb_page.anum%type, p_pageDate intb_page.pageDate%type, --插入系统时间sysdate p_tid intb_page.tid%type )asBeginInsert into tb_page(subject,snum,bnum,anum,pageDate,tid)values(p_subject,p_snum,p_bnum,p_anum,p_pageDate,p_tid);ExceptionWhen DUP_VAL_ON_INDEX then Dbms_output.put_line('subject primary key error!'); When others thenDbms_output.put_li ne(异常');End insert_tb_page;--// 执行过程: executeinsert_tb_page(:','-);--向判断题表中插入信息(create操作)Create or replace procedure insert_tb_boolean(b_name in tb_%type,b_subject in tb_boolean.subject%type,b_pid in tb_boolean.pid%type) asbeginInsert into tb_boolean(name, subject,pid) values(b_name,b_subject,b_pid);End insert_tb_boolean;--//执行过程:execute insert_tb_boolean(:' ,'••);--向简答题表中插入信息Create or replace procedure insert_tb_answer( a_name intb_%type, a_subject in tb_answer.subject%type,a_pid in tb_answer.pid%type)asBeginInsert into tb_answer(name,subject,pid) values(a_name,a_subject,a_pid);End insert_tb_answer;--向科目表中插入信息Create or replace procedure insert_tb_subject( s_subject intb_subject.subject%type)asBeginInsert into tb_subject(subject) values(s_subject);ExceptionWhen DUP_VAL_ON_INDEX then Dbms_output.put_line('subject primary key error!');When others thenDbms_output.put_li ne(异常');End insert_tb_subject;--向选择题表中插入信息Create or replace procedure insert_tb_select(s_name tb_%type,s_optionA tb_select.optionA%type, s_optionBtb_select.optionB%type, s_optionCtb_select.optionC%type, s_optionDtb_select.optionD%type, s_subjecttb_select.subject%type, s_pid tb_select.pid%type)asBeginInsert into tb_select(name, optionA, optionB, optionC, optionD, subject, pid)values(s_name,s_optionA,s_optionB,s_optionC,s_option D,s_subject,s_pid);End insert_tb_select;--管理员信息插入Create or replace procedure insert_tb_admin( a_name in tb_%type, a_password intb_admin.password%type)asBeginInsert into tb_admin(name, password) values(a_name,a_password);End insert_tb_admin;3.12 数据复制设计暂无4 查询记录语句--随机函数Select randnum from(select distinctround(dbms_random.value(1,60)) as randnum from dualConnect by rownum<=100Order by randnum)where rownum<=20;--随机查询20 条选择题Select * from tb_select where id in(Select * from (select rownum rn from dualConnect by rownum<=100 order byDbms_random.value) whereRownum<=20);--随机查询10 条判断题记录Select * from tb_boolean where id in(Select * from (select rownum rn from dualConnect by rownum<=100 order byDbms_random.value) whereRownum<=10);--随机查询5 条简答题记录Select * from tb_answer where id in(Select * from (select rownum rn from dualConnect by rownum<=100 order byDbms_random.value) whereRownum<=5);5 词汇表P rimary key: 主键foreign key: 外键6 历史数据处理导出数据库:exp 用户名/密码导入数据库:imp 用户名/密码Ms-dos。

相关文档
最新文档