数据库实验3数据操作.docx

上传人:b****8 文档编号:9372111 上传时间:2023-05-18 格式:DOCX 页数:22 大小:2.40MB
下载 相关 举报
数据库实验3数据操作.docx_第1页
第1页 / 共22页
数据库实验3数据操作.docx_第2页
第2页 / 共22页
数据库实验3数据操作.docx_第3页
第3页 / 共22页
数据库实验3数据操作.docx_第4页
第4页 / 共22页
数据库实验3数据操作.docx_第5页
第5页 / 共22页
数据库实验3数据操作.docx_第6页
第6页 / 共22页
数据库实验3数据操作.docx_第7页
第7页 / 共22页
数据库实验3数据操作.docx_第8页
第8页 / 共22页
数据库实验3数据操作.docx_第9页
第9页 / 共22页
数据库实验3数据操作.docx_第10页
第10页 / 共22页
数据库实验3数据操作.docx_第11页
第11页 / 共22页
数据库实验3数据操作.docx_第12页
第12页 / 共22页
数据库实验3数据操作.docx_第13页
第13页 / 共22页
数据库实验3数据操作.docx_第14页
第14页 / 共22页
数据库实验3数据操作.docx_第15页
第15页 / 共22页
数据库实验3数据操作.docx_第16页
第16页 / 共22页
数据库实验3数据操作.docx_第17页
第17页 / 共22页
数据库实验3数据操作.docx_第18页
第18页 / 共22页
数据库实验3数据操作.docx_第19页
第19页 / 共22页
数据库实验3数据操作.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据库实验3数据操作.docx

《数据库实验3数据操作.docx》由会员分享,可在线阅读,更多相关《数据库实验3数据操作.docx(22页珍藏版)》请在冰点文库上搜索。

数据库实验3数据操作.docx

数据库实验3数据操作

实验3:

数据操作

1.实验目的

为实验2建立的表设计一组数据进行插入、删除、更新等操作,并体会数据完整性约束的作用,加深对数据完整性及其约束的理解。

2.实验要求

在前面的实验完成的前提下,本实验将通过向几张表中插入数据、删除数据以及更新数据等操作,要求读者掌握熟悉数据库的数据操作语句,并根据各完整性的定义设计出相应的语句以检查完整性规则的效果。

具体要求如下:

1.根据6张表的完整性规则,分别尝试:

⑴向课程信息表插入空的课程ID(检验实体完整性规则)。

⑵课程ID前两个字符为大写字母(检验用户定义完整性规则)。

⑶向教学任务表插入教师档案表中没有的教师ID信息(检验参照完整性的规则)。

2.删除教师档案表中的某一记录(此教师ID存在于教学任务中),检查参照完整性规则。

3.由于更新操作是先进行删除操作,然后再进行插入操作,所以更新的检验语句可参照以上两个设计完成。

3.实验环境与实验器材:

计算机,网络环境,投影设备。

实验相关软件:

WindowXP、SQLServer2000。

4.实验内容与步骤

本实验通过使用Transact-SQL语句和“企业管理器”两种方法,对已经建立的数据库进行插入、删除和更新操作。

4.1向表中插入记录

1)使用Transact-SQL语句

第一步:

进入“SQL查询分析器”窗口,然后在“教学管理”数据库下,编写如下Transact-SQL语句:

insertinto课程信息表(课程ID,课程名称,课程类别,学分,学时)

values('JB0001','马克思主义哲学原理','基础必修',2,32)

insertinto课程信息表values('JB0002','毛泽东思想概论','基础必修',2,32)

insertinto课程信息表values('JB0003','大学英语A','基础必修',4,64)

insertinto课程信息表values('JB0004','高等数学A','基础必修',4,64)

insertinto课程信息表values('ZB0001','管理运筹学','专业必修',3.5,56)

insertinto课程信息表values('ZB0002','管理学','专业必修',3,48)

insertinto课程信息表values('XX0001','审计学','限选',2,32)

insertinto课程信息表values('XX0002','货币银行学','限选',2,32)

insertinto课程信息表values('RX0001','公共关系学','限选',2,32)

insertinto课程信息表values('RX0002','广告学','任选',2,32)

第二步:

单击“运行”,得到如下的系统窗口:

第三步:

在查询分析器中输入:

select*from课程信息表,按执行后得到结果,如图:

2)使用“企业管理器”

第一步:

从开始菜单中,进入MicrosoftSQLServer的“企业管理器”,然后,逐层打开“控制台根目录”,直到显示数据库中的“教学管理”数据库,然后再打开该数据库,单击“表”,出现如下窗口:

第二步:

在右面的“教师档案表”中,单击右键,在出现的下拉菜单中,选择“打开表”的“返回所有行”,如图所示:

第三步:

在打开的“教师档案表”窗口中,将光标移到第一条记录上,输入教师ID为02120001,然后将光标移到“教师姓名”上,输入教师姓名——“曹玉树”,然后输入性别——“M”,最后输入职称和单位,分别是“教授”和“会计系”。

这样就完成了一条记录的输入。

依次类推,将下面的内容输入到教室档案数据表中,得到如下窗口:

3)使用“企业管理器”,分别向“教学任务”“学生选课”“学生成绩”和“学生档案”中各插入10条记录,得到如下窗口:

4.2删除表中记录

1)使用Transact-SQL语句

删除“课程信息表”中课程ID为“JB0003”的记录,操作如下:

第一步:

输入如下Transact-SQL语句:

deletefrom课程信息表

where课程ID='JB0003'

第二步:

单击“运行”,可以显示该语句不能执行,出现如下窗口:

2)使用“企业管理器”

打开“企业管理器”后,找到“课程信息表”,在“课程信息表”中,单击右键,在出现的下拉菜单中,选择“打开表”的“返回所有行”,进入“课程信息表”界面后,找到课程ID=‘JB0003’的记录,然后将光标移到该条记录上,单击右键,选择“删除”,系统会提示与上图类似的出错信息,如下图:

4.3记录的简单更新

第一步:

更新“课程信息表”中课程ID,为‘RX0002’的记录,编写Transact-SQL语句,将该课程ID置为空,具体语句如下:

update课程信息表

set课程ID=null

where课程ID='RX0002'

单击“运行”,出现如下窗口:

第二步:

更新“教学任务表”中的任课教师ID,使更新后的任课教师ID在“教师档案”的“教师ID”是不存在的,具体语句如下:

update教学任务表

set任课教师ID='02120100'

where任课教师ID='02120005'

单击“运行”,出现如下窗口:

第三步:

更新“课程信息表”中课程ID的记录,编写Transact-SQL语句,将该课程ID‘JB0002’设置为数字‘100002’,具体语句如下:

update课程信息表

set课程ID='100002'

where课程ID='JB0002'

单击“运行”,出现如下窗口:

4.4记录的复杂更新

1)使用Transact-SQL语句

编写Transact-SQL语句,更新“学生成绩表”中的总成绩,总成绩的计算公式为:

平时成绩*0.3+期末成绩*(1-0.3)。

,具体语言如下:

update学生成绩表

set总成绩=(平时成绩*0.3+期末成绩*(1-0.3))

单击“运行”,出现如下窗口:

系统更新完成后,执行查询操作,select*from学生成绩表,按执行后得到结果,如图:

2)使用“企业管理器”

在“企业管理器”中,找到“教学管理”数据库,打开“学生成绩表”,打开“表”中的“返回所有行”找到需要更新的记录,更新相应属性,然后单击“运行”,运行后,关闭数据表即可,查询“总成绩”更新窗口如下:

4.5多表嵌套删除表中记录

编写Transact-SQL语句,删除选修课程名称为“大学英语A”的学生信息,先查询课程名称为“大学英语A”的记录是否存在,具体语句如下:

select*from学生选课表

where课程IDin

(select课程ID

from课程信息表

where课程名称='大学英语A')

单击“运行”,出现如下窗口:

根据上面查询的结果,删除选择了“大学英语A”的所有学生该课程的成绩,具体语句如下:

deletefrom学生成绩表

where学号in

(select学号

from学生选课表

where课程IDin

(select课程ID

from课程信息表

where课程名称='大学英语A'))

单击“运行”,出现如下窗口:

删除成功后,进行查询,具体语言如下:

select*from学生成绩表

where学号in

(select学号

from学生选课表

where课程IDin

(select课程ID

from课程信息表

where课程名称='大学英语A'))

单击“运行”,出现如下窗口:

4.6扩展实验

在“课程信息表”、“教师档案表”的基础上,进行扩展实验。

1)练习简单的数据的删除和更新操作。

①使用Transact-SQL语句将“学生选课表”中的学号为“02006150”的相关选课信息删除。

第一步:

在“查询分析器”中输入如下语句:

deletefrom学生选课表

where学号='02006150'

第二步:

运行,得到如下结果:

第三步:

在查询分析器中输入:

select*from学生选课表,按“执行”后得到结果:

②将“学生档案表”中学号为“02006002”的学生信息更新为“刘真,F,1983-7-9,吉林,会计学,1”

⑴使用Transact-SQL语句

第一步:

在“查询分析器”中输入如下语句:

update学生档案表

set姓名='刘真',性别='F',出生日期='1983-7-9',籍贯='吉林',专业='会计学',班级=1

where学号='02006002'

第二步:

运行,得到如下结果:

第三步:

在查询分析器中输入:

select*from学生档案表,按“执行”后得到结果:

⑵使用企业管理器

在“企业管理器”中,找到“教学管理”数据库,打开“学生档案表”,打开“表”中的“返回所有行”找到需要更新的记录,更新相应属性,然后单击“运行”,运行后,关闭数据表即可,查询更新窗口如下:

2)练习复杂的数据删除和更新操作。

①将学生姓名为“赵敏”的学生成绩删除

⑴使用Transact-SQL语句

第一步:

在“查询分析器”中输入如下语句:

deletefrom学生成绩表

where学号in(select学号from学生档案表where姓名='赵敏')

第二步:

运行,得到如下结果:

第三步:

在查询分析器中输入:

select*from学生成绩表,按“执行”后得到结果:

⑵用企业管理器

在“企业管理器”中,找到“教学管理”数据库,打开“学生档案表”,查找出姓名为“赵敏”的学生的学号,打开“学生成绩表”,打开“表”中的“返回所有行”找到需要更新的记录,更新相应属性,然后单击“运行”,运行后,关闭数据表即可,查询更新窗口如下:

②将教师姓名为“王周洪”的教学年度和学期改为“2003-2004”的第一学期:

⑴使用Transact-SQL语句

第一步:

在“查询分析器”中输入如下语句:

update教学任务表

set年度='2003-2004',

学期=1

where任课教师ID=(select教师IDfrom教师档案表where姓名='王周洪')

第二步:

运行,得到如下结果:

第三步:

在查询分析器中输入:

select*from教学任务表,按“执行”后得到结果:

⑵用企业管理器

在“企业管理器”中,找到“教学管理”数据库,打开“教师档案表”,查找出姓名为“王周洪”的教师的教师ID,打开“教学任务表”,打开“表”中的“返回所有行”找到需要更新的记录,更新相应属性,然后单击“运行”,运行后,关闭数据表即可,查询更新窗口如下:

5.思考与总结

书本上很多数据前后不一致,导致很多地方运行不了,只能通过前后对比,找出数据,才能继续运行。

在嵌套删除中,因为两个表之间有外键联系,所以只能运用语句:

altertable学生选课表

dropCONSTRAINTFK_学生选课表_学生成绩表1

将外键联系删掉,才能继续进行。

实验介绍了数据操作的基本语句,包括插入、删除、更新语句。

通过基本案例和拓展实验了解到MSSQL强大的数据操作功能,通过整个章节的树眼,来建立完整的“教学管理”数据库的原始数据表。

另外,通过数据的更新和删除操作,了解到数据的实体完整性规则、参照完整性规则和用户自定义完整性规则。

通过这次实验,进一步了解如何使用SQLServer软件,了解到整个数据库是怎样保存的,数据的插入、更新、删除等的不同方法,使我更熟悉这些简单语句,也从一次次的实验失败中找到解决方法,让我更加学会如何利用帮助文件来解决问题。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2