在线考试系统数据库设计

合集下载

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

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

考试系统数据模型设计文档目录一、项目背景 (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 模型目标✓支持高效的试题录入、存储和检索。

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

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

在线考试系统设计(数据部分设计)

在线考试系统设计(数据部分设计)

在线考试系统 系统模块:➢学生例图:➢教师例图:➢管理员例图:数据库设计:综合以上分析,要实现上面的所有功能模块,数据库共要设计十七个表,它们分别是:科目表、管理表、章节表、班级表、组卷表、系别表、试卷信息表、学生表、学生考试试卷表、考试结果表、学生答题试卷信息表、教师表、选择题表、填空题、判断题、简答题表、问答题表。

数据表:表 3.7 试卷信息表(examinfo)表3.8 学生信息表(student)表3.11 学生试卷信息表(student_exam_topoic)表3.12 教师表(teacher)表 3.16 问答题表(topic_question)createtable Ac(Ac_id nvarchar(15),Ac_name nvarchar(30),Class_id nvarchar(20),)createtableAdmin(Admin_id nvarchar(20),pwd nvarchar(20))createtable Class(Class_id nvarchar(20), Class_name nvarchar(20), Depart_id nvarchar(20),)createtable Chapter(Chapter_id nvarchar(12), Chapter_name nvarchar(20), Ac_id nvarchar(15),)createtable Construct(Exam_id nvarchar(10),Topic_id nvarchar(10), Topic_type nvarchar(10),createtable Depart(Depart_id nvarchar(10), Depart_name nvarchar(20))createtable Exam(Exam_id nvarchar(10),Ac_id nvarchar(15), choicenum int,choicescore int,fillnum int,fillscore int,jugenum int,jugescore int,simplenum int,simplescore int,questionnum int, questionscore int,examdate int)createtable Student(Stu_id nvarchar(20),pwd nvarchar(20),name nvarchar(20),sex nvarchar(5),Class_id nvarchar(20),)createtable Stu_Exam(Stu_id nvarchar(20),Exam_id nvarchar(10), primarykey(Stu_id,Exam_id))createtable Stu_Exam_result (Stu_id nvarchar(20),Exam_id nvarchar(10),score nvarchar(5))createtable Stu_Exam_topic (Stu_id nvarchar(20),Exam_id nvarchar(10), Topic_id nvarchar(10), answer nvarchar(400), topictype nvarchar(10))createtable teacher(Teacher_id nvarchar(20), ped nvarchar(20),name nvarchar(10),sex nvarchar(5),Class_id nvarchar(20),Ac_id nvarchar(15))createtable Topic_fill (Topic_id nvarchar(10), Topic_text nvarchar(300), answer nvarchar(50),r_answer nvarchar(50),Ac_id nvarchar(15), Chapter_id nvarchar(12))createtable Topic_choice (Topic_id nvarchar(10), Topic_text nvarchar(300), opion_a nvarchar(300), opion_b nvarchar(300), opion_c nvarchar(300), opion_d nvarchar(300),r_answer nvarchar(4),Ac_id nvarchar(15), Chapter_id nvarchar(12))createtable Topic_juge (Topic_id nvarchar(10), Topic_text nvarchar(300), answer nvarchar(4),r_answer nvarchar(4),Ac_id nvarchar(15), Chapter_id nvarchar(12))createtable Topic_question (Topic_id nvarchar(10), Topic_text nvarchar(300), answer nvarchar(400),Ac_id nvarchar(15),Chapter_id nvarchar(12))createtable Topic_simlpe (Topic_id nvarchar(10), Topic_text nvarchar(300), answer nvarchar(400),Ac_id nvarchar(15),Chapter_id nvarchar(12) )。

数据库课程设计报告范例1:在线考试系统在线考试系统

数据库课程设计报告范例1:在线考试系统在线考试系统

目录1 引言 (1)1.1课程设计选题 (1)1.2课程设计的目的 (1)1.3本选题的设计背景 (1)2 系统分析与设计 (1)2.1 功能及性能分析 (1)2.1.1 功能需求 (1)2.1.2 性能需求 (2)2.1.3 数据流图 (2)2.2 系统的开发运行环境 (3)2.3 系统总体设计 (3)3 数据库设计 (4)3.1 数据库概念结构 (4)3.2 数据库逻辑结构 (5)3.2.1 关系模型及优化 (5)3.2.2 视图的设计 (5)3.3 数据库的实现 (6)3.3.1表 (6)3.3.2 安全性设计 (7)3.3.3 一致性设计 (7)3.3.4触发器的设计 (8)4 详细设计与实现 (9)4.1 登录模块 (9)4.2 考生注册模块 (9)4.3 在线考试模块 (10)4.4 后台功能模块 (13)I4.4.1试题管理模块 (13)4.4.2考生管理模块 (13)4.4.3成绩管理模块 (14)结论 (15)参考文献 (15)II1 引言1.1课程设计选题《在线考试系统》1.2课程设计的目的通过数据库系统课程设计,熟悉了SQL SERVER数据库管理系统的结构与组成;掌握了SQL SERVER数据库管理系统的应用技术和的使用;应用ASP开发工具实践了《在线考试系统》的数据库应用系统的设计方法、开发过程和SQL SERVER数据库的管理与维护。

最终达到掌握数据库管理系统的使用和开发,提高分析问题、解决问题和实践应用能力。

1.3本选题的设计背景随着计算机技术的发展和互联网时代的到来,人们已经进入了信息时代,亦或是数字化时代。

在数字化的网络环境下,学生希望得到个性化的满足,根据自己的情况进行学习,同时希望能够得到科学的评价;教育机构也希望给网上的学生提供更灵活的服务。

在线考试系统正是迎合这一需求而开发的,它旨在探索一种以互联网为基础的考试模式。

通过这种新的模式,为考生创造一种新的考试环境,提高考试工作效率和标准化水平。

基于Web技术的在线模拟考试系统设计与实现案例

基于Web技术的在线模拟考试系统设计与实现案例

基于Web技术的在线模拟考试系统设计与实现案例随着社会的快速发展,人们对教育的要求也越来越高。

特别是在幼儿教育阶段,家长和教师都希望孩子们能够提前掌握更多的知识和技能。

然而,传统的考试方式往往无法满足这种需求,因此,基于Web技术的在线模拟考试系统应运而生。

一、系统需求分析1.功能需求(1)用户注册与登录:用户可以通过注册账号的方式登录系统,以便于管理和查询考试记录。

(2)考试题目管理:管理员可以在系统中发布、修改和删除考试题目。

(3)考试模拟:用户可以根据自己的需求选择不同的考试科目进行模拟考试。

(4)考试结果展示:用户完成考试后,系统可以自动评分并展示考试结果。

2.性能需求(1)系统响应速度:系统需要能够在短时间内完成用户的登录、考试、评分等操作,以提高用户体验。

(2)数据安全性:系统需要保证用户数据和考试数据的安全性,防止数据泄露或被恶意攻击。

(3)系统稳定性:系统需要具备较强的抗压能力,能够应对高并发、大数据量的场景。

二、系统设计1.技术选型(1)前端:HTML、CSS、JavaScript(2)后端:Java、PHP、Python等(3)数据库:MySQL、Oracle等2.系统架构设计(1)B/S架构:采用浏览器/服务器架构,方便用户通过Web端进行访问和操作。

(2)三层架构:将系统分为表示层、业务层和数据层,有利于代码分离和模块化。

3.模块划分(1)用户模块:包括用户注册、登录、修改资料等功能。

(2)题目管理模块:包括题目发布、修改、删除等功能。

(3)考试模拟模块:用户可以选择题目进行模拟考试。

(4)考试评分模块:系统自动对用户提交的答案进行评分。

(5)考试记录模块:用户可以查看自己的考试记录和成绩。

三、系统实现1.前端实现(1)HTML页面:使用HTML标签搭建考试系统的页面结构。

(2)CSS样式:通过CSS样式美化页面,提高用户体验。

(3)JavaScript脚本:使用JavaScript实现页面的动态交互功能。

数据库原理在线考试系统核心功能研究与设计

数据库原理在线考试系统核心功能研究与设计

甘肃科技Gansu Science and Technology第36卷第18期2020年9月Vol.36 No. 18Sep. 2020数据库原理在线考试系统核心功能研究与设计张旭东,杨鹏斐彳(兰州财经大学信息工程学院,甘肃兰州730000)摘要:数据库原理课程是信息管理类专业核心课程,学习该课程的学生人数较多,对在线考试需求比较迫切。

现有相关系统的侧重点集中在考试系统的整体设计和组卷问题上,很少提及该课程具有特殊性的知识点的考试功能设计。

文章分析数据库原理中SQL 语句、关系代数、最小函数依赖和E-R 图四种题型的特点,并详细研究和设计这四种题型的在线考试功能,将其组合到现有的考试系统中,弥补了数据库原理课程在线考试系统的缺陷。

关键词:在线考试;SQL ;关系代数;E-R 图;函数依赖中图分类号:TP3911概述数据库原理课程是信息管理类专业的核心课程,学生人数较多,对在线考试需求比较迫切。

随着 互联网技术的发展,B/S 结构的在线考试系统已经在高校的部分课稈中得到应用,如计算机基础、C 语言、数据库基础等课程,对通用考试系统的研究从未停 止g,但数据库课程内容和考核方式的不同,考试系统的研究和设计仍停留在客观题方面,主观题方面 的由于以简答和论述题目以文字的方式呈现答案, 数理类课程以字符和采用字符的逻辑推理为参考答案,计算机和信息管理类课程以图表或程序的方式呈现叫对主观题自动考试和阅卷研究和系统,目前 基本采用半自动化设定评分项、由教师在线评分的 半自动化阅卷方式叫文章以数据库原理课程的在线考试和自动阅卷为背景,研究数据库原来在线考试系统的核心功能。

以SQL 语句、E-R 图关系代数和关系规范化四类主观题型的在线考试和阅卷为核心,提出实现数据原 理课程在线考试系统的核心功能设计和实现方法。

2国内外研究现状国外大量应用了软件系统进行考试。

GerardSalton 在提出的向量空间模型用于分析简答问题中的英文文本相似度“。

在线考试系统技术方案

在线考试系统技术方案

在线考试系统技术方案目录一、背景 (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 套题实体套题实体包括编号、套题名称、所属课程和添加时间属性。

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

数据库设计文档成员:曹丽琼冯继伟刘维毅班级08软工三班指导老师:***日期: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.4.4. tb_page:考试试卷信息表 (13)3.4.5. tb_select:选择题信息表 (14)3.4.6. tb_boolean:判断题信息表 (15)3.4.7. tb_answer:简答题信息表 (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)数据库设计文档—刘维毅》4 /viewthread.php?tid=104402数据库命名规则➢db_examonline: 在线考试系统数据库➢tb_invigilate: 监考人员➢tb_user: 学生或用户信息表➢tb_select:选择题相关信息表➢tb_answer:简答题相关信息➢tb_boolean:判断题相关信息➢tb_admin: 管理员信息表➢tb_page:数据库测试试题3数据库设计说明3.1 数据库逻辑设计数据字典●考生属性:编号tid,姓名uname,登录密码upassword,学号uno,班级uclass,考试状态ustate●监考人员属性:编号tid,姓名name,登录密码password●管理员属性:编号aid,姓名name,登录密码password●试卷属性:编号pid,科目subject, 选择题数量snum, 判断题数量bnum, 问答题数量anum,考试时间pageDate●选择题属性:编号id,题目name,选项A optionA,选项BoptionB,选项C option C,选项D optionD,所属科目subject●判断题属性:编号id,题目name,对选项yes,错选项no ,所属科目subject●简答题属性:编号id,题目name, 所属科目subject●科目属性:编号sid,科目subject实体关系E_R图S—R关系:学生关系表:Stb_user(usid,uname,upassword,uno,uclass,ustate)监考人员关系表:Stb_invigilate(tid,name,password)管理员信息关系:Stb_admin(aid,name,password)考试试卷信息关系:Stb_page(usid,pid,subject,snum,bnum,anum,pageDate)选择题信息关系:Stb_select(id,pid,subject,name,optionA,optionB,optionC,optionD)判断题信息关系:Stb_boolean(id,pid,subject,name,yes,no)简答题信息关系:Stb_answer(id,pid,subject,name)科目信息关系:Stb_subject(sid,subject)3.2 数据库物理设计暂无3.3 数据库分布暂无3.4 基表设计在线考试系统数据库:3.4.1.tb_user: 考生信息表属性:编号Tid,姓名name,登录密码password,学号number,班级class,考试状态stateCreate table tb_user(Tid number(10) primary key,Uname varchar2(50),Upassword char(16),Uno number(10),Uclass varchar2(50),Ustate number(1));3.4.2.tb_invigilate: 监考人员信息表属性:编号tid,姓名name,登录密码passwordCreate table tb_invigilate(Tid number(10) primary key,Name varchar2 (50),Password char(16));3.4.3.tb_admin: 管理员信息表属性:编号aid,姓名name,登录密码passwordCreate table tb_admin(Aid number(10) primary key,Name varchar2(50),Password char(16));3.4.4.tb_page:考试试卷信息表属性:编号pid,科目subject, 选择题数量snum, 判断题数量bnum, 问答题数量anum,考试时间pageDateCreate table tb_page(Pid number(10) primary key,Subject varchar2(50),Snum number(2),Bnum number(2),Anum number(2),pageDate date,tid number(10),constraint page_FK foreign key (subject) referencestb_subject(subject),constraint page_FK2 foreign key(tid) referencestb_user(tid));3.4.5.tb_select:选择题信息表属性:编号id,题目name,选项A optionA,选项B optionB,选项C option C,选项D optionD,所属科目subjectCreate table tb_select(Id number(10) primary key,Name varchar2(50),optionA varchar2(100),optionB varchar2(100),optionC varchar2(100),optionD varchar2(100),subject varchar2(50),pid number(10),constraint select_FK foreign key(subject) references tb_subject(subject),constraint select_FK2 foreign key(pid) references tb_page(pid));3.4.6.tb_boolean:判断题信息表属性:编号id,题目name,对选项yes,错选项no ,所属科目subjectCreate table tb_boolean(id number(10) primary key,Name varchar2(50),Subject varchar2(50),Pid number(10),constraint boolean_FK foreign key(subject) references tb_subject(subject),constraint boolean_FK2 foreign key(pid) references tb_page(pid));3.4.7.tb_answer:简答题信息表属性:编号id,题目name, 所属科目subjectCreate table tb_answer(Id number(5) primary key,Name varchar2(50),Subject varchar2(50),Pid number(10),constraint answer_FK foreign key(subject) references tb_subject(subject),constraint answer_FK2 foreign key(pid) references 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_triggerBefore 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_trigger Before insert on tb_subjectFor each rowDeclareNext_no number;BeginSelect tb_sq.nextvalInto next_noFrom dual;:new.sid:=next_no;End;3.11 存储过程设计3.11.1CRUD中的CUD三个操作--向试卷表中插入信息(create操作)Create or replace procedure insert_tb_page(p_subject in tb_page.subject%type,p_snum in tb_page.snum%type,p_bnum in tb_page.bnum%type,p_anum in tb_page.anum%type,p_pageDate in tb_page.pageDate%type,--插入系统时间sysdatep_tid in tb_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 thenDbms_output.put_line('subject primary key error!');When others thenDbms_output.put_line('异常');End insert_tb_page;--//执行过程: execute insert_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 in tb_%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 in tb_subject.subject%type)asBeginInsert into tb_subject(subject) values(s_subject);ExceptionWhen DUP_VAL_ON_INDEX thenDbms_output.put_line('subject primary key error!'); When others thenDbms_output.put_line('异常');End insert_tb_subject;--向选择题表中插入信息Create or replace procedure insert_tb_select(s_name tb_%type,s_optionA tb_select.optionA%type,s_optionB tb_select.optionB%type,s_optionC tb_select.optionC%type,s_optionD tb_select.optionD%type,s_subject tb_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 in tb_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。

相关文档
最新文档