SQL实验6使用索引,视图和批量

上传人:拖*** 文档编号:291097370 上传时间:2022-05-11 格式:DOCX 页数:4 大小:17.24KB
返回 下载 相关 举报
SQL实验6使用索引,视图和批量_第1页
第1页 / 共4页
SQL实验6使用索引,视图和批量_第2页
第2页 / 共4页
SQL实验6使用索引,视图和批量_第3页
第3页 / 共4页
SQL实验6使用索引,视图和批量_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《SQL实验6使用索引,视图和批量》由会员分享,可在线阅读,更多相关《SQL实验6使用索引,视图和批量(4页珍藏版)》请在金锄头文库上搜索。

1、本文格式为Word版,下载可任意编辑SQL实验6使用索引,视图和批量 GDOU-B-11-112 大学学生测验报告书 测验名称 测验六:使用索引、视图和批量 课程名称 数据库原理与设计 学院(系) 学生姓名 劳绩 软件学院 学号 专业 计算机软件工程 测验地点 班级 测验日期 测验目的: 1. 掌管索引的创造语法 2. 掌管视图的创造语法 3. 使用视图更新数据 4. 编写各种批量 测验内容 针对GlobalToyz和Recruitement,Student数据库,按要求完成以下题目。 1. 对于Toys表,在玩具名称上建立一个唯一索引,写出相应的T-SQL语句。 CREATE INDEX i

2、dxname ON Toys(cToyId DESC) 2. 对于Shipment表,我们会经常查看玩具的实际发送日期(dActualDeliveryDate),请问,我们理应建立什么索引加快每次查询该列的速度,并写出相应的T-SQL语句。 CREATE NONCLUSTERED INDEX idxname ON Shipment(dActualDeliveryDate DESC) 3. 创造一个视图,由Toys表的vToyDescription和mToyRate列构成,要求限制用户查看该视图的生成脚本语句。(视图文本加密使用 with encryption 语句) CREATE VIEW I

3、S_Toys with encryption(固定语法) AS SELECT vToyDescription,mToyRate FROM toys 4. 对于Recruitment数据库,创造一个视图名为vwCandidateContractRecruiter,其中包含了外部候选人的代码,姓名,测试劳绩,以及其对应的合同雇用人员的代码和名称。 CREATE VIEW vwCandidateContractRecruiter AS SELECT cCandidateCode,vFirstName, vLastName,siTestScore,cInterviewer, cInterviewern

4、ame=(select cEmployeeCode from Employee) FROM ExternalCandidate 5. 对于第4题中创造的视图vwCandidateContractRecruiter举行更新,修改外部候选人代码为000049的候选人,更改其测验劳绩为87分,并更改相对应的合同雇用人员的名称为Roger Federal。写出完成该操作的全体语句。(连接视图的更新,一次只允许更新一个根本表 ) UPDATE vwCandidateContractRecruiter SET sitestscore=87 WHERE cCandidateCode=000049 UPDAT

5、E vwCandidateContractRecruiter SET cInterviewername=Roger Federal WHERE cCandidateCode=000049 6. 编写一个批量,计算1到100的偶数和。(使用while) declare x int,sum int set x=0 set sum=0 while x25 and y10 printMaybe the price of toys on globaltoyz is not so cheap else print You can search something on globaltoyz 8. 对于Po

6、sition表,其中可以看到每个职位的人员配备处境,根据Position表中的每个职位的人员缺少数,我们分别打印不同的消息,假设缺少数在20人以上,打印奇缺,在520之间,打印中度,假设在5人以下,那么打印或缺。(使用探寻的CASE语句)提示:人员缺少数理应根据预算人数(iBudgetedStrength)和当前人数(iCurrentStrength)之差求出来。 declare x int,y int SELECT x=iBudgetedStrength,y=iCurrentStrength from Position if (x-y)20 print 奇缺 else if (x-y)80

7、BEGIN UPDATE ExternalCandidate SET sitestscore=sitestscore*0.95 END else BEGIN UPDATE ExternalCandidate SET sitestscore=sitestscore*0.97 END 10. Toys表包含由零售机构出售的全体玩具的材料。Toys表的siToyQOH列存储各玩具的零件数量,cToyId列存储各玩具的Toy Id。在cToyId列上定义Primary Key的约束。当产品为000029的玩具的siToyQOH列的值大于0时,使用适当的编程构造显示短语“Product availabl

8、e”。假设存储在siToyQOHd的值为0时,那么显示短语“Product not available”。 ALTER table toys ADD PRIMARY KEY (cToyId) declare x int SELECT x=siToyQOH from toys where cToyId=000029 if x0 print Product available else print Product not available 11. 查询是否全体的玩具都曾经被人订购,假设是的话,那么打印消息All Toys have ever been ordered。否那么,打印消息Some k

9、ind of toys are not so popular ,并列出没有被人订购过的玩具的细致信息。 if exists (select * from toys where cToyId not in (select cToyId from OrderDetail ) ) begin print All Toys have ever been ordered end else begin print Some kind of toys are not so popular end select* from Toys where cToyId not in (select cToyId fro

10、m OrderDetail) 12. 定义一个变量,用于存储Toys表中价格最高的玩具名称。假设最高价格50元,那么打印消息price is less than 50并打印该变量的值,否那么打印消息The price is more than 50并打印该变量的值。 declare highrate float select highrate=(select top 1 mToyRate from Toys ORDER BY mToyRate DESC ) from Toys if highrate50 begin print price is less than 50 print highrate end else begin print The price is more than 50 print highrate end 4

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号