數(shù)據(jù)庫(kù)原理及應(yīng)用書(shū)后上機(jī)實(shí)驗(yàn)答案_第1頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用書(shū)后上機(jī)實(shí)驗(yàn)答案_第2頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用書(shū)后上機(jī)實(shí)驗(yàn)答案_第3頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用書(shū)后上機(jī)實(shí)驗(yàn)答案_第4頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用書(shū)后上機(jī)實(shí)驗(yàn)答案_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)據(jù)庫(kù)原理及應(yīng)用崔巍_書(shū)后上機(jī)實(shí)驗(yàn)程序源代碼:-1CREATE DATABASE test1ON (NAME=test1_dat,  FILENAME='f:DBdatatest1dat.mdf',  SIZE= 10,  MAXSIZE= 50,  FILEGROWTH= 5 )LOG ON(NAME=order_log,  FILENAME='f:DBdatatest1log.ldf',  SIZE=

2、 5MB,  MAXSIZE= 25MB,  FILEGROWTH= 5MB) -2create database test2onprimary(name=test2_dat1,filename='f:DBdatatest2dat1.mdf'),(name=test2_dat2,filename='f:DBdatatest2dat2.ndf'),(name=test2_dat3,filename='f:DBdatatest2dat3.ndf')log on(name=

3、test2_log1,filename='f:DBdatatest2log1.ldf'),(name=test2_log2,filename='f:DBdatatest2log2.ldf')-3create database test3onprimary(name=test3_dat1,filename='f:DBdatatest3dat1.mdf'),(name=test3_dat2,filename='f:DBdatatest3dat2.mdf'),filegroupg2(name=test3_dat3,f

4、ilename='d:DBdatatest3dat3.ndf'),(name=test3_dat4,filename='d:DBdatatest3dat4.ndf'),filegroupg3(name=test3_dat5,filename='e:DBdatatest3dat5.ndf'),(name=test3_dat6,filename='e:DBdatatest3dat6.ndf')log on(name=test3_log,filename='f:DBdatatest3log.ldf')-4alt

5、er database test1add file(name=test1new_dat,filename='f:DBdatatest1newdat.ndf',size=5MB)-5alter database test1modify file(name=test1_dat,size=15MB)-6dropdatabasetest3四、實(shí)驗(yàn)數(shù)據(jù)、結(jié)果分析:若沒(méi)有指定size,則默認(rèn)為1MB,沒(méi)有指定Maxsize,文件可以增長(zhǎng)到磁盤(pán)滿為止,沒(méi)有指定Filegrowth,則默認(rèn)為10%。五、總結(jié):CREATE DATABA

6、SE dataname 創(chuàng)建數(shù)據(jù)庫(kù)ALTER DATABASE database 修改數(shù)據(jù)庫(kù)DROP DATABASE dataname 刪除數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)系統(tǒng)及應(yīng)用 上機(jī)實(shí)驗(yàn)報(bào)告2一、實(shí)驗(yàn)?zāi)康模赫莆毡砗退饕慕⒎椒氨斫Y(jié)構(gòu)的修改方法,并實(shí)踐DBMS提供的數(shù)據(jù)完整性功能,加深對(duì)數(shù)據(jù)完整性的理解。二、實(shí)驗(yàn)內(nèi)容:建立表,修改表結(jié)構(gòu),建立索引,數(shù)據(jù)完整性描述。三.、程序源代碼: create database 訂單管理 create table  客戶(hù)(客戶(hù)號(hào)  char(8)  prima

7、ry  key  check(客戶(hù)號(hào)  like  'A-z%'),客戶(hù)名稱(chēng)  varchar(40)  not  null,聯(lián)系人  char(8),地址  varchar(40),郵政編碼  char(6)  check(郵政編碼  like  '0-90-90-90-90-90-9'),電話  char(12)  check(電話  like  '10-90-90-90-90-90

8、-90-90-90-90-90-9') create  table   產(chǎn)品(產(chǎn)品號(hào)  char(8)  primary  key  check(產(chǎn)品號(hào)  like  'A-ZA-Z%'),產(chǎn)品名稱(chēng)  varchar(40),規(guī)格說(shuō)明  char(40)  constraint  uni  unique,單價(jià)  smallmoney  constraint  dj  check(單價(jià)

9、>0) create  table 訂購(gòu)單(客戶(hù)號(hào)  char(8)  not  null  foreign  key  references 客戶(hù),訂單號(hào)  char(8)  primary  key,訂購(gòu)日期  datetime  default  getdate() create  table 訂單名細(xì)(訂單號(hào)  char(8)  foreign  key 

10、0;references 訂購(gòu)單,序號(hào)  tinyint,產(chǎn)品號(hào)  char(8)  not  null  foreign  key  references 產(chǎn)品,數(shù)量  smallitn  constraint  sl  check(數(shù)量>0),primarykey(訂單號(hào),序號(hào)) -修改產(chǎn)品表-1alter  table 產(chǎn)品drop constraint  unialter  table

11、0;產(chǎn)品alter column 規(guī)格說(shuō)明  varchar(40)alter  table 產(chǎn)品add  constraint  uni  unique (規(guī)格說(shuō)明)-2alter  table 訂購(gòu)單  add   完成日期  datetime  default  null-3alter  table 訂單名細(xì)  drop  constraint  slalter 

12、0;table 訂單名細(xì)  add  constraint  sl  check(數(shù)量>0 and 數(shù)量<1000)-建立索引-1create  index  cus_idx  on 客戶(hù)(客戶(hù)名稱(chēng))-2create unique  index   gdn_nui  on 產(chǎn)品(產(chǎn)品名稱(chēng))-3  創(chuàng)建表時(shí),primary key 隱式地創(chuàng)建了聚集索引,而一個(gè)表中只能有一個(gè)聚集索引。create

13、 clustered  index   oid_clus  on 訂購(gòu)單(訂單號(hào))    -失敗-4create  index   item_idx   on 訂單名細(xì)(訂單號(hào),序號(hào),數(shù)量  desc)數(shù)據(jù)庫(kù)系統(tǒng)及應(yīng)用 上機(jī)實(shí)驗(yàn)報(bào)告3一、實(shí)驗(yàn)?zāi)康模簽閷?shí)驗(yàn)2建立的表設(shè)計(jì)一組數(shù)據(jù)進(jìn)行插入、刪除、修改等操作,并體會(huì)數(shù)據(jù)完整性約束的作用,加深對(duì)數(shù)據(jù)完整性及其約束的理解。二、實(shí)驗(yàn)內(nèi)容:數(shù)據(jù)的插入、更新和刪除。三.、程序源代碼: -1、部分記錄in

14、sert into 客戶(hù) values('C001','A公司','小明','北京','123456','143567568457')insert into 客戶(hù) values('C002','B公司','小李','上海','234567','146389045634')insert into 客戶(hù)(客戶(hù)號(hào),客戶(hù)名稱(chēng))

15、0;values('C009','J商場(chǎng)') insert into 產(chǎn)品 values('GD001','iphone','4s',5000)insert into 產(chǎn)品 values('GD002','ipad','2g',5500)insert into 產(chǎn)品(產(chǎn)品號(hào),產(chǎn)品名稱(chēng)) values('GD010','Mac Pro')&

16、#160;insert into 訂購(gòu)單(客戶(hù)號(hào),訂單號(hào)) values('C001','or01')insert into 訂購(gòu)單(客戶(hù)號(hào),訂單號(hào)) values('C001','or02')insert into 訂購(gòu)單(訂單號(hào)) values('or19') insert into 訂單名細(xì)  values('or01','1','GD001

17、','4')insert into 訂單名細(xì)  values('or01','2','GD001','3')insert into 訂單名細(xì)  values('or01','3','GD002','6')insert into 訂單名細(xì)(訂單號(hào),序號(hào),產(chǎn)品號(hào)) values('or14','28','GD006

18、9;)-2delete from 客戶(hù) where 客戶(hù)號(hào)='C001' -受參照完整性約束delete from訂購(gòu)單 where 訂單號(hào)='or01'  -受參照完整性約束-3update 訂購(gòu)單 set 訂單號(hào)=null where 客戶(hù)號(hào)='C001'  -受實(shí)體完整性約束update 訂購(gòu)單 set 客戶(hù)號(hào)='C011'&#

19、160;where 訂單號(hào)='or04'-受參照完整性約束update 訂購(gòu)單 set 客戶(hù)號(hào)='C009' where 訂單號(hào)='or07'  -更新成功update 訂單名細(xì) set 數(shù)量=0  where序號(hào)='9' -受用戶(hù)定義完整性約束-4update 訂單名細(xì) set 數(shù)量=數(shù)量+10from 訂購(gòu)單where 訂購(gòu)單.訂單號(hào)=訂單名細(xì).訂單

20、號(hào) and 客戶(hù)號(hào)='C002'-5delete from 訂單名細(xì)from 訂購(gòu)單where 訂購(gòu)單.訂單號(hào)=訂單名細(xì).訂單號(hào) and 客戶(hù)號(hào)='C002'四、實(shí)驗(yàn)數(shù)據(jù)、結(jié)果分析:-2在刪除客戶(hù)號(hào)為“C002”的記錄時(shí)無(wú)法刪除,因?yàn)榭蛻?hù)表被訂購(gòu)單表參照。刪除訂購(gòu)單號(hào)為“or01”的記錄時(shí)無(wú)法刪除,因?yàn)橛唵蚊?xì)表參照訂購(gòu)單表。-3第一個(gè)更新根據(jù)實(shí)體完整性約束,訂單號(hào)是主關(guān)鍵字,不能為空值。第二個(gè)更新根據(jù)參照完整性約束,訂購(gòu)單表參照客戶(hù)表,而客戶(hù)表中沒(méi)有客戶(hù)號(hào)為“C011”的客戶(hù)。第四

21、個(gè)更新根據(jù)用戶(hù)定義完整性約束,數(shù)量必須為正整數(shù)。-4使客戶(hù)號(hào)為C002的訂購(gòu)單的訂購(gòu)數(shù)量增加10.-5刪掉客戶(hù)號(hào)為C002的訂單名細(xì)記錄。五、總結(jié):插入:INSERT INTO <表名>(<列名>,<列名>)values(<表達(dá)式>,<表達(dá)式>)  更新:update <表名> set <列名>=<表達(dá)式>,<列名>=<表達(dá)式>from<表名> where<邏輯表達(dá)式>刪除:DELETE FROM <表名>FROM &l

22、t;表名>WHERE <邏輯表達(dá)式>完整性約束影響插入、更新和刪除等操作數(shù)據(jù)庫(kù)系統(tǒng)及應(yīng)用 上機(jī)實(shí)驗(yàn)報(bào)告4一、實(shí)驗(yàn)?zāi)康模菏炀氄莆誗QL SELECT語(yǔ)句,能夠運(yùn)用該語(yǔ)句完成各種查詢(xún)。二、實(shí)驗(yàn)內(nèi)容:用SQL SELECT語(yǔ)句完成各種數(shù)據(jù)查詢(xún)。三.、程序源代碼:-1select * from 客戶(hù)-2select 客戶(hù)號(hào) from 訂購(gòu)單-3select * from 產(chǎn)品 where 單價(jià)>=5000-4select * from 產(chǎn)品 where 單價(jià)>5000 and 產(chǎn)品名稱(chēng)='Macbook'-5select * from 產(chǎn)品 where 單

23、價(jià)>6000 and 產(chǎn)品名稱(chēng) in('Macbook','ipad')-6select c.客戶(hù)名稱(chēng),c.聯(lián)系人,c.電話,o.訂單號(hào)from 客戶(hù) c,訂購(gòu)單 owhere o.訂購(gòu)日期 between '2011-10-30' and '2011-12-1'and c.客戶(hù)號(hào)=o.客戶(hù)號(hào) -7select distinct 客戶(hù)名稱(chēng),聯(lián)系人,電話from 客戶(hù) c,產(chǎn)品 g,訂購(gòu)單 o,訂單名細(xì) dwhere 產(chǎn)品名稱(chēng)='iphone'and g.產(chǎn)品號(hào)=d.產(chǎn)品號(hào)and d.訂單號(hào)=o.訂單

24、號(hào)and o.客戶(hù)號(hào)=c.客戶(hù)號(hào)-8select * from 訂單名細(xì)where 產(chǎn)品號(hào) in(select 產(chǎn)品號(hào)from 產(chǎn)品where 產(chǎn)品名稱(chēng)='Macbook')-9select * from 訂購(gòu)單where 訂單號(hào) in(select 訂單號(hào)from 訂單名細(xì)where 數(shù)量>10)-10select * from 產(chǎn)品 where 單價(jià) =(select 單價(jià) from 產(chǎn)品 where 規(guī)格說(shuō)明='4s')-11select * from 產(chǎn)品 where 單價(jià) between 1000 and 5000-12select * from

25、 客戶(hù) where 客戶(hù)名稱(chēng) like '%集團(tuán)'-13select * from 客戶(hù) where 客戶(hù)名稱(chēng) not like '%商場(chǎng)'-14select * from 產(chǎn)品 order by 單價(jià)-15select *from 產(chǎn)品order by 產(chǎn)品名稱(chēng),單價(jià)-16select COUNT(產(chǎn)品號(hào))from 產(chǎn)品-17select SUM(數(shù)量)from 訂單名細(xì)where 產(chǎn)品號(hào)=(select 產(chǎn)品號(hào)from 產(chǎn)品where 產(chǎn)品名稱(chēng)='ipad')-18select SUM(數(shù)量*單價(jià)) 總金額from 產(chǎn)品,訂單名細(xì)where

26、產(chǎn)品.產(chǎn)品號(hào)=訂單名細(xì).產(chǎn)品號(hào)and 產(chǎn)品名稱(chēng)='ipod nano'-19select COUNT(distinct 訂單號(hào))as 訂購(gòu)單個(gè)數(shù),AVG(數(shù)量*單價(jià))as 平均金額from 產(chǎn)品,訂單名細(xì)where 產(chǎn)品.產(chǎn)品號(hào)=訂單名細(xì).產(chǎn)品號(hào)-20select 訂單號(hào),COUNT(訂單號(hào)) 項(xiàng)目數(shù),SUM(g.單價(jià)*o.數(shù)量) 總金額from 產(chǎn)品 g,訂單名細(xì) owhere g.產(chǎn)品號(hào)=o.產(chǎn)品號(hào)group by 訂單號(hào)-21select i.訂單號(hào),MAX(數(shù)量*單價(jià)) 最高金額,MIN(數(shù)量*單價(jià)) 最低金額from 訂購(gòu)單 o,產(chǎn)品 g,訂單名細(xì) iwhere o.

27、訂單號(hào)=i.訂單號(hào)and g.產(chǎn)品號(hào)=i.產(chǎn)品號(hào)and 產(chǎn)品名稱(chēng)='iphone'group by i.訂單號(hào)-22select 訂單號(hào),COUNT(*) 項(xiàng)目數(shù),AVG(數(shù)量*單價(jià)) 平均金額from 產(chǎn)品 g,訂單名細(xì) iwhere g.產(chǎn)品號(hào)=i.產(chǎn)品號(hào)group by 訂單號(hào)having COUNT(*)>=2-23select 客戶(hù)名稱(chēng),聯(lián)系人,電話,訂單號(hào)from 客戶(hù) c,訂購(gòu)單 owhere c.客戶(hù)號(hào)=o.客戶(hù)號(hào)and 訂購(gòu)日期 is null-24select 客戶(hù)名稱(chēng),聯(lián)系人,電話,訂單號(hào),訂購(gòu)日期from 客戶(hù),訂購(gòu)單where 客戶(hù).客戶(hù)號(hào)=訂購(gòu)

28、單.客戶(hù)號(hào)and 訂購(gòu)日期>'2011-10-10'-25select *from 產(chǎn)品 outawhere 單價(jià)=(select MAX(單價(jià))from 產(chǎn)品 innerawhere outa.產(chǎn)品名稱(chēng)=innera.產(chǎn)品名稱(chēng))-26select 客戶(hù)號(hào)from 客戶(hù)where not exists(select *from 訂購(gòu)單where 客戶(hù).客戶(hù)號(hào)=訂購(gòu)單.客戶(hù)號(hào))-27select *from 客戶(hù)where exists(select *from 訂購(gòu)單where 客戶(hù).客戶(hù)號(hào)=訂購(gòu)單.客戶(hù)號(hào))-28select 產(chǎn)品名稱(chēng)from 產(chǎn)品where 單價(jià)= a

29、ny(select 單價(jià)/2 from 產(chǎn)品)-29select 產(chǎn)品名稱(chēng)from 產(chǎn)品where 單價(jià) >all(select max(單價(jià)) from 產(chǎn)品)-30-crossselect * from 客戶(hù) cross join 訂購(gòu)單where 客戶(hù).客戶(hù)號(hào)=訂購(gòu)單.客戶(hù)號(hào)-innerselect * from 客戶(hù) inner join 訂購(gòu)單on 客戶(hù).客戶(hù)號(hào)=訂購(gòu)單.客戶(hù)號(hào)-leftselect 客戶(hù).*,訂單號(hào),訂購(gòu)日期from 客戶(hù) left join 訂購(gòu)單on 客戶(hù).客戶(hù)號(hào)=訂購(gòu)單.客戶(hù)號(hào)-rightselect 客戶(hù).*,訂單號(hào),訂購(gòu)日期from 客戶(hù)

30、right join 訂購(gòu)單on 客戶(hù).客戶(hù)號(hào)=訂購(gòu)單.客戶(hù)號(hào)-fullselect 客戶(hù).*,訂單號(hào),訂購(gòu)日期from 客戶(hù) full join 訂購(gòu)單on 客戶(hù).客戶(hù)號(hào)=訂購(gòu)單.客戶(hù)號(hào)數(shù)據(jù)庫(kù)系統(tǒng)及應(yīng)用 上機(jī)實(shí)驗(yàn)報(bào)告5一、實(shí)驗(yàn)?zāi)康模豪斫庖晥D的概念,掌握視圖的使用方法。二、實(shí)驗(yàn)內(nèi)容:定義視圖,并在視圖上完成查詢(xún)、插入、更新和刪除操作。三.、程序源代碼:  -1-1)、基于單個(gè)表按投影操作定義視圖create view v_cus asselect 客戶(hù)號(hào),客戶(hù)名稱(chēng)from 客戶(hù)-使用select * from v_cus-2)、基于單個(gè)表按選擇操作定義視圖create view v_

31、order asselect *from 訂購(gòu)單where 客戶(hù)號(hào)='C001'-使用select * from v_order-3)、基于單個(gè)表按選擇和投影操作定義視圖create view v_cuss asselect 客戶(hù)名稱(chēng),聯(lián)系人,電話from 客戶(hù)where 客戶(hù)號(hào)='C003'-使用select * from v_cuss-4)、基于多個(gè)表根據(jù)連接操作定義視圖create view v_join asselect 客戶(hù).*,訂單號(hào),訂購(gòu)日期from 客戶(hù) join 訂購(gòu)單on 客戶(hù).客戶(hù)號(hào)=訂購(gòu)單.客戶(hù)號(hào)-使用select * from v_jo

32、in-5)、基于多個(gè)表根據(jù)嵌套查詢(xún)定義視圖create view v_item asselect * from 訂單名細(xì)where 產(chǎn)品號(hào) in(select 產(chǎn)品號(hào)from 產(chǎn)品where 產(chǎn)品名稱(chēng)='Macbook')-使用select * from v_item-6)、查定義含有虛字段的視圖create view v_items(訂單號(hào),序號(hào),產(chǎn)品號(hào),數(shù)量,總金額) asselect i.*,i.數(shù)量*g.單價(jià)from 訂單名細(xì) i,產(chǎn)品 gwhere i.產(chǎn)品號(hào)=g.產(chǎn)品號(hào)-使用select * from v_items-2-在視圖上查詢(xún)select * from v_it

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論