上機實驗報告-課程:數(shù)據(jù)庫原理_第1頁
上機實驗報告-課程:數(shù)據(jù)庫原理_第2頁
上機實驗報告-課程:數(shù)據(jù)庫原理_第3頁
上機實驗報告-課程:數(shù)據(jù)庫原理_第4頁
上機實驗報告-課程:數(shù)據(jù)庫原理_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

...wd......wd......wd...上機實驗報告課程:數(shù)據(jù)庫原理實驗1名稱:數(shù)據(jù)庫設(shè)計實驗內(nèi)容:以所在學校選課和課程管理為實際應(yīng)用背景,設(shè)計一個教學管理數(shù)據(jù)庫。假設(shè)至少包含如下需求:·學生信息管理·課程信息管理·教師信息管理·學生選修課程及成績信息管理·教師負責課程和講授課程信息管理實驗目的:·通過實踐,掌握本章介紹的數(shù)據(jù)庫設(shè)計方法?!W會使用PowerDesigner來完成數(shù)據(jù)庫設(shè)計過程。、實驗方法〔或程序源代碼〕:根據(jù)實驗內(nèi)容明確要完成的系統(tǒng)功能。運行PowerDesigner創(chuàng)立概念數(shù)據(jù)模型,建立實體、屬性和聯(lián)系。對關(guān)鍵字、空值、域完整性等做出必要的描述,根據(jù)實際情況確定聯(lián)系的類型。將檢查無誤的概念數(shù)據(jù)模型轉(zhuǎn)換成邏輯數(shù)據(jù)模型,并對生成的邏輯數(shù)據(jù)模型作必要的修改。選擇一個實際的DBMS軟件〔如SQLServer〕,根據(jù)邏輯數(shù)據(jù)模型生成物理數(shù)據(jù)模型,并對生成的物理數(shù)據(jù)模型作必要的修改。教學管理E-R圖〔2〕〔轉(zhuǎn)換了多對多聯(lián)系〕〔3〕邏輯數(shù)據(jù)模型〔4〕物理數(shù)據(jù)模型實驗數(shù)據(jù)、結(jié)果分析、總結(jié)問題:經(jīng)過對這個實驗的制作,信息比較多,做表格有點復雜,涉及的框架知識多,對關(guān)鍵字、空值、域完整性做的描述基本熟練。對概念數(shù)據(jù)模型、物理數(shù)據(jù)模型、邏輯數(shù)據(jù)模型的基本掌握。開場對數(shù)據(jù)庫的設(shè)計有了一定的了解。實驗日期:2013年10月16日實驗2名稱:建立數(shù)據(jù)庫、架構(gòu)、表和定義完整性約束。實驗內(nèi)容:參見2.1.7建立數(shù)據(jù)庫的CREATEDATABASE命令首先建立數(shù)據(jù)庫,然后參照圖5-1和5-8建立表并定義完整性約束,可以在此基礎(chǔ)上根據(jù)自己學校的實際情況增加表、字段和約束等。實驗目的:熟練掌握表的建立和數(shù)據(jù)庫完整性約束的定義方法,實踐DBMS提供的數(shù)據(jù)完整性功能,加深對數(shù)據(jù)完整性的理解。三.、實驗方法〔或程序源代碼〕:使用CREATEDATABASE命令建立數(shù)據(jù)庫,使用CREATESCHEMA命令建立架構(gòu),用CREATETABLE命令建立表并定義數(shù)據(jù)完整性約束,用ALTERTABLE命令修改表架構(gòu)。程序源代碼:CREATEDATABASE美美ON(NAME=美美,FILENAME='E:\美美.mdf',SIZE=10,MAXSIZE=50,FILEGROWTH=5)LOGON(NAME=order_log,FILENAME='E:\美美.ldf',SIZE=5MB,MAXSIZE=25MB,FILEGROWTH=5MB)use美美gocreateschemaacreateschemabcreateschemacCREATETABLE院系(編號CHAR(6)PRIMARYKEY,名稱CHAR(20)UNIQUENOTNULL,分責人CHAR(10),辦公地點CHAR(20))CREATETABLE學生(學號CHAR(8)PRIMARYKEY,院系CHAR(6)FOREIGNKEYREFERENCES院系(編號),姓名CHAR(10)NOTNULL,性別CHAR(2)check(性別in('男','女')),生源CHAR(6),狀態(tài)CHAR(4)check(狀態(tài)in('正常','留級','休學','退學')))createtable教師(教師編號CHAR(8)PRIMARYKEY,院系CHAR(6)FOREIGNKEYREFERENCES院系(編號),姓名CHAR(10)NOTNULL,性別CHAR(2)check(性別in('男','女')),職稱CHAR(6)CHECK(職稱IN('教授','副教授','講師','助教')),專業(yè)CHAR(10))createtable課程(課程編號CHAR(8)PRIMARYKEY,課程名稱CHAR(20)NOTNULL,責任教師CHAR(8)FOREIGNKEYREFERENCES教師(教師編號),學時SMALLINTNOTNULL,課程性質(zhì)CHAR(10)CHECK(課程性質(zhì)IN('公共基礎(chǔ)','專業(yè)基礎(chǔ)','專業(yè)選修','任意選修')))createtable選課(學號CHAR(8)FOREIGNKEYREFERENCES學生(學號),課程編號CHAR(8)FOREIGNKEYREFERENCES課程(課程編號),成績SMALLINTCHECK(成績>=0AND成績<=100)DEFAULTNULL)實驗數(shù)據(jù)、結(jié)果分析、總結(jié)問題:通過此次的實驗,讓我對使用CREATEDATABASE命令建立數(shù)據(jù)庫有了更加熟練的認識,對CREATESCHEMA命令建立架構(gòu)的基本掌握,學會了使用CREATETABLE命令建立表并定義數(shù)據(jù)完整性約束,也ALTERTABLE命令修改表架構(gòu)。學到了更多,懂得了更多。實驗日期:2013年10月23日實驗3名稱:數(shù)據(jù)操作和完整性約束的作用。實驗內(nèi)容:在實驗2的基礎(chǔ)上完成數(shù)據(jù)的插入操作,然后進展局部修改和刪除操作,在這些操作中體會數(shù)據(jù)完整性約束的作用。實驗目的:熟練掌握SQL的INSERT、UPDATE和DELETE命令,深刻理解數(shù)據(jù)完整性約束的作用以及約束時機。三.、實驗方法〔或程序源代碼〕:在實驗2的基礎(chǔ)上首先用INSERT命令插入各個表的記錄,然后使用UPDATE和DELETE命令對局部記錄進展修改和刪除操作。程序源代碼:ALTERTABLE學生ADD平均成績SMALLintNULLALTERTABLE課程ADDCHECK(學時%8=0)ALTERTABLE院系altercolumn名稱VARCHAR(30)NOTNULLALTERTABLE教師ADD工資numeric(5,2)INSERTINTO院系VALUES('1001','機械工程學院','徐武彬','第2教學樓3樓')INSERTINTO院系VALUES('1002','汽車與交通學院','盧麗虹','第2教學樓1樓')INSERTINTO院系VALUES('1003','計算機學院','唐培和','第4教學樓5樓')INSERTINTO院系VALUES('1004','土木建筑工程學院','張鵬','土木建筑工程樓')INSERTINTO院系VALUES('1005','生物與化學工程學院','李軍生','生化樓')INSERTINTO院系VALUES('1006','電氣與信息工程學院','羅文廣','第4教學樓2樓')INSERTINTO院系VALUES('1007','管理學院','馬璐','第4教學樓6樓')INSERTINTO院系VALUES('1008','財經(jīng)學院','侯雁','第4教學樓4樓')INSERTINTO院系VALUES('1009','外國語學院','張樹德','第2教學樓5樓')INSERTINTO院系VALUES('1010','理學院','李棟龍','第2教學樓2樓')INSERTINTO院系VALUES('1011','社會科學學院','韋廷柒','第2教學樓6樓')INSERTINTO院系VALUES('1012','藝術(shù)與文化傳播學院','黃蘊蘭','第4教學樓8樓')INSERTINTO院系VALUES('1013','體育學院','蔣鋼強','體育部樓')INSERTINTO學生VALUES('11102001','1013','鄧紅','女','海南省','正常','90')INSERTINTO學生VALUES('11102002','1013','周俊臣','男','廣西','正常','89')INSERTINTO學生VALUES('11102003','1013','龍中華','男','廣西','正常','87')INSERTINTO學生VALUES('11102004','1013','李昌武','女','','正常','88')INSERTINTO學生VALUES('11904001','1012','韋秋培','女','','正常','86')INSERTINTO學生VALUES('11904002','1012','吳迎','男','廣西','正常','84')INSERTINTO學生VALUES('11310001','1006','利偉杰','男','廣西','正常','85')INSERTINTO學生VALUES('11310002','1006','吳奕辰','女','廣西','正常','81')INSERTINTO學生VALUES('11102003','1006','樓琴','男','吉林省','正常','80')INSERTINTO學生VALUES('11402001','1003','曾磊','男','廣東省','正常','83')INSERTINTO學生VALUES('11402002','1003','張學文','男','廣東省','正常','82')INSERTINTO學生VALUES('11402003','1003','李陟','男','廣西','正常','90')INSERTINTO學生VALUES('11402004','1003','黎佩超','男','','正常','95')INSERTINTO學生VALUES('11107001','1001','吳金釗','男','廣西','正常','94')INSERTINTO學生VALUES('11107002','1001','林官來','男','廣西','正常','93')INSERTINTO學生VALUES('11107003','1001','黃一拯','男','安徽省','正常','91')INSERTINTO學生VALUES('11107004','1001','馮泳樹','女','黑龍江','正常','88')INSERTINTO學生VALUES('11207001','1002','梁錦浩','男','廣西','正常','86')INSERTINTO學生VALUES('11207002','1002','王祥成','男','廣西','正常','88')INSERTINTO學生VALUES('11207003','1002','黃圳波','女','青海省','正常','85')INSERTINTO學生VALUES('11701001','1007','李佳洋','男','廣西','正常','84')INSERTINTO學生VALUES('11701005','1007','蔣履龍','男','廣西','正常','86')INSERTINTO學生VALUES('11306001','1006','張丹娜','女','廣西','正常','81')INSERTINTO學生VALUES('11306002','1006','石立揚','男','青海省','正常','83')INSERTINTO學生VALUES('11306003','1006','張鴻宇','男','江西省','正常','84')INSERTINTO學生VALUES('11501001','1004','付柳源','女','廣西','正常','82')INSERTINTO學生VALUES('11501002','1004','林順','女','廣西','正常','86')INSERTINTO學生VALUES('11501003','1004','黃明光','男','廣西','正常','95')INSERTINTO學生VALUES('11601001','1005','吳明燁','男','廣西','正常','85')INSERTINTO學生VALUES('11601002','1005','安應(yīng)軍','男','廣西','正常','90')INSERTINTO教師VALUES('T0000335','1009','黃勁','男','講師','外國語言學','200')INSERTINTO教師VALUES('T0000057','1009','吳曉萍','女','講師','翻譯理論','220')INSERTINTO教師VALUES('T0000967','1009','韋玲','女','講師','外國語言學','200')INSERTINTO教師VALUES('T0000035','1010','曹石云','男','講師','數(shù)學科學','200')INSERTINTO教師VALUES('T0000103','1010','郭艷鳳','女','副教授','應(yīng)用數(shù)學','350')INSERTINTO教師VALUES('T0000090','1010','莫春鵬','男','講師','應(yīng)用數(shù)學','200')INSERTINTO教師VALUES('T0000019','1010','熊維玲','女','教授','復分析','500')INSERTINTO教師VALUES('T0001423','1010','徐柳蘇','男','副教授','理論物理','350')INSERTINTO教師VALUES('T0000848','1003','何劍','男','講師','計算機科學','200')INSERTINTO教師VALUES('T0000114','1003','李威龍','男','副教授','軟件工程','350')INSERTINTO教師VALUES('T0000095','1010','韋振中','男','副教授','數(shù)據(jù)挖掘','350')INSERTINTO教師VALUES('T0000026','1011','韋廷柒','男','教授','法學','500')INSERTINTO教師VALUES('T0000017','1013','于野','男','講師','武術(shù)','200')INSERTINTO教師VALUES('T0000068','1009','羅萍','女','副教授','翻譯理論','350')INSERTINTO課程VALUES('wy010020','大學英語A1','T0000057','64','公共基礎(chǔ)')INSERTINTO課程VALUES('wy010030','大學英語A2','T0000967','64','公共基礎(chǔ)')INSERTINTO課程VALUES('xj010032','高等數(shù)學B1','T0000035','80','專業(yè)基礎(chǔ)')INSERTINTO課程VALUES('xj010042','高等數(shù)學B2','T0000090','80','專業(yè)基礎(chǔ)')INSERTINTO課程VALUES('js012020','大學計算機基礎(chǔ)','T0000848','48','公共基礎(chǔ)')INSERTINTO課程VALUES('xj070650','軟件開發(fā)工具','T0000114','32','專業(yè)選修')INSERTINTO課程VALUES('xj070616','數(shù)據(jù)挖掘','T0000095','48','專業(yè)選修')INSERTINTO課程VALUES('sk010180','馬克思主義基本原理','T0000026','36','公共基礎(chǔ)')INSERTINTO課程VALUES('rx010090','英語演講與口才','T0000068','16','任意選修')INSERTINTO課程VALUES('xj010034','數(shù)學模型','T0000090','32','專業(yè)選修')INSERTINTO課程VALUES('wy010020','大學英語A1','T0000057','64','公共基礎(chǔ)')INSERTINTO課程VALUES('wy010030','大學英語A2','T0000967','64','公共基礎(chǔ)')INSERTINTO課程VALUES('xj010032','高等數(shù)學B1','T0000035','80','專業(yè)基礎(chǔ)')INSERTINTO課程VALUES('xj010042','高等數(shù)學B2','T0000090','80','專業(yè)基礎(chǔ)')INSERTINTO課程VALUES('js012020','大學計算機基礎(chǔ)','T0000848','48','公共基礎(chǔ)')INSERTINTO課程VALUES('xj070650','軟件開發(fā)工具','T0000114','32','專業(yè)選修')INSERTINTO課程VALUES('xj070616','數(shù)據(jù)挖掘','T0000095','48','專業(yè)選修')INSERTINTO課程VALUES('sk010180','馬克思主義基本原理','T0000026','36','公共基礎(chǔ)')INSERTINTO課程VALUES('rx010090','英語演講與口才','T0000068','16','任意選修')INSERTINTO課程VALUES('xj0100034','數(shù)學模型','T0000090','32','專業(yè)選修')INSERTINTO選課VALUES('11102001','wy010030','64')INSERTINTO選課VALUES('11102002','wy010030','58')INSERTINTO選課VALUES('11102004','wy010030','70')INSERTINTO選課VALUES('11102004','sk010180','65')INSERTINTO選課VALUES('11402001','wy010029','75')INSERTINTO選課VALUES('11402001','sk010180','65')INSERTINTO選課VALUES('11402001','ty010010','80')INSERTINTO選課VALUES('11402001','xj070650','66')INSERTINTO選課VALUES('11402002','wy010029','78')INSERTINTO選課VALUES('11402002','sk010180','49')INSERTINTO選課VALUES('11402002','ty010010','82')INSERTINTO選課VALUES('11402002','xj070650','67')INSERTINTO選課VALUES('11402003','wy010029','82')INSERTINTO選課VALUES('11402003','sk010180','63')INSERTINTO選課VALUES('11402003','ty010010','78')INSERTINTO選課VALUES('11402003','xj070650','69')INSERTINTO選課VALUES('11402003','xj070616','72')INSERTINTO選課VALUES('11402003','rx010090','90')INSERTINTO選課VALUES('11601001','wy010030','65')INSERTINTO選課VALUES('11601001','xj010032','76')INSERTINTO選課VALUES('11601001','js012020','82')INSERTINTO選課VALUES('11601001','sk010180','80')INSERTINTO選課VALUES('11601001','ty010010','75')INSERTINTO選課VALUES('11601001','sh030090','86')INSERTINTO選課VALUES('11601002','wy010030','55')INSERTINTO選課VALUES('11601002','xj010032','66')INSERTINTO選課VALUES('11601002','js012020','89')INSERTINTO選課VALUES('11601002','sk010180','75')INSERTINTO選課VALUES('11601002','ty010010','64')INSERTINTO選課VALUES('11601002','sh030090','50')INSERTINTO選課VALUES('11904001','wy010030','67')INSERTINTO選課VALUES('11904001','js012020','80')INSERTINTO選課VALUES('11904001','sk010180','76')INSERTINTO選課VALUES('11904002','wy010030','45')INSERTINTO選課VALUES('11904002','js012020','78')INSERTINTO選課VALUES('11904002','sk010180','69')INSERTINTO選課VALUES('11312001','wy010020','60')INSERTINTO選課VALUES('11312001','xj010032','65')INSERTINTO選課VALUES('11312001','js010020','80')INSERTINTO選課VALUES('11312001','xj070650','68')INSERTINTO選課VALUES('11312001','xj070616','63')INSERTINTO選課VALUES('11312001','sk010180','85')INSERTINTO選課VALUES('11312001','ty010010','90')INSERTINTO選課VALUES('11312001','rx010090','75')INSERTINTO選課VALUES('11312002','wy010020','76')INSERTINTO選課VALUES('11312002','xj010032','77')INSERTINTO選課VALUES('11312002','js012020','78')INSERTINTO選課VALUES('11312002','xj070650','79')INSERTINTO選課VALUES('11312002','xj070616','80')INSERTINTO選課VALUES('11312002','sk010180','81')INSERTINTO選課VALUES('11312002','ty010010','82')--2違反約束插入操作INSERTINTO學生VALUES('11102002','1013','周俊臣','男','廣西壯族自治區(qū)','正常','89')--生源字符大于定義的6個字符INSERTINTO課程VALUES('xj0100034','數(shù)學模型','T0000090','32','專業(yè)選修')--課程編號字符大于定義的8個字符INSERTINTO選課VALUES('體育學院','11102001','wy010030','64')--列名或所提供值的數(shù)目與表定義不匹配。INSERTINTO選課VALUES('計算機學院','11402001','wy010029','75')--沒有該課程編號,列名或所提供值的數(shù)目與表定義不匹配。INSERTINTO選課VALUES('生物與化學工程學院','11601001','sh030090','86')--沒有該課程編號,列名或所提供值的數(shù)目與表定義不匹配。DELETEFROM學生WHERE生源='廣西壯族自治區(qū)'DELETE課程WHERE課程編號='xj0100034'--級聯(lián)刪除DELETEFROM學生WHERE學號='11102002'--拒絕刪除DELETE學生WHERE生源=''--空值刪除實驗數(shù)據(jù)、結(jié)果分析、總結(jié)問題:初次使用SQL軟件的靈敏度的欠缺,也基本掌握了SQL的INSERT、UPDATE和DELETE命令,能理解數(shù)據(jù)完整性約束的作用以及約束時機。各個表格的設(shè)計也偶爾出現(xiàn)了命令行出錯,然后在進展解決。實驗日期:2013年10月23日實驗4名稱:使用SQLSELECT語句的數(shù)據(jù)查詢操作。實驗內(nèi)容:在實驗2和實驗3的基礎(chǔ)上完成規(guī)定的查詢操作。實驗目的:熟練掌握SQLSELECT命令。三.、實驗方法〔或程序源代碼〕:在實驗2和實驗3的基礎(chǔ)上使用SQLSELECT命令完成實驗要求中所規(guī)定的各種查詢。程序源代碼:--(1)select姓名FROM學生select編號FROM學生--(2)select*FROM院系SELECT編號,名稱,負責人,辦公地點FROM院系--(3)select姓名,性別FROM學生WHERE性別='男'--(4)select*from選課WHERE成績>=60AND成績<=100--(5)select*from選課WHERE成績>=60OR成績<=100--(6)select*from選課WHERE(成績>=70OR成績<=80)AND(成績>=0OR成績<=60)--(7)select*from選課WHERENOT(成績>=70AND成績<=100)--(8)select*from選課WHERE成績BETWEEN60AND100--(9)select*from選課WHERE成績NOTBETWEEN50AND100--(10)select*from學生WHERE姓名LIKE'%雄%'select*from學生WHERE學號LIKE'_6'--?--(11)select*from教師WHERE教師編號LIKE'20[1-19]'--?select*from教師WHERE教師編號LIKE'20[^9]'--?--(12)select*from選課WHERE成績ISNULLselect*from選課WHERE成績ISNOTNULL--(13)select*from選課ORDERBY成績--(14)select*from選課ORDERBY成績,課程編號select*from選課ORDERBY成績,課程編號DESC--(15)selectTOP(5)*from選課ORDERBY成績DESC--(16)selectTOP(5)WITHTIES*from選課ORDERBY成績DESC--(17)select姓名,成績,院系from學生JOIN選課ONXS.學號=XK.學號--(18)select姓名,成績,院系from學生JOIN選課ONXS.學號=XK.學號WHERE成績>=70AND成績<=80--(19)selectXS.性別,生源,XS.學號from學生JOIN選課ONXS.學號=XK.學號JOIN院系ON編號=院系JOIN教師ONJS.院系=XS.院系WHERE生源='玉林'AND狀態(tài)='正常'--(20)select*from學生CROSSJOIN教師--(21)--?SELECTXS.*,XK.課程編號,XK.成績FROM學生CROSSJOIN選課WHEREXS.學號=XK.學號--(22)SELECT姓名,職稱,課程名稱,課程性質(zhì)FROM教師JOIN課程ONJS.教師編號=KC.責任教師--(23)SELECT姓名,職稱,課程名稱,課程性質(zhì)FROM教師LEFTJOIN課程ONJS.教師編號=KC.責任教師--(24)SELECT姓名,職稱,課程名稱,課程性質(zhì)FROM教師RIGHTJOIN課程ONJS.教師編號=KC.責任教師--(25)SELECT姓名,職稱,課程名稱,課程性質(zhì)FROM教師FULLJOIN課程ONJS.教師編號=KC.責任教師--(26)SELECT姓名FROM學生WHERE學號IN(SELECT學號FROM選課WHERE成績>=90)--(27)SELECT*FROM學生WHERE學號NOTIN(SELECT學號FROM選課WHERE成績<=80)SELECT*FROM選課WHERE學號NOTIN(SELECT學號FROM選課WHERE成績<=80)AND學號IN(SELECT學號FROM選課)--(28)SELECT學號FROM選課WHERE平均成績=(SELECT成績FROM選課WHERE學號='20110908')--(29)SELECTDISTINCT姓名FROM學生WHERE平均成績>=any(SELECT成績FROM選課WHERE學號='20110923')SELECTDISTINCT姓名FROM學生WHERE平均成績>=(SELECTMIN(成績)FROM選課WHERE學號='20110923')--SOMESELECTDISTINCT姓名FROM學生WHERE平均成績>=SOME(SELECT成績FROM選課WHERE學號='20110927')--(30)SELECTDISTINCT姓名FROM學生WHERE平均成績>=ALL(SELECT成績FROM選課WHERE學號='20110923')SELECTDISTINCT姓名FROM學生WHERE平均成績>=(SELECTMAX(成績)FROM選課WHERE學號='20110923')--(31)--?SELECT姓名,職稱,課程名稱,課程學時FROM教師WHERE職稱IN(SELECT名稱,職稱,負責課程FROM院系WHERE)--(32)SELECTDa.學號,Da.姓名,Da.性別,Da.生源,Da.狀態(tài),Da.平均成績FROM學生DaWHEREDa.平均成績=(SELECTMax(Sa.平均成績)FROM學生SaWHERESa.學號=Da.學號)--(33)SELECT*FROM教師WHEREEXISTS(SELECT*FROM課程WHERE教師編號=KC.責任教師)SELECT*FROM教師WHERE教師編號IN(SELECT責任教師FROM課程)--(34)SELECT*FROM教師WHERENOTEXISTS(SELECT*FROM課程WHEREJS.教師編號=KC.責任教師)SELECT*FROM教師WHERE教師編號NOTIN(SELECT責任教師FROM課程)--(35)SELECTCOUNT(DISTINCT生源)FROM學生SELECTCOUNT(生源)FROM學生--(36)SELECTSUM(工資)FROM教師--(37)SELECTSUM(工資),AVG(工資),COUNT(教師編號),MAX(工資),MIN(工資)FROM教師--(38)--?SELECT姓名,AVG(平均成績)FROM學生WHERE平均成績>60GROUPBY姓名HAVINGCOUNT(*)>=60--(40)--?SELECT姓名,AVG(平均成績)FROM學生GROUPBY姓名--(41)--?SELECT學號,AVG(成績),MAX(成績),MIN(成績),COUNT(*)FROM選課GROUPBY學號--(42)--?--(43)SELECT*FROM教師ORDERBY教師編號COMPUTEAVG(工資),SUM(工資)BY教師編號COMPUTEAVG(工資),SUM(工資)SELECT*FROM學生ORDERBY姓名COMPUTEAVG(平均成績),SUM(平均成績)BY姓名COMPUTEAVG(平均成績),SUM(平均成績)--(44)SELECT*FROM教師ORDERBY教師編號COMPUTECOUNT(姓名),AVG(工資),SUM(工資)--(45)SELECT*FROM教師ORDERBY教師編號COMPUTECOUNT(姓名),AVG(工資),SUM(工資)BY教師編號實驗數(shù)據(jù)、結(jié)果分析、總結(jié)問題:通過實驗,學會使用SQLSELECT的數(shù)據(jù)查詢操作,對左連接、右連接、內(nèi)連接全連接的掌握,對簡單嵌套查詢、條件查詢等等各種查詢的練習的基本熟悉,同時也對SQLSELECT查詢命令的基本框架的熟悉與理解。讓自己的能力有了更好的提升。實驗日期:2013年11月7日實驗5名稱:視圖的建議和應(yīng)用。實驗內(nèi)容:在實驗2和實驗3的基礎(chǔ)上定義視圖,并在視圖上完成查詢以及插入、更新和刪除操作。二、實驗目的:掌握視圖定義和應(yīng)用的方法,體會視圖和基本表的異同之處。三.、實驗方法〔或程序源代碼〕:在實驗2和實驗3的基礎(chǔ)用CREATEVIEW命令定義視圖,然后使用SELECT命令完成查詢,使用INSERTUPDATE和DELETE命令分別完成插入、更新和刪除操作。程序源代碼:--(1)建立查詢教師編號,工資,性別的教師視圖表CREATEVIEW教師視圖ASSELECT教師編號,工資,性別FROM教師--(2)建立查詢工資的教師視圖表CREATEVIEW教師視圖2ASSELECT工資FROM教師where工資>=1000--(3)建立查詢工資大于1000的教師編號,性別,工資的教師視圖表CREATEVIEW教師視圖3ASSELECT教師編號,性別,工資FROM教師where工資>=1000--(4)建立教師與課程視圖CREATEVIEW教師與課程視圖ASSELECT教師編號,工資,性別,課程名稱,課程編號,責任教師FROM教師JOIN課程ON教師編號=責任教師--(5)建立學生與選課視圖CREATEVIEW學生與選課視圖ASSELECT姓名,院系,生源FROM學生WHERE學號IN(SELECT學號FROM選課WHERE成績>=80)--(6)建立教師視圖4(教師編號,工資,性別,年工資)CREATEVIEW教師視圖4(教師編號,工資,性別,年工資)ASSELECT教師編號,工資,性別,工資*12FROM教師--2--(1)查詢教師視圖的COUNT(*),AVG(工資)SELECTCOUNT(*),AVG(工資)FROM教師視圖--(2)查詢教師視圖2的工資SELECT工資FROMJG.教師視圖2ORDERBY工資DESC--(3)查詢教師視圖3的工資大于9000的并按工資升序排序SELECT工資FROMJG.教師視圖3WHERE工資>9000ORDERBY工資DESC--(4)查詢學生與選課視圖學生平均成績等于89的學生姓名SELECT姓名FROM學生與選課視圖WHERE院系=(SELECT院系FROM學生WHERE平均成績=89)--(5)查詢學生與選課視圖學生平均成績等于89的學生姓名SELECT姓名FROM學生與選課視圖WHERE院系in(SELECT院系FROM學生WHERE平均成績=89)--(6)查詢學生的生源,姓名SELECT學生與選課視圖.生源,學生與選課視圖.姓名FROM學生與選課視圖JOIN學生ON學生與選課視圖.院系=XS.院系--3--(1)在教師視圖3插入操作INSERTINTO教師視圖3VALUES('20111115','030','梁海秋','女','講師','英語','5300')--(2)在教師視圖進展更新操作UPDATE教師視圖.教師編號,教師視圖.工資,教師視圖.性別SET教師編號,工資,性別,職稱實驗數(shù)據(jù)、結(jié)果分析、總結(jié)問題:在本實驗上,基于對單個表按投影、選擇、選擇和投影、根據(jù)鏈接、根據(jù)嵌套查詢操作定義視圖的基本熟悉,明白了SQLSELECT查詢是CREATEVIEW,而對于基本的命令格式也已經(jīng)掌握,使用起來還是出現(xiàn)了一些命令未完成。實驗日期:2013年11月14日實驗7名稱:存儲過程的設(shè)計和使用。實驗內(nèi)容:在SQLServer環(huán)境下設(shè)計、創(chuàng)立并執(zhí)行存儲過程。實驗目的:理解和掌握數(shù)據(jù)庫存儲過程的創(chuàng)立和調(diào)用方法。三.、實驗方法〔或程序源代碼〕:在SQLServer環(huán)境下按要求創(chuàng)立和調(diào)用存儲過程完成指定的操作。程序源代碼:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論