视图和索引(数据库实验4)_第1页
视图和索引(数据库实验4)_第2页
视图和索引(数据库实验4)_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

./数据库基础与实践实验报告实验四视图和索引班级:惠普测试142学号:1408090213:闫伟明日期:2016-11-131实验目的:掌握SQL进行视图创建的方法;掌握SQL进行视图更新的方法,理解视图更新受限的原因;掌握SQL进行索引创建及删除的方法。2实验平台:操作系统:Windowsxp。实验环境:SQLServer2000以上版本。3实验容与步骤利用实验一创建的sch_id数据库完成下列实验容。定义视图V_TCS〔定义时不加withcheckoption,存放全部计算机系老师的信息。视图定义代码:CREATEVIEWV_TCSASSELECTtno,tn,sex,age,prof,sal,comm,T.dnoFROMT,DWHERET.dno=D.dnoANDD.dn='计算机'视图查询语句与查询结果截图:SELECT*FROMV_TCS定义视图V_sal,存放全体教师的教师号,教师,教师酬金〔工资+岗位津贴,职称信息。视图定义代码:CREATEVIEWV_salASSELECTtno教师号,tn教师,sal+comm教师酬金,prof支撑信息FROMT视图查询语句与查询结果截图:SELECT*FROMV_sal向V_TCS中插入一条计算机专业教师的新记录,并查询V_TCS视图的全部记录。视图更新代码:INSERTINTOV_TCSSELECT'T10','良瑗','女',20,'讲师',6000,8000,D.dnoFROMDWHERED.dn='计算机'视图查询语句与查询结果截图:SELECT*FROMV_TCS向V_TCS中插入一条信息专业教师的新记录,并查询V_TCS视图的全部记录。视图更新代码:INSERTINTOV_TCSSELECT'T11','百里登风','男',21,'讲师',6000,8000,D.dnoFROMDWHERED.dn='信息'视图查询语句与查询结果截图:SELECT*FROMV_TCSSELECT*FROMTWHEREtno='T11'修改V_TCS中的记录,使得编号为t2的教师的职称为副教授。视图更新代码:UPDATEV_TCSSETprof='副教授'WHEREtno='T2'视图查询语句与查询结果截图:SELECT*FROMV_TCSWHEREtno='T2'定义视图V_TCS_ck〔定义时加withcheckoption,存放全部计算机系老师的信息,对比该视图与V_TCS在进行数据更新时的差别。视图定义代码:CREATEVIEWV_TCS_ckASSELECTtno,tn,sex,age,prof,sal,comm,T.dnoFROMT,DWHERET.dno=D.dnoANDD.dn='计算机'WITHCHECKOPTION视图更新对比实验代码及运行结果截图:--1.能插入INSERTINTOV_TCS_ckSELECT'T12','良莠','女',20,'讲师',4000,4000,D.dnoFROMDWHERED.dn='计算机'--2.不能插入〔视图CHECKOPTION约束INSERTINTOV_TCS_ckSELECT'T13','天明','男',25,'讲师',4000,4000,D.dnoFROMDWHERED.dn='信息'在课程C表的课程名属性上按降序创建唯一索引I_cn。索引定义代码:CREATEINDEXI_cnONC<cnDESC>运行结果截图:删除C表上的索引I_cn。索引删除代码:DROPINDEXC.I_cn运行结果截图:4深入思考与讨论请先自己定义一个视图,使定义该视图的查询中使用连接。再更新该视图,观察视图更新受限情况。--1.定义:CREATEVIEWV_SCASSELECTsn,S.sno,cn,scoreFROMS,C,SCWHERES.sno=SC.snoANDC.cno=SC.cno--2.查询:SELECT*FROMV_SC--3.均无法插入〔插入影响到多表:INSERTINTOV_SCVALUES<'笑笑','S1','JAVA',99>INSERTINTOV_SCVALUES<'笑笑','S1','RUBY',99>INSERTINTOV_SCVALUES<'良垣','S15','JAVA',99>INSERTINTOV_SCVALUES<'良莠','S1','JAVA',99>SELECT*FROMV_SCWHEREsno='S1'--4.可以更新〔修改分数只影响到SC一表:UPDATEV_SCSETV_SC.score=99WHEREV_SC.cn='大学英语'ANDV_SC.sno='S1'SELECT*FROMV_SCWHEREsno='S1'--5.无法更新年龄〔视图V_SC不包含age列:UPDATEV_SCSETage=18WHEREV_SC.sno='S1'--6.无法更新,修改会影响到S和SC两表:UPDATEV_SCSETsn='笑',score=98WHEREV_SC.sno='S1'--7.将成绩为NULL的课程名设为NULL,更新失败〔遵守基表C的cn列的NOTNULL约束:UPDATEV_SCSET=NULLWHEREscoreISNULL请先自己定义一个视图,使定义该视图的查询带分组和集函数。再更新该视图,观察视图更新受限情况。 --1.定义:CREATEVIEWV_SC_gpASSELECTsn,S.sno,AVG<score>avg_scoreFROMS,C,SCWHERES.sno=SC.snoANDC.cno=SC.cnoGROUPBYsn,S.sno--2.查询:SELECT*FROMV_SC_gp--3.无法插入:INSERTINTOV_SC_gpVALUES<'静','S8',88>

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论