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

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

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),

)

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号')

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')

img

图 4.2 学生信息表

l 向课程表中插入数据

insert into course values

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

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

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

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

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','化工流程总结')

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','化学生活详解','制造芯片的硅属于什么材料?')

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')

img

图 4.6 问题回复表

4 .3 数据操作

(1) 数据查询操作

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

select *

from teacher

img

图 4.7 全部教师个人信息

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

select *

from student

where sno = 220001

img

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

l 查询全部的问题回复

select *

from answer 

img

图 4.9 问题的全部回复

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

select qcontent

from question 

where sno  = 220001

img

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

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

select *

from course

where cno = 0004

img

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

(2) 数据更新操作

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

update student

set sphone='13506942684'

where sno = 220003

img

图 4.12 更新后的学生表

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

update teacher

set level = '特级'

where tno = 20220002

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

img

图 4.13 更新后的教师表

(3) 数据删除操作

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

delete

from  resource

where rno = 004

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

img

图 4.14 删除后的资源表

(4) 建立视图

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

use HXJX

create view view_1 

as

select qno,title,qcontent

from question

视图建立结果如图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

相关文章
|
6月前
|
机器学习/深度学习 PyTorch TensorFlow
最近毕设实验的一些体验
在无显卡设备的情况下,为完成果蔬分类毕设,尝试了云服务,发现潞晨云特别适合新手。平台界面友好,操作简便,提供丰富计算资源和预配置的深度学习框架,如TensorFlow、PyTorch,实现了一键使用,极大地节省了配置时间和精力。使用该服务,基于resnet50、resnet101、vgg16的模型训练效果良好,确保了毕业设计的成功完成。
|
7月前
|
SQL XML Java
计算机毕设论文|基于网络超市商品销售管理系统的设计与实现
计算机毕设论文|基于网络超市商品销售管理系统的设计与实现
165 1
|
7月前
|
人工智能 前端开发 JavaScript
计算机毕业论文|校园资料分享系统的设计与实现
计算机毕业论文|校园资料分享系统的设计与实现
|
存储 缓存 负载均衡
【小白晋级大师】如何设计一个支持10万人用的ChatGPT对接系统
之前给大家写了ChatGPT对接企业微信的教程,文章结尾说了教程只能适用于小规模使用,现在来写大规模使用的教程
298 1
【小白晋级大师】如何设计一个支持10万人用的ChatGPT对接系统
|
小程序 JavaScript 搜索推荐
社区老年人义务服务预约小程序的设计与实现(论文+源码)_kaic
本文主要介绍了基于Spring Boot和Vue技术的社区老年人义务服务预约小程序的设计和实现。该小程序旨在为老年人提供更加便捷、快速的预约社区义务服务的途径,同时也方便社区工作人员进行服务管理和统计。 在设计和实现过程中,我们主要分为后台管理模块和小程序端两个部分。后台管理模块包括登录、首页、轮播图管理、社区老人管理、社区服务管理和系统管理等功能,可以方便地进行服务的管理和统计。小程序端则包括首页、大厅和我的三个部分,用户可以浏览最新的服务、预约服务并查看预约记录等。
蓝桥杯之单片机学习(十四)——基础技能综合实训案例解析
蓝桥杯之单片机学习(十四)——基础技能综合实训案例解析
292 0
蓝桥杯之单片机学习(十四)——基础技能综合实训案例解析
|
存储 JSON 小程序
手把手教你搭建消防安全答题小程序-用云开发实现查询题库功能
手把手教你搭建消防安全答题小程序-用云开发实现查询题库功能
手把手教你搭建消防安全答题小程序-用云开发实现查询题库功能
|
小程序 数据管理 容器
幼儿园小程序实战开发教程(中篇)
幼儿园小程序实战开发教程(中篇)
幼儿园小程序实战开发教程(中篇)
|
存储 数据库 数据库管理
|
存储 SQL 数据库