【课设系列】高中化学网上辅助教学平台(下)

简介: 高中化学网上辅助教学平台(下)

4 数据库的操作

4.1 数据库的创建

根据数据库设计结果,利用SQL Server Management 工具,用SQL语句创建数据库。

use master

go

if exists (select * from sysdatabases where name='化学课程网上教学平台')

drop database 化学课程网上教学平台

go

create database 化学课程网上教学平台

on primary

( name=化学课程网上教学平台_data,

filename='D:\SQLServer2012\化学课程网上教学平台_data.mdf',

size=100MB,

maxsize=200GB,

filegrowth=10%)

log on

( name =化学课程网上教学平台_log,

filename='D:\SQLServer2012\化学课程网上教学平台_log.ldf',

size=100MB,

maxsize=200GB,

filegrowth=5%

) 

l 创建高中化学课程在线教学数据库(HXJX)

create database HXJX

 

l 创建教师信息表(teacher)

use HXJX

create table teacher(

tno nchar(11) primary key not null , 

tname varchar(20) not null ,

tsex varchar(20) not null,

level varchar(10) not null,

tphone nchar(11) not null,

tmail varchar(20) not null,

taddress varchar(100) not null, 

constraint a1 check(tsex in ('男','女')),

)

l 创建学生信息表(student)

use HXJX

create table student (

sno nchar(11) primary key not null, 

sname varchar(20) not null , 

ssex varchar(4) not null, 

sdate datetime , 

smail varchar(20) ,

saddress varchar(100),  

sphone nchar(11),

constraint a2 check(ssex in ('男','女')),

)

l 创建课程信息表:

create table course (

cno nchar(11) primary key not null, 

cname varchar(20) not null, 

intro text,

outline text,

tno nchar(11) not null

--教师编号作为课程表的外键

constraint a3 foreign key (tno)references teacher(tno)

)

l 创建教学资源表

create table resource(

rno nchar(11) not null,

rname varchar(255) not null,

cno nchar(11) not null,

tno nchar(11) not null,

upload datetime not null,

rcontent text,

--cno 和 tno 作为resourse的外键

constraint a4 foreign key (cno)references course(cno),

constraint a5 foreign key (tno)references teacher(tno),

)

l 创建学生问题表

use HXJX

create table question(

qno nchar(11) not null,

title varchar(255) not null,

qcontent text,

cno nchar(11) not null,

sno nchar(11) not null,

qdate datetime not null,

--cno sno 作为question的外键

constraint a6 foreign key (cno)references course(cno),

constraint a7 foreign key (sno)references student(sno),

)

l 创建问题回复表

use HXJX

create table answer(

ano nchar(11) not null,

acontent text not null,

qno nchar(11)not null,

tno nchar(11) not null,

adate datetime not null,

constraint a8 foreign key (tno)references teacher(tno),

)
AI 代码解读

4.2数据的插入操作

l 向教师信息表中插入数据

use HXJX

insert into teacher values

('20220001','宋老师','男','中级','13506542689','2356987@163.com','北大街011号'),            

('20220002','李老师','女','高级','18721234454','1274345@qq.com','北大街012号'),                      

('20220003','张老师','女','特级','13504536453','215487@163.com','东一环路013号'),                     

('20220004','王老师','男','高级','18706545019','234147@163.com','北大街014号')
AI 代码解读

img

图 4.1教师信息表

l 向学生信息表中插入数据

insert into student values

('220001','张平','男','2022-02-13','255484547@qq.com','雷家巷011号','13659867454'),

('220002','李楠','女','2021-09-16','113221454@qq.com','雷家巷012号','13525986745'),

('220003','王五','男','2021-06-16','245545237@qq.com','北大街013号','13540145478'),

('220004','孙七','女','2022-06-09','35657447@163.com','风景路014号','13659435431')
AI 代码解读

img

图 4.2 学生信息表

l 向课程表中插入数据

insert into course values

('0001','有机化学分析','针对高考中常见的有机化学题目进行讲解','有机化学基本知识和进阶应用','20220002'),

('0002','化工流程推断30讲','化工流程剖析','工业流程的基本过程','20220001'),

('0003','无机化学分析','针对高考中常见的无机化学题目进行讲解','无机化学基本知识和进阶应用','20220003'),

 ('0004','化学与生活','常见的化学与生活题目进行讲解','基本化学知识和进阶应用','20220004')
AI 代码解读

img

图 4.3 课程信息表

l 向教学资源表中插入数据

insert into resource values

('001','无机化学总结','0003','20220003','2021-08-12','关于无机化学的详细总结'),

('002','有机化学常见题型','0001','20220002','2022-03-24','关于有机化学的详细总结'),

('003','化学与生活100题','0004','20220004','2020-06-22','化学生活常见100题'),        

('004','化工流程总结','0002','20220001','2020-11-14','化工流程总结')
AI 代码解读

img

图 4.4 教学资源信息表

l 向学生问题表中插入数据

insert into question values

('01','化工流程过程','化工流程中的具体过程是什么?','0002','220001','2022-03-04'),             

('02','有机化学流程','有机化学中的聚合反应怎么写?','0001','220002','2021-09-16')

('03','无机化学反应','Na钠的性质如何?','0003','220003','2022-08-26'),    

('04','化学生活详解','制造芯片的硅属于什么材料?')
AI 代码解读

img

图 4.5 学生问题表

l 向问题回复表中插入数据

insert into answer values

('100','原材料加工产出','01','20220001','2022-03-05'),

('101','低分子量单体转化为聚合物','02','20220002','2021-09-17'),

('102','浮游溶响红','03','20220003','2022-08-27'),

('103','无机非金属','04','20220004','2022-08-27')
AI 代码解读

img

图 4.6 问题回复表

4 .3 数据操作

(1) 数据查询操作

l 查询全部教师的个人信息

select *

from teacher
AI 代码解读

img

图 4.7 全部教师个人信息

l 查询学号为“220001”的学生的基本信息

select *

from student

where sno = 220001
AI 代码解读

img

图 4.8 学号为20001的学生基本信息

l 查询全部的问题回复

select *

from answer 
AI 代码解读

img

图 4.9 问题的全部回复

l 查询学号为220001提问的问题

select qcontent

from question 

where sno  = 220001
AI 代码解读

img

图 4.10 学号为220001的学生提问的问题

l 查询课程号为0004的课程信息

select *

from course

where cno = 0004
AI 代码解读

img

图 4.11课程号为0004的课程信息

(2) 数据更新操作

l 将学号为220003的学生电话更新为13506942684

update student

set sphone='13506942684'

where sno = 220003
AI 代码解读

img

图 4.12 更新后的学生表

l 将教师编号为20220002的教师职称更新为特级

update teacher

set level = '特级'

where tno = 20220002
AI 代码解读

更新后的教师表如图4.3.7所示

img

图 4.13 更新后的教师表

(3) 数据删除操作

l 删除资源编号为004的全部信息

delete

from  resource

where rno = 004
AI 代码解读

删除后的资源表如图4.3.8所示

img

图 4.14 删除后的资源表

(4) 建立视图

l 将问题表中的问题编号,问题标题,问题内容建立视图

use HXJX

create view view_1 

as

select qno,title,qcontent

from question
AI 代码解读

视图建立结果如图4.3.9所示

img

图 4.15 建立的视图

5 总结

通过本次数据库课程设计,完成对高中化学课程网上辅助教学平台的分析和数据库的实现。在过程中,将重点放在系统的分析与数据库设计方面。根据了解系统的相关信息,初步分析系统需求,在需求分析基础上,通过画E-R图,完成对数据库的概念结构设计;将E-R图转化为关系模式,完成数据库的逻辑结构设计;将关系模式转化为数据库中的表,完成数据库的物理结构设计。并利用SQL语句完成数据库中对象的创建、插入数据记录、查询记录、创建数据存储等。

高中化学课程网上辅助教学平台的设计过程,是对软件工程与数据库课程相关内容的温习。整个完成过程严格按照软件开发流程与数据库设计步骤进行,为后期的系统实现打下了坚实的基础。该系统可扩展功能很多,有待进一步完善。相信通过本次数据库课程设计后,在未来的软件开发过程中,我们将更加规范自己的设计过程,使所开发系统更加稳定可靠,具有更多功能,服务于更多用户。

[1] 严蔚敏,吴伟民.数据结构(C语言版)[M].北京:清华大学出版社,2021

[2] 林小玲.数据库原理及应用[M]. 北京:机械工业出版社,2021

[3] 苗雪兰,刘瑞新,宋会群.数据库系统原理及应用教程(第2版)[M].北京:机械工业出版社,2016.

[4] 向阳.信息系统分析与设计(第1版)[M].北京:清华大学出版社,2019.

[5] 卫红春.信息系统分析与设计[M].西安:西安电子科技大学出版社,2013

[6] 郑炜,朱怡安.软件工程[M].西安:西北工业大学出版社,2019

目录
打赏
0
0
0
0
1
分享
相关文章
|
11月前
基于airtest的全民旺财辅助
基于airtest的全民旺财辅助
74 1
云端问道9期实操教学
本节介绍SAE产品的部署方式,分为一键部署和手动部署。一键部署通过阿里云ROS平台快速拉起高可用方案所需资源,适合快速搭建环境;手动部署则需进入SAE控制台进行详细配置,适用于自定义应用部署。两者均支持多种部署方式,如源码仓库、镜像等,并提供灵活的资源配置选项。部署完成后需及时删除资源以避免费用产生。SAE支持HTTP和HTTPS协议,适合长时间运行的微服务和Web应用,而FC(函数计算)更适合短时、高并发的任务处理。
56 10
基于51单片机的智能电子秤设计课程设计毕业设计
具体功能: 1、数码管显示当前的重量,单位是g; 2、有去皮和清零功能,可以通过三个按键微调校准重量; 3、最大称重9.999kg,超过最大量程声光报警。
Scratch3.0——助力新进程序员理解程序(难度案例三、五子棋双人对战-电脑需要AI写不出来)
Scratch3.0——助力新进程序员理解程序(难度案例三、五子棋双人对战-电脑需要AI写不出来)
149 0
智慧导诊系统源码 智慧导诊小程序源码,智慧导诊APP源码
智慧导诊系统:根据患者症状匹配挂号科室,匹配上科室后可直接预约挂号,从源头上解决以上问题。
162 0
智慧导诊系统源码 智慧导诊小程序源码,智慧导诊APP源码
【学员源鑫笔记】韦东山物联网流媒体实战项目-智慧家居视频监控系统(值得收藏)
【学员源鑫笔记】韦东山物联网流媒体实战项目-智慧家居视频监控系统(值得收藏)
859 0
【HaaS Hands-On】全新视频节目上线 创意案例我们一起上手做 第一期E01: 物联网工程师 和你一起上手做遥控机械臂
【HaaS Hands-On】全新视频节目上线 创意案例我们一起上手做 第一期E01: 物联网工程师 和你一起上手做遥控机械臂
111 0
【毕设参考】HaaS Python 云端一体AI【手势识别】窝在家里看电视不想动?想换台懒得找遥控器?试试解锁智能设备新玩法
【毕设参考】HaaS Python 云端一体AI【手势识别】窝在家里看电视不想动?想换台懒得找遥控器?试试解锁智能设备新玩法
224 0

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等