




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验报告课程名称:数据库系统概论学院:工程学院专业:年级:班级:姓名:学号:指导教师:一2015 年 12 月 10 日教务处制实验名称:数据库查询实验二时间:2015-12-10地点:三教205机房班组:教 师 评 语成绩教师签名实验报告1实验目的1. 熟悉数据库的交互式SQL工具;2. 熟悉通过SQL对数据库视图进行操作;3. 掌握通过SQL插入、更新、删除数据等操作。2实验工具KingbaseES利用KingbaseES及其交互式查询工具ISQLW来熟悉SQL。3实验内容和要求1. 在建立3.2节学生-课程数据库的基础上,完成课本例 3.69-97的各例题;2. 根据以下要求认真填写实验
2、报告,记录所有的实验用例。4实验方法及步骤例3.69将一个新学生元组(学号:201215128,姓名:陈东,性别:男,年龄:18,所在系:IS)插入到student 表中。INSERT INTO S-C.STUDENT(SNO,SNAME,SSEX,SDEPT,SAGE)VALUES (201215128, 陈冬,男,IS,18 );select* from S-C.STUDENT例3.70将学生张成民的信息插入到student表中。INSERT INTO S-C.STUDENTVALUES(201215126, 张成民,男,18,CS);select* from S-C.STUDENTSNO
3、SNM1ESSEXSAGESDEPT丨ri200215121李勇”20CS|2200215122刘晨女13CSJ匸3200215123王皴女10MAT20021512519IS5201215123瞭东.臭1813IL t_l201215126张成民-18CS|注意:值与属性要一一对应。SMOSNAMESSEXSAGESDEPT12C0215121男20CS2-200215122文19CS1 31209215123王啟.文1BL1A1 4:209215125张立-19IS201215128男192!注意:在INTO子句中指出了表名student ,并指出了新增加的元组在哪些属性以与CREATE
4、TABLED的顺序不一样。上要赋值,属性的顺序可例3.71插入一条选课记录(201215128,1) INSERT INTO S-C.sc(sno,cno)VALUES(201215128,1);SELECT*from S-C.sc;注意:在新插入的记录中 GRAD列自动地赋空值。或者:INSERT INTO S-C.scVALUES(201215128,1, null);SELECT*from S-C.sc;ShlOCNOGRADEIl 1200215121192J220021512128532002151213S3I2002151222go工2002161223eoII2012151291
5、NULL注意:若直接在SC中直接插入选课记录,由于没有指出SC的属性名,在GRAD列上要明确给出空值 例3.72对每一个系,求学生的平均年龄,并把结果存入数据库中。创建新表CREATE TABLE dept_age(sdept CHAR (15),avg_age smalli nt);把系名和平均年龄存入新表in sertinto dept_age(Sdept,avg_age) select sdept,avg(sage) from S-C.stude nt group by sdept;SDEFTtMA13t2iIS13C3】|CS19例3.73将学生200215121的年龄改为 22岁。
6、UPDATE S-C.STUDENTSET Sage=22WHERE sn0=200215121;select*from S-C.stude nt;IlrilSNO200215122SNAJIE列晨3SEXSAGE19SDEPTCS2Z200215123王敏-女18MA匚3200215125张立-19l&4201215128男iaISIl5II20121512&兆成民-里1&CS200215121里22CS例3.74将所有学生的年龄增加1岁。UPDATE S-C.STUDENTSET Sage=sage+1;select*from S-C.stude nt;SNOSNAME 刘晨SSEXSSA
7、GE20 SDEPTOS12002151222200215123王镇19MA3200215125张立S20IS4201215123FJ东19IS520121512&张成民“卑19CS1BIl200215121里23CS例3.75将计算机科学系全体学生的成绩置零。UPDATE S-C.SCSET Grade=0 where sno in (select sno from S-C.stude nt where sdept=cs);SELECT*FROM S-C.SC;SNOCMOGRADE1201215126tK 21200215121T020021512120斗20021512130520021
8、S12220520021512230T20121512610例3.76删除学号为201215128的学生记录。DELETEfrom S-C.stude ntWHERE sn o=201215128:select*from S-C.stude nt;SNOSNAJIESSEXSAGESDEPTL1 1李虫-男20CSI2) 00215122刘晨女19CS3J 20021123王敏-女18L1&c420C215125刘辰里5IS例3.77删除所有学生选课记录DELETEFROM S-C.SC;SELECT*FROM S-C.SC;SMOCNOGRADE注意:这条DELETE语句将使SC成为空表,它
9、删除了 SC的所有元组。例3.78删除计算机科学系所有学生的选课记录SELECT*FROM S-C.SC;SNOCNOGRADEc rn200215121192i_ 2)200215121285P2002151213SBL耳一1002151222QO5J 2002151223SODELETE from S-C.scWHERE sn o in(select sno from S-C.stude nt where sdept=cs);SNOCNOGRAD 匚注意:由于SC表全是cs系的,故结果为空表。例3.79向SC表中插入一个元组INSERT INTO S-C.SC(SNO,CNO,GRADE)
10、VALUES(201215128,1,NULL); /*在插入该学生还没有考试成绩,取空值 */或者:INSERT INTO S-C.SC(SNO,CNO)VALUES(201215126,1); /*在插入语句中没有赋值的属性,其值为空值*/SELECT* FROM S-C.SC;SNOCNOGRADE)2002151211922200215121285320021612139842002151222903_112002151223B0$20121S12S11 2012151261例3.80 将student表中学生号201215123的学生所属的系改为空值 UPDATE S-C.STUDE
11、NTSET SDEPT=NULLWHERE SNO=201215123:SELECT* FROM S-C.STUDENT;SNOSNAW1ESSEXSAGESDEPT1】200215122刃I晨-女|20|CSz200215125貳立.男20I3t3J201215128陈奚畀19ISU 4J201215126张成民.19CSE200215121孚更-23CS 6 1200215123王碱-13注意:另外,外连接也会产生空值,空值的关系运算也会产生空值。 例3.81 从student表中查找出漏填了数据的学生信息SELECT*FROM S-C.STUDENTWHERE SNAME IS NULL
12、 OR SSEX IS NULL OR SDEPT IS NULL;SELECT* FROM S-C.STUDENT;SNOSNAMESSEXSAGESDEPTcr7 200215123|19L 例3.82 找出选修1号课程的不及格的学生SELECT SNOFROM S-C.SCWHERE GRADE60 AND CNO=1;SNO注意:选出的学生是那些参加了考试而不及格的学生,不包括缺考的学生。 例3.83 找出选修1号课程的不及格的学生以及缺考的学生SELECT SNO FROM S-C.SCWHERE GRADE=90;SELECT SNO,SNAME,SAGEFROM S-C.IS_S
13、TUDENT;SNOSNAMESAGEL1J 200215125 |张立-1|注意:这里的视图IS_S2就是建立在IS_S1之上的。例3.88 定义一个反应学生出生年份的视图CREATE VIEW BT_S(SNO,SNAME,SBIRTH) ASSELECT SNO,SNAME,2014-SAGEFROM S-C.STUDENT;SELECT SNO,SNAME,SBIRTHSNOSNAMESBIRTHt 1 Jl200215121李勇1904t 2 Jl200215122刘晨1&85200215123王锁19B6L4 l200215125瑞立.1905FROM S-C.BT_S;注意:这里
14、的视图BT_S是一个带表达式的视图。视图中的出生年份值是通过计算得到的。还可以用带有 聚集函数和GROUP B子句的查询来定义视图,这种视图称为分组视图。例3.89 将学生的学号及平均成绩定义为一个视图CREATE VIEW S_G(SNO,GAVG)ASSELECT SNO,AVG(GRADE)FROM S-C.SCGROUP BY SNO;SELECT SNO,GAVGFROM S-C.S_G;SNOGAVG1】20021512285.0000DC.|l220021512188.333333 .注意:由于AS子句中的SELECTS句的目标列平均成绩是通过作用聚集函数得到的,所以CREATE
15、 VIEV中必须明确定义组成S_G视图的各个属性列名。S_G!个分组视图。例3.90 将student表中所有女生记录定义为一个视图CREATE VIEW F_STUDENT(F_SNO,NAME,SEX,AGE,DEPT)ASSELECT* FROM S-C.STUDENTWHERE SSEX女:SELECT F_SNO,NAME,SEX,AGE,DEPTFROM S-C.F STUDENT;F_ShO NAME SEXAGEDEPT1200215122刘晨19CS2 )200215123女16M.A注意:这里视图F_STUDEN是由子查询“ SELECT”建立的。F_STUDEN视图的属性
16、列要与 STUDEN表的属 性对应。否则会出错。例3.91 删除视图BT_S和视图IS_S1DROP VIEW BT_S; /* 成功执行 */DROP VIEW IS_S1; /* 拒绝执行 */执行此语句时由于IS_S1视图上还导出了 IS_S2视图,所以该语句被拒绝执行。如果确定要删除,则使用级联删除语句。DROP VIEW IS_S1 CASCADE; /*删除了视图IS_S1和由它导出的所有视图 */例3.92 在信息系学生视图中找出年龄小于20岁的学生SELECT SNO,SAGE FROM S-C.IS_STUDENTWHERE SAGE=90;或者:SELECT*FROM(SE
17、LECT SNO,AVG(GRADE) /子查询生成一个派生表 S_G*/ FROMS-C.SCGROUP BY SNO) AS S_G(SNO,GAVG)HAVING GRADE=90;SNOAVG注意:WHERE句中不能用聚集函数作为条件表达式。视图一旦定义,其定义将永久保存在数据字典中, 之后的所有查询都可以直接引用该视图。而派生表株数在语句执行时临时定义,语句执行后该定义将被删除。例3.95 将信息系学生视图IS_STUDEN中学号为“ 200215125”的学生姓名改为“刘辰”UPDATE IS_STUDENT SET SNAME= 辰WHERE SNO=200215125: SEL
18、ECT SNO,SNAME,SAGE FROM S-C.IS_STUDENT;ShOSNANESAGEr“一i 2002151252 |例3.96 将信息系学生视图IS_STUDEN中插入一个新的学生记录,其中学号为“201215129 ”,姓名为“赵新”,年龄为20岁INSERTINTO S-C.STUDENT(SNO,SNAME,SAGE,SDEPT)VALUES(201215129, 赵新,20,IS);SELECT SNO,SNAME,SAGEFROM S-C.IS STUDENT;SNOSNAfdESAGE200215125刘辰192 20121512920例3.97 删除信息系学生视图IS_STUDEN中学号为“ 201215129”的记录。 DELETEFROM S-C.STUDENTWHERE SNO=201215129AND SDEPT=IS;SELECT SNO,SNAME,SAGEFROM S-C.IS_STUDENT;SNOSNATHESAGETi划辰-|195实验结果及总结1. 若直接在SC中直接插入选课记录,由于没有指出SC勺属性名,在GRAD列上要明确给出空值 NULL。2. 由于AS子句中的SELECTS句的目标列平均成绩是通过作用聚集函数得到的,所以CREAT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2020-2021广东省深圳市宝安区宝城小学六年级小升初语文综合测试卷及答案
- 主体模板工程施工方案
- 扣盘式脚手架施工方案
- 2025年中考物理模拟试卷猜题卷3(含答案)
- 2025届浙江省台州市团队六校中考生物模拟预测题含解析
- 劳务合同保密合同范例
- 肝移植GVHD的护理
- 农资服务代办合同范例
- 学校秋季志愿服务计划
- 制定有效的轮岗计划
- 【2025年卫生健康宣传日】世界防治结核病日
- 新版《医疗器械经营质量管理规范》(2024)培训试题及答案
- 2025年人教版数学五年级下册教学计划(含进度表)
- 《神奇糖果店》教学课件
- 部编人教版二年级道德与法治下册同步练习(全册)
- h型钢力学性能计算表
- 三年级语文家长会(课堂PPT)
- 新老加油加气站设计与施工规范要点对比解读
- 医药企业价格和营销行为信用承诺书
- 三体系程序文件(参考)
- L-J质控图制作(傻瓜式填数据生成图)
评论
0/150
提交评论