《數(shù)據(jù)庫技術及應用》基礎實驗指導

上傳人:仙*** 文檔編號:28074697 上傳時間:2021-08-23 格式:DOC 頁數(shù):48 大小:592.04KB
收藏 版權申訴 舉報 下載
《數(shù)據(jù)庫技術及應用》基礎實驗指導_第1頁
第1頁 / 共48頁
《數(shù)據(jù)庫技術及應用》基礎實驗指導_第2頁
第2頁 / 共48頁
《數(shù)據(jù)庫技術及應用》基礎實驗指導_第3頁
第3頁 / 共48頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《數(shù)據(jù)庫技術及應用》基礎實驗指導》由會員分享,可在線閱讀,更多相關《《數(shù)據(jù)庫技術及應用》基礎實驗指導(48頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、《數(shù)據(jù)庫技術及應用》基礎實驗指導 實驗環(huán)境 1.軟件需求 (1)操作系統(tǒng):Windows 2000 Professional,或者Windows XP (2)數(shù)據(jù)庫管理系統(tǒng):SQL Server2000 (3)應用開發(fā)工具:自選VC++、visual Studio、myEclipse等 (4)其它工具:Word 2.硬件需求 (1)PC機 (2)網(wǎng)絡環(huán)境 基本需求信息 一、對某商場采購銷售管理進行調(diào)研后,得到如下基本需求信息: 該商場有多名工作人員(主要是采購員和銷售員),主要負責從供應商處采購商品,而后將商品銷售給客戶。采購員主要負責根據(jù)商場的銷售情況確定要

2、采購的商品,并與供應商聯(lián)系,簽訂采購單。銷售員主要負責將采購來的商品銷售給客戶,顯然一個客戶一次可能購買多種商品。一個供應商可以向該商場供應多種商品,而一種商品也可以由多個供應商供應。 商場的管理者每個月需要對該月已采購的商品和已銷售的商品進行分類統(tǒng)計,對采購員和銷售員的業(yè)績進行考核,對供應商和客戶進行等級評定,并計算商場利潤。 二、E-R圖 三、需要建立的數(shù)據(jù)表如下 1. 供應商表:供應商ID,供應商名稱,地區(qū),信譽等級 2. 供應表:供應商ID,商品ID,商品單價 3. 商品表:商品ID,商品名稱,商品庫存量,商品均價 4. 采購單表:采購單ID,采購員ID,供應商

3、ID,采購總金額,簽訂日期 5. 采購明細表:采購單ID,商品ID,采購數(shù)量,商品單價 6. 銷售單表:銷售單ID,銷售員ID,客戶ID,銷售總金額,簽訂日期 7. 銷售明細表:銷售ID,商品ID,銷售數(shù)量,商品單價,單價折扣 8. 客戶表:客戶ID,客戶名稱,聯(lián)系電話,客戶等級 9. 職員表:職員ID,職員姓名,職員類型 實驗一SQL Server安裝及管理工具使用 一、實驗目的與要求 1. 熟悉SQL Server的基本安裝與配置過程 2. 熟悉SQL Server企業(yè)管理器的主要功能、對數(shù)據(jù)庫的組織和管理方法 3. 熟悉SQL Server查詢分析器的主要功能、對

4、數(shù)據(jù)庫的組織和管理方法 3.掌握基本表、主碼等基本概念 4.掌握SQL語言的數(shù)據(jù)定義功能,要求能使用企業(yè)管理器和查詢分析器兩種方法來建立數(shù)據(jù)庫、以及數(shù)據(jù)表。 5.掌握修改和刪除表結(jié)構的方法 二、實驗內(nèi)容 1.學習使用SQL Server的基本管理工具:企業(yè)管理器和查詢分析器 2.掌握SQL Server默認安裝的各個數(shù)據(jù)庫的主要作用 (1)master數(shù)據(jù)庫 (2)model數(shù)據(jù)庫 (3)msdb數(shù)據(jù)庫 (4)tempdb數(shù)據(jù)庫 3.使用企業(yè)管理器和查詢分析器建立、刪除數(shù)據(jù)庫 (1)建立一個名稱為supermarket的數(shù)據(jù)庫 (2)查看與新生成的

5、數(shù)據(jù)庫相關的內(nèi)容 (3)刪除名稱為supermarket的數(shù)據(jù)庫 點擊supermarket右鍵,選擇“刪除操作”。 4. 使用企業(yè)管理器和查詢分析器建立、刪除數(shù)據(jù)表 create database supermarket drop database supermarket (1)在已經(jīng)建立的supermarket數(shù)據(jù)庫的基礎上,建立以下數(shù)據(jù)表(參考附錄A): (a)商品表 (b)供應商表 (c)供應表 (d)采購單表 (e)采購明細表 (f)銷售單表 (g)銷售明細表 (h)客戶表 (i)職員表 (2)使用企業(yè)管理器查看新生成表的結(jié)構和內(nèi)

6、容 commodity customer Employee sale saleDetail Stock stockDetail Supplyier supplying (3)分別使用企業(yè)管理器和查詢分析器修改表結(jié)構 (a)在商品表中加入描述商品信息的屬性 a.在企業(yè)管理器下 b.在查詢分析器下 ALTER TABLE commodity ADD characteristics varchar(50) NULL (b)將客戶表中的客戶聯(lián)系電話(CUtelephone)的數(shù)據(jù)類型改為varchar(20) (4)分

7、別使用企業(yè)管理器和查詢分析器刪除基本表 (a)使用企業(yè)管理器刪除客戶表 點擊customer右鍵,點擊刪除操作 (b)使用查詢分析器刪除商品表 drop table customer 三、自我測試 1. 使用企業(yè)管理器新建一個名稱為“test”的數(shù)據(jù)庫 2. 使用查詢分析器在test數(shù)據(jù)庫建立以下數(shù)據(jù)表 (1)學生表:學號,姓名,性別,出生日期,系別 (2)課程表:課程編號,課程名稱,學分 (3)選課表:學號,課程號,成績 create database test create table student ( studentNo char(7) N

8、OT NULL, sname char(20) NULL, sext char(10) NULL, brithday datetime NULL, sDepartment char(20) NULL ) create table course ( courseNo char(10) NOT NULL, cname char(20) NULL, creditHour numeric(1) default 0 NULL ) create table Scourse ( courseNo

9、 char(10) NOT NULL, studentNo char(7) NOT NULL, grade int NULL ) 3. 使用查詢分析器對表進行修改 (1) 將學生表中的性別數(shù)據(jù)類型改為整型 alter table student alter column sext int (2) 為學生表增加一個新的屬性列,用于存放學生的專業(yè)信息 alter table student add professional varchar(50) NULL 實驗二 數(shù)據(jù)插入、修改和刪除 一、實驗目的與要求 1.掌

10、握SQL Server的數(shù)據(jù)更新功能,能使用INSERT、UPDATE、DELETE命令對數(shù)據(jù)表中的數(shù)據(jù)進行更新 2.掌握INSERT…SELECT和SELECT…INTO語句的使用方法 二、實驗內(nèi)容 1.使用INSERT命令向基本表中插入數(shù)據(jù)(參考附錄B) (1)向供應商表中插入如下數(shù)據(jù)記錄: insert into supplier values ( A001,神州數(shù)碼有限公司,北京,1 ) (2)向商品表中插入如下數(shù)據(jù)記錄 (3)向職員表中插入如下數(shù)據(jù)記錄 (4)向供應表中插入如下數(shù)據(jù)記錄 (5)使用企業(yè)管理器分別向客戶表、采購表、采購明

11、細表、銷售表、銷售明細表中添加相應記錄。 客戶表 采購單表 采購明細表 銷售單表 銷售明細表 2.使用UPDATE命令修改基本表中的數(shù)據(jù) 1)將編號為‘F70006’的商品的單價改為12.00元 update supplying set price=12.00 where cid=F70006 (2)將名稱為‘家樂福’的客戶的等級改為VIP客戶。 update customer set CUlevel=2 where CUname=家福樂 (3) 將編號為‘A102’ 供應商供應商品的價格全部打八折 update saleDet

12、ail set SDdiscount = 0.8 from supplying a, commodity b, saleDetail c where a.Cid=b.Cid and a.Sid=A102 and c.Cid=b.Cid 3.使用DELETE命令刪除基本表中的數(shù)據(jù) (1)刪除采購明細表中的所有記錄 delete from stockDetail (2)從采購單表中刪除2005年以前簽訂的采購單 delete from stock where year(CGdate)<=2005 4.使用SELECT…INTO語句向表中成批插入記錄

13、 (1)將供應商‘A102’供應的商品和供應價格存到一個名字為‘A102_commodity’的表中 create table A102_commodity ( Sid char(10), --供應商ID Cid char(10), --商品ID price float, --商品單價 PRIMARY KEY (Sid,Cid) ) insert into A102_commodity select * from supplying where Sid=A102 (2)將所有的VIP客戶信息存儲到一個名字為‘VIP_Customer’的表中 cre

14、ate table VIP_Customer ( CUid char(10) PRIMARY KEY, --客戶ID CUname char(30), --客戶姓名 CUtelephone char(16), --客戶聯(lián)系電話 CUlevel int --客戶等級:1,普通客戶;2,VIP客戶 ) insert into VIP_Customer select * from customer where CUlevel=2 5.使用INSERT…SELECT語句向表中成批插入記錄 (1)新建一個名稱為‘a(chǎn)chievement’的表,其屬性包括銷售單ID,銷

15、售單總金額,銷售日期 create table achievement ( SAid char(12) PRIMARY KEY, --銷售單ID SAmoney float ,--銷售單總金額 SAdate datetime ,---銷售日期 ) (2)將編號為‘S0002’的銷售員簽訂的銷售單信息存儲到achievement表中。 insert into achievement(SAid,SAmoney,SAdate) select SAid,SAmoney,SAdate from sale where SAid in ( select SAid f

16、rom sale where Eid= S0002) 三、自我測試 1.從采購明細表中刪除所有從供應商‘A153’處采購的編號為‘F70006’商品的明細信息 delete from stockDetail where Cid in(select Cid from stockDetail where Cid=F70006) 2.從銷售明細表中刪除2005年以前簽訂的銷售單的銷售明細記錄 delete from saleDetail where SAid in(select b.SAid from saleDetail a,sale b where a.SAid=b.SAid

17、 and year(SAdate)<2005) 實驗三 單表查詢 一、實驗目的與要求 1.掌握基本的SELECT…FROM語句的用法 2.能應用SELECT語句及其子句解決常見的查詢問題 3.掌握模糊查詢的使用方法 4.能應用聚集函數(shù)和GROUP BY子句進行統(tǒng)計查詢 二、實驗內(nèi)容 1. 查找所有商品的名稱和庫存信息 2. select Cname,Cstorage 3. from commodity 4. 5. 查找‘北京’地區(qū)的供應商 6. select * 7. from supplier 8. where Sarea=北京 9.

18、查找所有銷售人員的基本信息 select * from Employee 10. 查找簽訂日期在‘2005-5-1’和‘2006-3-1’之間簽訂的采購單的基本信息 select * from stock where CGdate between 2005-5-1and2006-3-1 11. 查找2006年簽訂的所有銷售單,要求顯示銷售單ID、供應商ID和銷售單總金額 select SAid,Cuid,SAmoney from sale where year(SAdate)=2006 12. 查找每個采購員所簽訂的采購單的數(shù)目,顯示結(jié)果按采購單數(shù)目降序排

19、序 select Eid,count(Eid)采購單數(shù)目 from stock group by Eid order by count(Eid) desc 13. 查詢每個銷售員簽訂的銷售單總金額 select Eid,sum(SAmoney)銷售單總金額 from sale, group by Eid 14. 查找2005年與每個客戶簽訂的銷售單的總金額,只顯示總金額大于500000萬的客戶ID和總金額 select CUid,sum(SAmoney)銷售單總金額 from sale group by CUid,SAmoney,SAdate having y

20、ear(SAdate)=2005 AND sum(SAmoney)>500000 15. 查詢2005年簽訂的金額最大的一筆銷售單,要求顯示采購員ID、客戶ID和銷售金額 select Eid,CUid,SAmoney from sale where SAmoney in(select max(SAmoney) from sale where year(SAdate)=2005 ) 10. 查詢2005年與編號為‘A002’的供應商簽訂的所有采購單的總金額 select Sid,sum(CGmoney) from stock where year(CGdate)=

21、2005 AND Sid=A002 group by Sid 11. 查詢名稱中含有‘機’字的所有商品的ID、名稱和庫存量 select Cid,Cname,Cstorage from commodity where Cname like%機% 12. 查找第二個漢字是‘翔’的商品名稱和單價。 select Cname,price from supplying a,commodity b where a.Cid=b.Cid and Cname like _翔% 三、自我測試 1.查詢2005年簽訂的銷售合同總額排名前5名的銷售員的ID和合同總額,要求結(jié)

22、果按照合同總額降序排列 select top 5 Eid銷售員ID,sum(SAmoney)合同總額 from sale where year(SAdate)=2005 group by Eid order by sum(SAmoney)desc 2.查詢至少供應了3種商品的供應商的ID select Sid, count(cid)商品種數(shù) from stockDetail a ,stock b where a.CGid=b.CGid group by a.CGid ,Sid having count(Cid)>=3 4. 查詢在2006

23、年至少已經(jīng)與2名銷售員簽訂了合同的客戶ID select CUid,count(SAid)簽訂合同次數(shù) from sale WHERE year(SAdate)=2006 GROUP BY CUid having count(SAid)>=2 實驗四 表連接查詢 一、實驗目的與要求 1.掌握表連接查詢的使用方法 2.掌握子查詢的使用方法 3.能使用內(nèi)連接、左外連接、右外連接以及交叉連接解決相關問題 4.熟悉系統(tǒng)函數(shù)的使用 二、實驗內(nèi)容 1.查找每一個供應商供應的商品的名稱,要求顯示供應商名稱和商品名稱。 select Sid,Cname from s

24、upplying a ,commodity b where a.Cid=b.Cid 2.使用連接查詢查找與姓名為‘李云’的采購員簽訂采購單的供應商的名稱。 select Sname from stock a ,supplier b,Employee c where a.Sid=b.Sid and a.Eid=c.Eid and Ename=李云 3.使用關鍵字IN完成查詢,要求查找與姓名為‘李云’的采購員簽訂采購單的供應商的名稱。 select Sname from supplier where Sname in ( select Sname from st

25、ock a ,supplier b,Employee c where a.Sid=b.Sid and a.Eid=c.Eid and Ename=李云 ) 4.使用左外連接完成如下查詢:要求查找所有采購員簽訂的采購合同的詳細信息。 select a.Eid,CGid,Sid,CGmoney,CGdate from Employee a left join stock b on a.Eid=b.Eid where Etype=2 5.使用左外連接完成如下查詢:查找所有客戶購買的商品詳細信息,要求顯示客戶名稱, 商品名稱,銷售數(shù)量,商品單價,沒有購買商品的客戶

26、也要顯示。 6.請使用內(nèi)連接完成如下查詢:查找每一個供應商供應的商品的種類,要求顯示供應商名稱,供應的商品的種類。 7.查找購買了編號為‘A001’的供應商供應的商品的客戶名稱 select CUname from supplying b,commodity c,saleDetail d,sale e,customer f where b.Cid=c.Cid and c.Cid=d.Cid and d.SAid=e.SAid and e.CUid=f.CUid and b.Sid=A002 8.查找銷售員‘王良’在2005年簽訂的銷售合同的詳細信息。

27、 select c.SAid,Cid,SDnumber,SDprice,SDdiscount from Employee a ,sale b,saleDetail c where a.Eid=b.Eid and b.SAid=c.SAid and Ename=王良and year(SAdate)=2005 三、自我測試 1.使用右外連接完成如下查詢:要求查找所有采購員簽訂的采購合同的詳細信息,沒有簽訂采購單的采購員也要顯示 2.查找購買了名稱為‘聯(lián)想集團’的供應商供應的商品的客戶名稱 select distinct a.Sname,CUname from supplier

28、 a ,supplying b,commodity c,saleDetail d,sale e,customer f where a.Sid=b.Sid and b.Cid=c.Cid and c.Cid=d.Cid and d.SAid=e.SAid and e.CUid=f.CUid and a.Sname=聯(lián)想集團 實驗五 表綜合查詢使用 一、實驗目的與要求 1.能熟練應用SELECT語句及其相關字句 2.能將SELECT與系統(tǒng)函數(shù)、IF ELSE、WHILE等語句進行綜合應用并解決相關問題 二、實驗內(nèi)容 1.查詢所有供應‘鮮橙多’的供應商的最低報價。

29、select Cname,MIN(price)最低報價 from supplying a,commodity b where a.Cid=b.Cid and Cname=鮮橙多 group by a.Cid,Cname 2.查找銷售員‘王良’在2005年簽訂的所有銷售合同中每一類商品的總金額。 select distinct sum(SAmoney)同一類商品總金額,c.Eid,e.Cname from saleDetail a,sale b,Employee c,commodity e where a.SAid=b.SAid and c.Eid=b.Eid and e.Ci

30、d=a.Cid and Ename=王良and year(SAdate)=2005 group by a.Cid,c.Eid,e.Cname 3.匯總由姓名為‘劉明’的采購員在2005年采購的‘數(shù)碼相機’的總金額。 select b.Ename,d.Cname,sum(CGmoney)總金額 from stock a,Employee b,stockDetail c,Commodity d where a.Eid=b.Eid and c.Cid=d.Cid and a.CGid=c.CGid and year(CGdate)=2005 and Ename=劉明and Cnam

31、e=數(shù)碼相機 group by b.Ename,d.Cname 5. 匯總由姓名為‘劉明’的采購員在2005年采購的各類商品的數(shù)量。 select Ename,SDnumber from Employee a,stockDetail b,stock c where a.Eid=c.Eid and b.CGid=c.CGid and year(CGdate)=2005 and Ename=劉明 group by SDnumber, Ename 6. 查找沒有供應任何一類商品的供應商的名字。 select Sname from supplier a where not

32、 exists ( select a.Sid from supplying b where a.Sid=b.Sid ) 7. 查找在2006年各個客戶購買商品的總金額,要求結(jié)果按照購買商品的總金額降序排序 select b.CUid,sum(SAmoney)購買總金額 from sale a,customer b where a.CUid=b.CUid and year(SAdate)=2006 group by b.CUid order by sum(SAmoney)desc 8. 請使用左連接完成以下查詢:查找每一個銷售人員銷售的商品的詳細信息,要求顯示銷

33、售人員姓名、銷售單ID、客戶姓名、商品名稱、銷售數(shù)量、和銷售單價。 8.查找每個采購員和每個供應商簽訂的合同的總金額,要求顯示采購員姓名、供應商名稱、和簽訂合同的總金額。 三、自我測試 1.查找編號為‘A002’的供應商沒有供應的商品的名稱 select Cname from supplying a,commodity b where a.Cid=b.Cid and Cname not in (select Cname from commodity x,supplying y where x.Cid=y.Cid and Sid=A00

34、2) 2.分別使用UNION、和INNER JOIN關鍵字完成以下查詢:查詢由‘三高計算機公司’和‘聯(lián)想集團’供應商的所有商品的商品ID。 select Cid from supplier a,supplying b where Sname=三高計算機公司and a.Sid=b.Sid union select Cid from supplier a,supplying b where Sname=聯(lián)想集團and a.Sid=b.Sid 實驗六 視 圖 一、實驗目的與要求 1.熟悉視圖的概念,以及視圖與表的聯(lián)系和區(qū)別 2.掌握視圖的定義方法 3.掌握對視圖

35、的查詢操作 4.掌握對視圖的更新操作,并了解視圖的更新條件 5.掌握同時對視圖和表進行操作的方法 二、實驗內(nèi)容 1.定義一個名稱為‘supplying_view’的視圖,要求其對應的數(shù)據(jù)是由‘天天食品公司’供應的商品ID、商品單價。 create view supplying_view as select Sname,Cid,price from supplier a,supplying b where Sname=天天食品公司 select* from supplying_view 2.查詢采購員‘李云’和供應商‘天天食品公司’簽訂的所有采購

36、單的采購單ID、采購金額、簽訂日期,并將其建立為一個名稱為‘stock_view_1’的視圖。 create view stock_view_1 as select Ename,Sname,b.CGid,CGmoney,CGdate from stock a,stockDetail b,Employee c,supplier d where a.CGid=b.CGid and a.Sid=d.Sid and a.Eid=c.Eid and Ename=李云 and Sname=天天食品公司 select * from stock_view_1 3.建立一個

37、名稱為‘commodity_100’的視圖,其對應所有的庫存量小于100的商品的信息。 create view commodity_100 as select * from commodity where Cstorage<100 select * from commodity_100 4.使用視圖supplying_view和相關基本表查找由供應商‘天天食品公司’供應的商品ID、商品名稱和商品單價。 select b.Cid,price,Cname from supplying_view a,commodity b where a.Cid=b.Cid

38、 5.使用視圖‘stock_view_1’和相關基本表查詢‘李云’和供應商‘神州數(shù)碼有限公司’簽訂的所有采購單的采購明細信息,要求顯示采購單ID、商品ID、商品名稱、采購數(shù)量、和商品單價。 6.使用視圖commodity_100添加一條新的商品信息(HS7990, 華碩筆記本電腦, 30, 7900.00),并總結(jié)在哪些情況下可以對視圖進行更新,在哪些情況下不能對視圖進行更新。 insert into commodity_100 values (HS7990, 華碩筆記本電腦, 30, 7900.00) select * from commodity_100 總

39、結(jié):當Cstorage屬性值大于100,拒絕該插入操作 三、自我測試 1.建立一個視圖,其對應的數(shù)據(jù)是在2005年簽訂的銷售單總額超過100萬的銷售員的I D和姓名。 create view sale_view as select a.Eid,Ename from Employee a,sale b where a.Eid=b.Eid and year(SAdate)=2005 and SAmoney>1000000 select * from sale_view 2.使用上述建立的視圖和NOT IN關鍵字查詢在2005年簽訂的銷售單總額沒有超過100萬的銷售員的

40、I D和姓名。 select Eid,Ename from Employee where Etype=2 and Eid not in ( select Eid from sale_view ) 實驗七 觸發(fā)器與存儲過程 一、實驗目的與要求 1. 熟悉觸發(fā)器和存儲過程的用途 2. 掌握游標的定義和使用方法 3. 掌握觸發(fā)器和存儲過程的定義以及使用方法 4. 能使用觸發(fā)器和存儲過程解決相關問題 二、實驗內(nèi)容 1.定義一個觸發(fā)器,其主要用于在supplying表中插入一條記錄時,檢查是否該記錄對應的供應商ID和商品ID已經(jīng)存在于供應商表(Supp

41、lier)和商品表(Commodity)中,如果存在就插入,否則不插入。 2.在supplying表中插入一條記錄(M0073, UU505, 1660.0),執(zhí)行該插入語句后,到企業(yè)管理器中查看該條記錄是否已插入,并解釋原因。 3.定義一個觸發(fā)器,其主要用于在supplier表中刪除記錄時,將該供應商供應的所有商品的信息一起刪除。 4.在企業(yè)管理器中查看表supplier和表supplying的當前內(nèi)容,在查詢分析器中通過SQL語句刪除表supplier的一條記錄,例如(A102, 聯(lián)想集團, 北京, 1),再次通過企業(yè)管理器查看表supplier和表supplying的內(nèi)

42、容,看是否有所變化,解釋變化的原因。 5.分別在查詢分析器中執(zhí)行系統(tǒng)存儲過程sp_databases和sp_tables,解釋這兩個存儲過程的作用。 6.創(chuàng)建一個存儲過程,其根據(jù)指定的客戶ID來返回該客戶在2006年簽訂的所有銷售單的明細情況。并使用該存儲過程查詢編號為‘KB001’的客戶在2006年簽訂的所有銷售單的明細情況。 三、自我測試 1.定義一個觸發(fā)器,用于當supplier表中某個供應商的ID(SID)被修改后,將供應表(supplying)和采購單表(stock)中對應的供應商ID也修改過來。修改supplier表中編號為‘A001’的供應商ID為‘BMW

43、01’,查看供應表和采購單表中相應記錄的變化。 create trigger k00dupt on supplier for update as if update(Sid) begin declare @Sid char(10) declare cur_supplier cursor for select Sid from Deleted open cur_supplier begin transaction fetch cur_s

44、upplier into @Sid while(@@fetch_status=0) begin update supplying set supplying.Sid=I.Sid from Inserted I,Deleted D where D.Sid=supplying.Sid fetch cur_supplier into @Sid

45、 update stock set stock.Sid=I.Sid from Inserted I,Deleted D where D.Sid=stock.Sid fetch cur_supplier into @Sid end commit tran close cur_supplier deallocate cu

46、r_supplier end 2.創(chuàng)建一個存儲過程,其根據(jù)指定的客戶名稱來返回該客戶在2006年簽訂的所有銷售單的總金額。并使用該存儲過程查詢編號為‘KB002’的客戶在2006年簽訂的所有銷售單的總金額。 create procedure procedure_customer(@CUid char(30),@SAccount float output) as begin select @SAccount=sum(SAmoney) from sale where CUid=@CUid and year(SAdate

47、)=2006 -- group by CUid end declare @SAccount float execute procedure_customer KB002 , @SAccount output select @SAccount 實驗九 SQLServer服務器配置與安全管理 一、實驗目的與要求 1.掌握SQL Server服務器的基本配置方式 2.能使用企業(yè)管理器進行鏈接服務器的配置,并能進行初步地分布式查詢 3.熟悉SQL Server安全機制, 配置SQL Server的身份驗證模式 4.掌握角色、登錄、

48、用戶、許可權限等概念,并能利用企業(yè)管理器進行建立以及角色地分配 二、實驗內(nèi)容 1. 注冊SQL Server服務器 48 圖9-1 2. 設置SQL Server服務器的基本屬性 圖9-2 3. 使用SQL Server服務器與客戶端網(wǎng)絡使用工具配置客戶端和服務器端的網(wǎng)絡協(xié)議 圖 9-3 4. 使用企業(yè)管理器配置鏈接服務器并在查詢分析器中進行分布式查詢 圖9-4 5.為SQL Server服務器創(chuàng)建新的登錄,并為之分配相應的數(shù)據(jù)庫角色和數(shù)據(jù)庫訪問權限 圖9-6 6.為Supermarket數(shù)據(jù)庫創(chuàng)建新的數(shù)據(jù)庫角色,并設置相應的許可權限

49、 圖9-7 7.為supermarket數(shù)據(jù)庫定義新的數(shù)據(jù)庫用戶,并為之指定登錄名、數(shù)據(jù)庫角色和許可權限 圖9-8 三、自我測試 1.使用新創(chuàng)建的登錄,通過查詢分析器登錄到SQL Server服務器上,在查詢分析器上進行相應地操作以驗證許可權限分配的情況。 實驗十 數(shù)據(jù)庫備份與恢復 一、實驗目的與要求 1. 了解數(shù)據(jù)庫備份與恢復的作用 2. 掌握數(shù)據(jù)庫備份與恢復的類型與方法 3. 學習使用企業(yè)管理器進行數(shù)據(jù)庫的完全備份、差異備份以及日志備份 4. 掌握數(shù)據(jù)庫還原和恢復的區(qū)別 5. 學習使用已有的數(shù)據(jù)庫備份和日志備份對數(shù)據(jù)庫進行恢復 5.初步掌握使用查詢分

50、析器進行數(shù)據(jù)庫備份和恢復的方法 二、實驗內(nèi)容 1.使用企業(yè)管理進行supermarket數(shù)據(jù)庫的完全備份 2.使用企業(yè)管理器進行supermarket數(shù)據(jù)庫的差異備份 3.使用剛建立的supermarket數(shù)據(jù)庫的完全備份和差異備份進行數(shù)據(jù)庫的還原和恢復 三、自我測試 1. 稍微修改supermarket數(shù)據(jù)庫中的內(nèi)容,使用企業(yè)管理器建立supermarket數(shù)據(jù)庫的完全備份和日志備份,并使用它們進行數(shù)據(jù)庫恢復。 2.在查詢分析器中使用命令進行簡單地數(shù)據(jù)庫備份和恢復。 實驗十一 數(shù)據(jù)傳輸 一、實驗目的與要求 1.了解導入導出數(shù)據(jù)的作用 2.使用DTS工

51、具在不同的數(shù)據(jù)源之間進行數(shù)據(jù)的導入導出 3.掌握bcp等基本工具的使用 二、實驗內(nèi)容 1. 使用DTS將supermarket中的數(shù)據(jù)導入到其它SQL Server數(shù)據(jù)庫中 2. 使用DTS將supermarket中的數(shù)據(jù)導入到Excel表中 3. 使用DTS將supermarket中的數(shù)據(jù)導入到文本文件中 4.使用DTS將外部數(shù)據(jù)源數(shù)據(jù)源導入到SQL Server數(shù)據(jù)庫中 三、自我測試 1. 練習使用bcp實用工具 2. 練習使用BULK INSERT語句 實驗十二 數(shù)據(jù)庫設計與應用實例開發(fā) 一、實驗目的與要求 1. 學習powerde

52、signer /rose等工具的使用,并能使用它進行初步的數(shù)據(jù)庫建模 2. 掌握C/S(B/S)數(shù)據(jù)庫系統(tǒng)的基本開發(fā)流程 二、實驗內(nèi)容 1.使用ERWin對數(shù)據(jù)庫進行建模,并能將ER模型導入到SQL Server2000的數(shù)據(jù)庫中 2.進行系統(tǒng)開發(fā) 三、自我測試 其他可選題目: 1. SQL Server性能優(yōu)化與事件探查器 2. SQL Server代理與自動化管理 3. SQL Server事務設置 附錄A 建表SQL語句 --1供應商表 CREATE TABLE supplier( Sid char(10) PRIMARY

53、KEY, --供應商ID Sname char(30), --供應商名稱 Sarea char(30), --供應商地區(qū) Scredit int --供應商信譽等級:1,良好;2,一般;3,較差 ) --2 供應表 CREATE TABLE supplying( Sid char(10), --供應商ID Cid char(10), --商品ID price float, --商品單價 PRIMARY KEY (Sid,Cid) ) --3 商品表 CREATE TABLE commodity( Cid char(10) PRIMARY K

54、EY, --商品ID Cname char(30), --商品名稱 Cstorage int, --商品庫存量 avgPrice float --商品均價 ) --4 采購單表 CREATE TABLE stock( CGid char(12) PRIMARY KEY, --采購單ID Eid char(6), --采購員ID Sid char(10), --供應商ID CGmoney float, --采購金額 CGdate DateTime --簽訂日期 ) --5 采購明細表 CREATE TABLE stockDetail( CG

55、id char(12), --采購單ID Cid char(10), --商品ID SDnumber int, --采購數(shù)量 SDprice float, --采購單價 PRIMARY KEY(CGid,Cid) ) --6 銷售表 CREATE TABLE sale( SAid char(12) PRIMARY KEY, --銷售單ID Eid char(6), --銷售員ID CUid char(10), --客戶ID SAmoney float, --銷售金額 SAdate DateTIme, --簽訂日期 ) --7 采購明細表

56、 CREATE TABLE saleDetail( SAid char(12), --銷售單ID Cid char(10), --商品ID SDnumber int, --銷售數(shù)量 SDprice float, --銷售單價 SDdiscount float, --折扣 PRIMARY KEY(SAid,Cid) ) --8 客戶表 CREATE TABLE customer( CUid char(10) PRIMARY KEY, --客戶ID CUname char(30), --客戶姓名 CUtelephone char(16), --客戶聯(lián)

57、系電話 CUlevel int --客戶等級:1,普通客戶;2,VIP客戶 ) --9 職員表 CREATE TABLE Employee( Eid char(6) PRIMARY KEY, --職員ID Ename char(8), --職員姓名 Etype int --職員類型:1,管理人員;2,采購人員;3,銷售人員 ) 附錄B 表初始化SQL語句 --1 供應商表 INSERT INTO supplier VALUES (A102,聯(lián)想集團,北京,1) INSERT INTO supplier VALUES (A002,三高計算機公司,上

58、海,1) INSERT INTO supplier VALUES (A106,瑪永制衣公司,廣州,2) INSERT INTO supplier VALUES (A153,天天食品公司,南寧,2) INSERT INTO supplier VALUES (A508,統(tǒng)率咨詢公司,武漢,3) INSERT INTO supplier VALUES (A001,神州數(shù)碼有限公司,北京,1) --2 商品表 INSERT INTO commodity VALUES (P0166,天翔PC機,60,5800.00) INSERT INTO com

59、modity VALUES (P9006,路由器,12,18800.00) INSERT INTO commodity VALUES (PR4000,小型機,12,210000.00) INSERT INTO commodity VALUES (H6880,聯(lián)想1088手機,100,2400.00) INSERT INTO commodity VALUES (H6122,數(shù)碼相機,36,3600.00) INSERT INTO commodity VALUES (S2008,財務軟件,10, 8000.00) INSERT INTO commodity

60、 VALUES (F70006,旺旺米餅,200,16.00) INSERT INTO commodity VALUES (F72500,牛奶,1000,46.00) INSERT INTO commodity VALUES (F70109,鮮橙多,600,6.00) --3 供應表 INSERT INTO supplying VALUES (A102,PR4000,210000.0) INSERT INTO supplying VALUES (A102,P9006,18800.00) INSERT INTO supplying VALUES (A10

61、2,P0166,5800.0) INSERT INTO supplying VALUES (A001,H6880,2400.00) INSERT INTO supplying VALUES (A001,H6122,3600.00) INSERT INTO supplying VALUES (A002,S2008,8000.00) INSERT INTO supplying VALUES (A153,F70006,16.00) INSERT INTO supplying VALUES (A153,F72500,46.00) INSERT INTO s

62、upplying VALUES (A153,F70109,6.00) --4 職員表 INSERT INTO employee VALUES(M0001,田明,1) INSERT INTO employee VALUES(G0001,李云,2) INSERT INTO employee VALUES(G0002,劉明,2) INSERT INTO employee VALUES(G0003,張順,2) INSERT INTO employee VALUES(S0001,王良,3) INSERT INTO employee VALUES(S00

63、02,楊成,3) INSERT INTO employee VALUES(S0003,陳君,3) --4 采購單表 INSERT INTO stock VALUES(T20051018,G0001,A153,18000.00,2005-10-18) INSERT INTO stock VALUES(T20040912,G0001,A153,26000.00,2004-9-12) INSERT INTO stock VALUES(T20050501,G0002,A001,2000000.00,2005-5-1) INSERT INTO stock VAL

64、UES(T20060320,G0002,A102,26000000.00,2006-3-20) INSERT INTO stock VALUES(T20060115,G0002,A102,3600000.00,2006-1-15) INSERT INTO stock VALUES(T20040410,G0003,A002,60000.00,2004-4-10) --6 采購明細表 INSERT INTO stockDetail VALUES(T20051018,F70109,400,6.00) INSERT INTO stockDetail VALUES(T2

65、0051018,F72500,650,46.00) INSERT INTO stockDetail VALUES (T20051018,F70006,200,16.00) INSERT INTO stockDetail VALUES(T20040912,F70109,200,6.00) INSERT INTO stockDetail VALUES(T20040912,F72500,350,46.00) INSERT INTO stockDetail VALUES (T20050501,H6880,100,2400.00) INSERT INTO stockDetail VALUES (T20050501,H6122,36,3600.00) INSERT INTO stockDetail VALUES(T20060320,PR4000,12,210000.00) INSERT INTO stockDetail VALUES(T20060115,P0166,60,5800.00) INSERT INTO stoc

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

相關資源

更多
正為您匹配相似的精品文檔
關于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!