大型数据库管理系统技术、应用与实例分析SQLServer2005(第2版)孟宪虎电子工业出版社课后实验参考答案_第1页
大型数据库管理系统技术、应用与实例分析SQLServer2005(第2版)孟宪虎电子工业出版社课后实验参考答案_第2页
大型数据库管理系统技术、应用与实例分析SQLServer2005(第2版)孟宪虎电子工业出版社课后实验参考答案_第3页
大型数据库管理系统技术、应用与实例分析SQLServer2005(第2版)孟宪虎电子工业出版社课后实验参考答案_第4页
大型数据库管理系统技术、应用与实例分析SQLServer2005(第2版)孟宪虎电子工业出版社课后实验参考答案_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

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

文档简介

1、0实验参考答案实验四(1创)建表使用对象资源管理器创建宥SQLServerEnterpriselanager文件操作查看工具窗口帮助0尬包HU濡控制台棍目录MicrosoftSQLServers控制台根目录SServers:館(Windows町)0J-rr-17B数管复安支矗4C数斤所有任勢逛从这里创逹窗口址)刷新(Z)帮助(H)rLiiijweHT)使用语言定义基本表有一个项目管理()数据库现有四张表,分别是部门表部门号,部门名,部门电话,部门地址);员工表(员工号,姓名,性别,出生年月,所在部门号);项目表(项目编号,项目名称,所在地方)以及员工参与项目(员工号,项目编号,职责)。其中一个

2、员工属于一个部门,一个部门有多个员工;一个员工可同时参加多个项目,一个项目有多个员工一起开发。用语言中的语言建立这四张表设计并定义表的主码和外码,各字段的数据类型自己设计。部门表的创建:createtable部门表(部门号char(4),部门名char(10),部门电话char(13),部门地址char(30),部门人数char(4),primarykey(部门号)员工表的创建:createtable员工表(员工号char(4),姓名char(8),性别char(2),出生年月datetime,所在部门号char(4),primarykey(员工号),foreignkey(所在部门号)refe

3、rences部门表(部门号)项目表的创建:createtable项目表(项目编号char(5),项目名称char(20),所在地方char(30),项目类型char(10),primarykey(项目编号)员工参与项目表的创建:createtable员工参与项目表(员工号char(4),项目编号char(5),职责char(10),primarykey(员工号,项目编号),foreignkey(员工号)references员工表(员工号),foreignkey(项目编号)references项目表(项目编号)所得结果为:二1员工参与项目表dbu用户2011-3-2313:30:43二1员工表d

4、bo用户2011-3-2313:28:21二1部门表dbo用户2011-3-2313:27:35二1项目表dbo用户2011-3-2313:29:58表中查看关于上从、和述创建的表的信息。表:侖表sysobjects中的软据,位置是zMgl中、(local)上口归rL:=urieidxtypeuidinfoSt:=L七口三b:=lE6schem:=LverreplinfoCK项目表613577224C112UU员工表645577338U161610628353272UDF侦工表性别661577395D13UUUPK员工表79A;677577452FK1U16UU员工表693577509C112

5、050UUCK眉工表171:|9577566C132050UUFK工表f:3725577623F152050UUFK一工参与项E741577680F112050UU口;:_部门表757577737C132UU部门773577794D1U64UUDF_工表去821577965D164UU匚5工表罢837578022C166UUCKJ目表_32Ei853578079C1U4UUEyEsegrTien1945057965V13-1610612736UUEyECunEt广zitLt呂1961058022V17-1610612736UU部门表1977058079U151610619137128UFK部门

6、表1993058136FK1U20UU项目表21:1891:158478U161610619137160UFK项目表TDTi2105058535FK1U20UU员工参与项目表2121058592u13161061401732UFK一工卷与项E2137058649FK1U20UU2表:Tin表sysindexes中的数据,位置是xmeI中、H(local)B世id2t:ELtUfirstindidrootmirilenkeycntgroupid5357522918450irL:ii-y1irL:ii-y1621535752292(BirL:ii_y255(BirL:ii_y00164557733

7、818450irL:ii-y1irL:ii-y3411197705807918450(BirL:ii_y1(BirL:ii_y7011ELiSdLiSS-TS18450irL:ii-y1irL:ii-y8111212105859218450(BirL:ii_y1(BirL:ii_y2321米表:hil表asyscoluns中的数据,1应置是iMgl中、(local;1上叵rL:=jTieid3ttypmtt:jAxusertypmlengthxprecXEcale部门号19770580791753175400部门名197705807917521751500部门电话197705807917521

8、751300部门地址197705807917521753000部门领导1977058079560564100项目编号20890584781753175500项目名称208905847817521752000所在地方208905847817521753000项目主管2089058478560564100开工日期2089058478610618233完工日期2089058478610618233员工号21210585921753175400项目編号2J210585921753175500职责表210n表sysreferences中的软据,位置是中、(local)上13叵c

9、onstidtkeyidrkeyidrkeyindidkeycntturkeysrefkeysfkeydbid121575115212105859220891:15847811::-BirL:t_y::-BirL:t_yU725577623645577338197705807911BiH3ryBiH3ryU741577680212105859264557733811::-BirL:t_y::-BirL:t_yU2L(3)使用对象资源管理器定义下面的约束。员工号是四位数字串,其中第一位和最后一位是取之间的数字,其他是E/Efullt包盟tC注t:dl0gEzyzfulltextnijtifysy

10、sirLiiexesEysindexkeyEzyzrnerTiberzEysobjectsEyEpermissionEEyEpropertiezsysprcitRc:t弓EysreferenceEzyztiezEyEUEerE员工参与项目表:1|部门杲jO新逹表设计表打开表(jQ)全文素引表CD卜q项目编号是以字母开始的其它是数字的位字符串。约束性别的取值为男、女,且非空,缺省是男。约束电话号码的格式:以889开2始的,第5位取23中4的一个,其它是数字的8位数字串。()使用语言增加修改部分表及字段在部门表中增加部门领导字段注意和员工号同域)在项目表中增加项目主管字段注意和员工号同域)在员工表

11、中增加技术职称和工资字段,其中工资为数字类型;在项目表中增加开工日期和完工日期字段,类型为日期类型;项目表开工日期项目表完工日期增加约束工程起始日期小于计划完成日期。项目表开工日期完工日期修改部门人数字段类型为整型。部门表部门人数删除项目表中的项目类型字段。项目表项目类型实验五数据库或运行创建个(1)调出第4章实验创建的四个表。方法:附加表的语句。0-:0-:0-:0-:0-:0-:0-:0-:0-:0-:曰文杵(LOCAL)Passbox1D.31*PPS.tvProgramRiesProgramRlesSiS163-WinNTQvodPlayerRECYCLERsamplesSMRTNTK

12、YSystemVolumeInfarmationTempxmgl/mgl_Data.MDFhxrngl_Log.LDF_|xmrE圍aa.txt:gAUTORUNMF4-_|E:(G21MB空闲)4-_|F:(1436OMB空闲)选定的文件:D:xmglxmgl_Data.MDF确定|取消I00附加敕皓库一(LOCAL;要附加数据库的0DF文件:D:Wigl,;nigl_Dc附加为(A):指定数据库所有原文件名xmgl_Data.MDFxmgl_ljog丄DFxmgl用户用户钗的遊类用户定义的国数_J站转粗艮务_J餌k&11|55|sy&members圉sysobjectsZJsyspemis

13、siciriHZJsyspropertiesZJsysp口电巳ct圉sysreferencesZJsystypesZJsysusers圉textdemo二I部门表二I项目表二|班第项目表dbo2WU-UEJ-0bdbo2000-08-06dbo2000-08-0&dbo2000-08-06dbo2000-08-0&dbo2000-08-06dbo2000-08-0&dbo2000-08-06dbo用户2011-03-30dbo用户2011-03-30dbo用户2011-05-07dbo用户2011-05-07dbo用户2007-02-01()用语句增加数据语句输入四个表中数据。其中部门表不得少

14、于个,员工表不得少于10个,项目表不得少于10个,员工参与项目的情况表不得少于个。表部门表中的城位置果xmgl中、u(LDCAL)n上部门号部门容部门电话部门地址部门领导部门人数1=1米234568o_uo_uoOo_uo_uoO部部部部部室室购告劳售划处处采广财销策办办88922111XX苑XXI1201室200188922222XXqXXI1202室200488922333XX苑XXI1203室200888922444XXqXXI1204室200588922555XX苑XXI1205室200988922666XXqXXI1206室201288922888XX苑XXI1208室2014侖表员

15、工表中的数据.位置昱xmgr中、(LOCAL)上1905/5/201001采购部长42321905/5/241002广告设计员34221905/5/221003出纳26001905/4/61002广告部长4901:11905/5/211004涓售部长491:11:11905/5/151005策划员33001905/6/71001采购员24531950/5/81003财务部长4901:11905/6/31005策划部长491:11:11905/5/131004梢售员442TI里里女里女里里女里里丽-明芳平丽枫苛楚锐超王张划李胡叶林楚高陈20来_yOO1_uO_:.?34567口II_u_u_u_

16、u_u_uO_u_u_u_u_u_uO?员工号姓名性别出生年月所在部门号技术职称工资1裔表员工参与项目表”比的数据r.匚三|叵亘C1自T号项目编号LILI1丁1项目总监2001JB项目总监2002丁1项目员工2002J10项目员工2002J2项目员工200213项目员工2002J4项目员工2002J5项目员工2002JB项目员工2002J7项目员工2002J8项目员工2002J9项目员工2002J10项目员工2003J10项目员工2ULI3J5项目员工200412项目总监2ULI4J3项目总监2005J4项目总监2ULI6J7项目员工2006J9项目员工2ULI8J10项目总监2008J5项目

17、总监2009J7项目总监2009J9项目总监2010J4项目员工4Z(3)设计查询语句并在查询编辑器中进行查询。求参加J3项目的员工姓名-请参加了J3项目的员工姓名select姓名from员工参与项目表,员工表where项目编号=J3and员工表.员工号=员工参与项目表.员工号查询张明这个职工所参加的项目的项目号,项目名称以及项目所在地方。select项目表.项目编号,项目名称,所在地方from员工参与项目表,员工表,项目表where员工表.员工号=员工参与项目表.员工号and员工参与项目表.项目编号=项目表.项目编号and姓名=张明爭查询一HDD-PC.xmgl.5a无标题1*查询张明这个职

18、工所参加的项目卽观貝号,项目名称以及项目所在地方。”select项貝表项貝銅号门頤苕粽插柱無芳from员工蓼占项自叢员工恙士页自表where员工表戛匸号员占参号现且烹员王号心and轻工参与项目表项自编号项目表项目编号and旌名=J张明rrr项目编号项目名称所在地方1J1采购建材浙江省杭州市2J10员工加薪浙江省杭州市3J2婴儿用品广告浙江省杭洲市4J3保健品广告浙江省金华市514家电促诸浙江省宁波市6J5公司装潢浙江省杭州市7J6食品销售浙江省台州市817处司重组浙江省杭州市9J8采购瓷器浙江省專兴市10J9处司履购浙江省丽水市11J10员工加薪浙江省杭州市查询参与了所有项目的员工姓名和员工所

19、在的部门。select姓名,所在部门号from员工表wherenotexists(select*from项目表wherenotexists(select*from员工参与项目表where员工号=员工表.员工号and项目编号=项目表.项目编号)查询没有参与任何一个项目的员工姓名和所在部门。select姓名,所在部门号from员工表wherenotexists(select*from项目表whereexists(select*from员工参与项目表where员工号=员工表.员工号and项目编号=项目表.项目编号)select项目编号from项目表wherenotexists(select*from

20、员工表wherenotexists(select*from员工参与项目表where员工号=员工表.员工号and项目编号=项目表.项目编号)where员工表.员工号=员工参与项目表.员工号and员工参与项目表.项目编号=项目表.项目编号and所在地方like%杭州%资合计,以及整个单位职工的平均工资总计。select所在部门号,avg(工资)as平均工资,max(工资)as最高工资,min(工资)as最低工资,sum(工资)as工资合计from员工表groupby所在部门号-呦岀電宜门职工的工资亠部门的半拽王弊最高壬资、WgTS-工资合出以讐f卑铉职工的孑select所在渤门号,avg(I资as

21、年均土资,mat工资as取咼工资min工资as工资mum(工竣from员工表亠、groupby所在部门号rrr12345所在部门号平均工资10011002最高工资最低工资3342.50000042324161.000000490024533422selectavg工资as平均工资总计员工表.50000049004427工表.00000049003300工资台计66858322750093278200爭查询一HDD-PC.xmgl.5a无;标题1*-3-0:00:0010%&对所有项目主管的工资增加HDD-PCBUO|sa(52|xmgli行ft76r1update员工表set工资=工资*1.1

22、whereexists(select*行89,511from项目表where项目表.项目主管=员工表.员工号)对所有取目主管的工資增加1强update员工表set工资=工说1.1whereexists(selectfrom项目表where贡目表项目主管员工表员工号钳I(所影响的行数齿5行)查询工资改变情况改变前:啬表员工表中的琳.位冒昱xmgr中(LOCALS上2001蒜黑霭112002200320042005200620072008EULid2010员工号丽改变后:回-3-性别男里女里女里男女男里I出生年月所在部门号技术职称工资1905/5/201001采购部长42321905/5/2410

23、02广告设计员34221905/5/221003出纳26001905/4/61002广告部长49001905/5/211004誚售部长491:11:11905/5/151005策划员33001905/6/71001采眈员24531950/5/81003财务部长49001905/6/31005策划部长4901:11905/5/131004涓售员44271员工号姓窑性别出生年月所在部门号技术班称工资-1:11222O-U233O_u24:|41:112551:112丽丽枫奇胡叶林661:112771:11288O-U299O_u2O-O21男男女畀女男男女男畀-_|II-55642O-U22433

24、O_u11:16122O_u9035j4_|II-_u_y355O_u-员划策_u_u33-_|II-员购采35423O-U9055O_u9035:|4IJI员售肖U-TT2744屈格國消息HDD-PC(8.0)sa(52)xmgl0:00:00ID行实验六先删除员工表和员工参与项目表上面的所有索引.1)使用对象资源管理器创建、管理索引为员工表创建一个索引名为“emp_id”的唯一性非聚集索引,索引关键字是“员工号”,填充因子80%。重命名索引,将索引emp_id重命名为员工表员工号。删除索引员工表_员工号。屋性表关丟素引/键CHECK约束员工表表名:选定的索引:新逹01)类型:索引名:一一芒

25、索引文件组:I埴充因子(F):厂埴充索引炉)-T创建UNIQUE(U)r约束(0)厂索引CO厂忽略重复键00厂创逹为CLUSTERED(C)厂不自动重新计算统计曲关闭帮助I二、使用T-SQL语句创建、管理索引为员工表创建一个索引名为emp_id的唯一性非聚集索引,索引关键字是员工号,填充因子80%。createuniquenonclusteredindexemp_idon员工表(员工号asc)withfillfactor=80createuniquenonclusteredindexeinp_idon员工表责工号asc)_withfillfactor:80命令已成功完成。回到企业管理器查看:重

26、命名索引,将索引emp_id重命名为员工表员工号。sp_rename员工表.emp_id,员工表员工号注意:更改对象名的任一部分都可能破坏脚本和存储过程。indeu已董命玄买J,员工衾员工号。回到企业管理器中查看:为员工参与项目表创建一个索引名为“员工项目ndex”的非聚集复合索引,索引关键字为“员工号”,升序,项目编号,降序,填充因子50%。createnonclusteredindex员工项目_indexon员工参与项目表(员工号asc,项目编号desc)withfillfactor=50gl.sa无标题1*问冈m亡亡ut姓名项目名称职贵from凤工裏项目表见工蔘与项目表毗玮员工表员工号二

27、员工参与项目表员工号姓名项目名称职责-I2345678一一明明明明明明明m-m-PJ-Tn-J-Trkrun-J-T弓PJ-TPJ-T采购建材项目总监采!W瓷器项目总监采购建材项目员工员工加薪项目员工婴儿用品广告项目员工保健品广告项目员工家电促销项目员工公司装潢项目员工食品销售项目员工n网格因消息8.0sa(52)xmgl0:00:00观察执行计划NestedLLiops/In成本:0%BciokiTLarkLoukup成本:1OKNestedLuups/In成本:0%TableScan成本:62%员工表.员工表员工号成本:14%项目表.PK_项目表7B.成本:14%and项目表项目錨号员工参

28、与项目表项目编号VestedLoops/InnerJoin对于顶部(外部)输入的毎一石,扫描底部(鬧)龜八j块洁输出匹配行-SELECT从数据库中检索行.允许从1亍或劣亍表中选择1亍或劣亍行或列物理操作:逵辑操作:预计行计数:预计成本:预计子树成本:SELECTSELECT250.000002(0%)0.0609物理操作:逵辑操作:预计冇计数:预计冇犬小:预计I/O成本:预计CPU成本:预计执行次数:预计成本:预计子树成本:WEstEd.LoopsInnerJoin.251650.0000000.0001051.00.000104(0%)0.0609琴数:OUTERREFERENCES:(员工

29、参与项目表.项目编号BooksarkLookup使用书签(RID或群集键)在表素引或聚集素引中查找相应行。NestedLoops/IimerJoin对于顶部(外部)输入的毎一狂扫描底部(肉岳)毓八J娅启输出匹配行0物理操作:逵辑操作:预计存计数:预计存大小:预计I/O成本:预计CPV成本:预计执存钦数:预计成本:预计子树成本:BookmarkLookupBookmarkLookup25890.006250.0000281.00.006278(10%)0.0524物理操作:逵辑操作:预计存计数:预计存犬小:预计I/O成本:预计CFV成本:预计执存次数:预计成本:预计子树成本:ITEztEdLoo

30、psInnerJoin25480.0000000.0001051.00.000104(0%)0.0461琴数:BOOEMAEK:(BmklOOO),OBJECT:(Kmgl.dbo.员工表参数:OUTERREFERENCES:员工参与项目表.员工号IndexSeek扫描非聚集索引中的特定范围的行TableScan扫描表中的行.物餐操作:逵辑操作:预计钉计数:预计钉犬小:预甘I/O底本:预计CFV成本:预计执冇次数:预计成本:预计子树成本:TableScanTableScan25380.03750.0001061.00.037685(62%)0.0376物理操作:逻辑操作:预计帝计数:预计帝大小

31、:预甘I/O应本:预计CPV成本:预计执不钦数:预计成本:预计子树成本:IndeKSeekIndeKSeek詁0.006320.00008025.00.008397(14%)0.00839盡監T:(xmgl.dbo,员工参与项目表琴数:OBJECT:(xmgl,dLo,员工表.员工表员工号),SEEK:表.员工号上员工参与项目表.员工号)ORDEREDFORWAKDClusteredIndexSeek扫描聚集索引中特定范围的行.物锂操作:逵辑操作:预计不计数:预计不大小:预甘I/O应本:预计CPV成本:预计执行钦数:预计成本:预计子树成本:ClusteredIndexSeekClustered

32、IndexSeek詁0.006320.00008025.00.008397(14%)0.00839琴数:OBJECT:(xmgl,dbo,项目表.冋_项目表匚7即05C75),SEEK:项目表.项目編号上员工奏写项目表.项目編号)ORDEREDFORWARDI/O=0.00625+0.0375+0.00632+0.00632=0.05639Cpu开销=0.000105+0.000028+0.000105+0.000106+0.00008+0.00008=0.001944为员工参与项目表创建一个索引名为“员工参与项目员工号”的非聚集索引,索引关键字为“员工号”,升序;按员工姓名和项目名称查询对应

33、的职责,然后观察执行计划信息,计算总的I/O和CPU开销。(员工表中员工号没索引,员工参与项目表中的员工号有非聚集索引)createnonclusteredindex员工参与项目表_员工号on员工参与项目表(员工号asc)withfillfactor=80select姓名,项目名称,职责from员工表,员工参与项目表,项目表where员工表.员工号=员工参与项目表.员工号and项目表.项目编号=员工参与项目表.项目编号i:查询一FC2011051521ZLH.sa无标题“口同冈createnonclusteredindex囚工参与项目表囚工万on员工参与项目表侦工号asc)_withfillf

34、actor:80select姓名预目名称,职贵from员工羔闵工参与贡目表项目表here员工表员工号二厨工参与项目表员工工and项目表项目编4=Z参与项目表项目编号_姓名Jill项目名称职责2345678一一明明明明明明明33弓n-r-Tn-r-Trkry弓弓弓采嗚建材项目总监采!W瓷器项目总监采!W建材项目员工员工加薪项目员工婴儿用品广告项目员工保健品广告项目员工家电促销项目员工公司装潢项目员工食品销售项目员工n网格画消息批查iFC20U051521ZLH(8.0)sa(52)Kmgl0:00:0025行行8,列西观察执行计划:SELECT成本:035NestedLoops/In.成本:OK

35、BookmarkLookupNestedLoops/In.成本:11幣成本:035员工参与项目表.员工参与项目表.成本:12%项目JNested.Loops/InnerJoin对于顶部(外部)输入的毎一红扫描底部(囱薪)龜八块洁输出匹配行SELECTSELECT250.000002(0%)0.0597ITEStEdLoopsInnerJoin251650.0000000.0001051.00.000104(0%)0.0597SELECT从数据库中检素行。允许从一于或爹于表中选择一于或爹于行或列。物理操作:逵辑操作:预计存计数:预计成本:预计子树成本:物餐操作:逵辑操作:预计钉计数:预计钉犬小:

36、预甘I/O底本:预计CFV成本:预计执冇次数:预计成本:预计子树成本:琴数:OUTERREFERENCES:员工参与项目表.项目编号BocikrTi:=Li_kLookupBocikrTi:=Li_kLookup25890.006250.0000281.00.0062T8(11%)0.0512険航訳LoopsIniLerJoin25710.0000000.0001051.00.000104(0%)0.0449BookmarkLookup使用书签(RID或群集键)在表索引或聚集索引中查找相应行物理操作:逵辑操作:预计石计数:预计石犬小:预计I/O成本:预计CFV成本:预计执行决数:预计成本:预计

37、子树成本:参数:BOOKMAKK:(Bmkl002)?OBJECT:(Kmgl,dbo.员工参与项目表1Bested.Loops/IiuierJoin对于顶部(外部)输入的毎一运扫描底部(因會5)输入煙肓输出匹配行物锂操作:逵辑操作:预计不计数:预计不大小:预计I/O成本:预计CFV成本:预计执冇孜数:预计成本:预计子树成本:琴数:OUTERREFERENCES:员工表.员工号IndexSeek扫描非聚集索引中的特定范围的行-TableScanTableScan10590.03750.0000891.00.037668(63%)0.0376IndexSeekIndexSeek希0.006320

38、.00008110.00.007220(12%)0.00722TableScan扫描表中的行.物餐操作:逵辑操作:预计钉计数:预计钉犬小:预甘I/O底本:预计CFV成本:预计执冇次数:预计成本:预计子树成本:琴数:0BjtCT:xmgl.dbo,员工表物理操作:逵辑操作:预计不计数:预计不犬小:预甘I/O应本:预计CFV成本:预计执冇钦数:预计成本:预计子树成本:琴数:OBJECT:(xmgl.dbo,员工参与项目表.员工参与项睫贞工号),SEEK:参与项目表.员工鲁上员工表.员工号)0RDEREDFORWARDClusteredIndexSeek扫描聚集素引中特定范围的行口物理操作:逵辑操作

39、:预计存计数:I预计存犬小:;预计I/O成本:预计CFV成本:!预计执存次数:预计成本:预计子树成本:Clustmir臼1IndexSeekClustmir臼1IndexSeek诂0.006320.00008025.00.008397(14%)0.00839参数:OBJECT:(xmgl.dbo.项目表.FK_项目表05C75),SEEK:项目表.项目編号=员工參写项目表.项目編号OEDEEEDF0珊AEDI/O=0.00625+0.0375+0.000081+0.00632=0.050151Cpu开销=0.000105+0.000028+0.000105+0.000089+0.000081+

40、0.00008=0.000737重建员工表中员工号上的主键,删除“员工参与项目员工号”的非聚集索引。按员工姓名和项目名称查询对应的职责,然后观察执行计划信息,计算总的I/O和CPU开销。(员工表中员工号有聚集索引,员工参与项目表中的员工号没有非聚集索引)dropindex员工参与项目表.员工参与项目表_员工号select姓名,项目名称,职责from员工表,员工参与项目表,项目表where员工表.员工号=员工参与项目表.员工号and项目表.项目编号=员工参与项目表.项目编号=ilUL=问冈n网格创消息i:查询一FC20U051521ZLH.XMgl.sa无标题1*dropindex员工参与项目表

41、员工参与项目表_员工号select姓名项目名称,职责from员工裏闵工参与贡目表项目表here贵工表员工号谒工参与项目表员工丄and项目表项目编寻二员工参与项目表项目编号姓名项目-称职责1王一采购建材项目总监2王一采!W瓷器项目总监3张明采嗚建材项目员工4张明员工加薪项目员工5张明婴儿用品广告项目员工6张明保億品广告项目员工7张明家电促销项目员工8张明公司装潢项目员工9张明食品销售项目员工|fC2011051521ZLH(8.0)|sa(52)|xmgl|0:00:00-.行|行1,列1观察执行计划:SELECT成本:0%NestedLoops/In.成本:OKBookiTLarkLuukup

42、成本:10KNestedLoops/In.成本:0%成本:62%员工表员工表员工号成本:14%项目表.PK_项目表7B.成本:14%BestedLoops/IiuierJoin对于顶部(外部)输入的毎一管扫描底部1内部)输入然后输出匹配行SELECT从数据库中检索行-允许从一牛或多牛表中选择一牛或多牛行或列-物理操作:SELECT逵辑操作:SELECT预计冇计数:25预计成本:0.000002(0%)预计子树成本:0.0609物锂操作:NestedLoops逵辑操作:IruLerJoin预计不计数:25预计不大小:165预甘I/O应本:0.000000预计CPV成本:0.000105预计执行钦

43、数:1.0预计成本:0.000104(0%)预计子树成本:0.0609琴数:OUTERREFERENCES:员工参与项目表.项目編号)BookaarkLookup使用书签(RID或群集键)在表索引或聚集索引中查找相应行Bested.Loops/ImierJoin对于顶部(外部)输入的毎一宜扫描底部(肉岳)龜八块洁输出匹配行Nestd.LoopsIniLerJoin25480.0000000.0001051.00.000104(0%)0.0461物餐操作:逵辑操作:预计钉计数:预计钉犬小:预甘I/O底本:预计CFV成本:预计执冇次数:预计成本:预计子树成本:BookmarkLookupBookm

44、arkLookup25890.006250.0000281.00.006278(10%)0.0524物餐操作:逵辑操作:预计钉计数:预计钉大小:预计I/O成本:预计crv成本:预计执行钦数:预计成本:预计子树成本:琴数:BOOKMABK:(BmklOOO),OBJECT:(xmgl.dbo.员工表琴数:OUTERREFERENCES:员工参与项目表.员工号XIndexSeek扫描非聚集索引中的特定范围的行0TableScan扫描表中的行.物餐操作:逵辑操作:预计存计数:预计存大小:预甘I/O虎本:预计CFV成本:预计执不次数:预计成本:预计子树成本:TableScanTableScan2538

45、0.03750.0001061.00.037685(62%)0.0376物理操作:逵辑操作:预计行计数:预计行犬小:预计I/O成本:预计CFV成本:预计执存次数:预计成本:预计子树成本:IndeKSeekIndeKSeek詁0.006320.00008025.00.008397(14%)0.00839畫卷T:(xmgl.dbo,员工参与项目表琴数:OBJECT:(xmgl.dbo,员工表.员工表员工号,SEEK:员工表.员工号=员工参与项目表.员工号ORDEREDF0珊ABDXIndexSeek扫描非聚集索引中的特定范围的行0XIndexSeek扫描非聚集索引中的特定范围的行0Clustere

46、d.IndexSeek扫描聚集索引中特定范围的行物理操作:逵辑操作:预计石计数:预计石大小:预计I/O成本:预计CFV成本:预计执钉钦数:预计成本:预计子树成本:CIueteredIndexSeekCIueteredIndexSeek詁0.006320.00008025.00.008397(14%)0.00839参数:OBJECT:(xmgl,dbo,项目表.FK_项目表TB905C75),SEEK:项目表.项目编号=员工卷耳项目表.项目编号ORDEREDF0RWAKDI/O=0.00625+0.000105+0.0375+0.0000080+0.000080=.0006515Cpu开销=0.

47、000105+0.000028+0.000105+0.00375+0.000008+0.000008=0.004148为员工参与项目表创建一个索引名为“员工参与项目员工号”的非聚集索引,索引关键字为“员工号”,升序。按员工姓名和项目名称查询对应的职责,然后观察执行计划信息,计算总的I/O和CPU开销。(员工表中员工号有聚集索引,员工参与项目表中的员工号有非聚集索引)createclusteredindex员工参与项目表_员工号on员工参与项目表(员工号asc)withfillfactor=80select姓名,项目名称,职责from员工表,员工参与项目表,项目表where员工表.员工号=员工参

48、与项目表.员工号and项目表.项目编号=员工参与项目表.项目编号1讪查询2njJ51521ZLH.xBgl.sajEfeJgjAcreateclusteredindex月工参与工贝目表囚工万on员工参与项目表员工粵asc)_withfillfactor=80select姓名,项目名称,职责from员工裹身工参与项目表项目表here贵工表.员工号谒工参与项目表员工工皿d项目表项目编寻二员工参与项目表项目编号扫挂底部内部)输入然后输出匹配行TableScan扫描表中的行.物理操作:逵辑操作:预计不计数:预计不大小:预甘I/O应本:预计CPV成本:预计执行钦数:预计成本:预计子树成本:聪三七沁Loo

49、psIrinerJoin251020.0000000.0001051.00.000104(0%)0.0449物理操作:逻辑操作:预计岳计数:预计岳犬小:预甘I/O应本:预计CFV成本:预计执讦次数:预计成本:预计子树成本:TableScanTableScan10590.03750.0000891.00.037668(70%)0.0376琴数:OUTERREFERENCES:员工表.员工号)琴数:OBJECT:(xmgl.dbo.员工表)IndexSeek扫描非聚集索引中的特定范围的行0ClusteredIndexSeek扫描聚集索引中特定范围的行.物理操作:逵辑操作:预计存计数:预计存大小:预

50、i+i/o应本:预计CPV成本:预计执帝钦数:预计成本:预计子树成本:ClusteredIndexSeekClusteredIndexSeek5f0.006320.00008110.00.007220(13%)0.00722ClusteredIndexSeek扫描聚集索引中特定范围的行.琴数:OBJECT:(xmgl,dbo,员工参与项目表.员工参与项目基員工号Lseek:员工参与项目表.员工号=员工表.员工号)ORDEREDF0RWAKD物理操作:逵辑操作:预计行计数:预计行大小:预计I/O成本:预计CPU成本:预计执存决数:预计成本:预计子树成本:ClusteredIndeKSeekClu

51、steredIndeKSeek詁0.006320.00008025.00.00839T(16%)0.00839琴数:OBJECT:(xmgl,dbo,项目表.FK_项目表T旳05C75),SEEK:项目表.项目编号匸员工奏写项目表.项目编号ORDEREDF0珊AEDI/O=0.00375+0.000105+0.0375+0.000008+0.0000632=0.014005Cpu开销=0.000105+0.000105+0.00375+0.0000089+0.0000080+0.000089=0.00421实验七1)比较自动事务模式和显式事务模式执行SQL的不同。selecttimes=0,*

52、from员工表Selecttimes0,*from员工表jin-T*口贝丄性别出生年月所在部门号技术职称工資-O-_u_u2一明王张男2_u2_u_u2男女3_u3_u_u2刘苦李平胡丽丽4_uj-4_lIIld_男5-u5-u-u2女6_u6_u_u2男78_un7R_un_un29.男女男9-_u-_y-_u-_u9JO-_u_u-_uld_男1905-05-2000:00:00.0001001采!W部长4955.20001905-05-2400:00:00.0001002广告设计员3722.00001905-05-2200:00:00.0001003出纳2900.00001905-04-

53、0600:00:00.0001002广告部长5690.00001905-05-2100:00:00.0001004销售部长5690.00001905-05-1500:00:00.0001005策划员3600.00001905-06-0700:00:00.0001001采嗚员2700.00001950-05-0800:00:00.0001003财政部长5690.00001905-06-0300:00:00.0001005策划部长5490.00001905-05-1300:00:00.0001004销售员4727.0000以自动事务模式执行下面SQL语句insertinto员工表values(20

54、11,杨阳,男,1990-07-20,1004,销售员,3800)(所戢响的行数対1行selecttimes=1,*from员工表times员工号姓名性别出生年月1905-05-2000:00:00.0001905-05-2400:00:00.0001905-05-2200:00:00.0001905-04-0600:00:00.0001905-05-2100:00:00.0001905-05-1500:00:00.0001905-06-0700:00:00.0001950-05-0800:00:00.0001905-06-0300:00:00.0001905-05-1300:00:00.00

55、01990-07-2000:00:00.000-O202-2O203d3乂OO25SS訓SH515uOZU206-6O207-7O208-8O20y-_yO20o-_u-O2-O2丽男男女男女男男女男男男所在部门号枝术职称工资1001采!W部长49551002广告设计员37221003出纳29001002广告部长56901004销售部长56901005策划员36001001采!W员27001003财政部长56901005策划部长54901004销售员47271004销售员3800update员工表set工资=4000where员工号=2011update员工表setTfe=4000where贝

56、工号:2011所戢响的行数曲1行员工表dill1905-05-2000:00:00.0001001采嗚部长49551905-05-2400:00:00.0001002广告设计员37221905-05-2200:00:00.0001003出纳29001905-04-0600:00:00.0001002广告部长56901905-05-2100:00:00.0001004销售部长56901905-05-1500:00:00.0001005策划员36001905-06-0700:00:00.0001001采!W员27001950-05-0800:00:00.0001003财政部长56901905-06

57、-0300:00:00.0001005策划部长54901905-05-1300:00:00.0001004销售员47271990-07-2000:00:00.0001004销售员4000男男女男女男男女男男男丽一明苦平丽枫奇楚锐超阳王张刘李胡叶林楚高陈杨223242526272829210212345678_y-u1_u_u_u-u_u_u_u_u_u11ooo_u_u_uooo_u_ull-22-l1-1?.1?ll-22-I.1?.times员工号姓名性别出生年月所在部门号技术职称工資dilldilldeletefrom员工表where员工号=2011selecttimes=3,*from

58、员工表1905-05-2000:00:00.0001001采!W部长49551905-05-2400:00:00.0001002广告设计员37221905-05-2200:00:00.0001003出纳29001905-04-0600:00:00.0001002广告部长56901905-05-2100:00:00.0001004销售部长56901905-05-1500:00:00.0001005策划员36001905-06-0700:00:00.0001001采!W员27001950-05-0800:00:00.0001003财政部长56901905-06-0300:00:00.0001005

59、策划部长54901905-05-1300:00:00.0001004销售员4727男男女男女男男女男男丽一明芳平丽枫奇楚锐超王张刘李胡叶林楚高陈2345fi-7s_yoooooooooo1_u_uooo_u_u_uoo222222222234567893333333333times贝丄P姓名性别出生年月所在部门号枝术职称工资以显式事务模式执行SQL语句-进入显式事务模式begintransaction侖令已成功完成:insertinto员工表values(2011,杨阳,男,1990-07-20,1004,销售员,3800)selecttimes=4,*from员工表insertinto员工表

60、valuesC2011J/fe阳二男1990-07-20TOMJ销售员3800)selecttiroes4,*froin员工表times|贝丄P姓名性别出生年月所在部门号拽术职称工资00:00:00.00000:00:00.0001905-05-202JJJ1丽2345o_u_u_uo_u-u_u_u_u22221905-05-241905-05-221905-04-061905-05-2100:00:00.00000:00:00.00000:00:00.0001001100210021004678giou678ooo_u_u1_u_u-u_u_u22222枫奇楚锐超阳1905-05-1500

温馨提示

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

评论

0/150

提交评论