(完整版)石油大學(xué)(華東)數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)答案(sql語(yǔ)句)_第1頁(yè)
(完整版)石油大學(xué)(華東)數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)答案(sql語(yǔ)句)_第2頁(yè)
(完整版)石油大學(xué)(華東)數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)答案(sql語(yǔ)句)_第3頁(yè)
(完整版)石油大學(xué)(華東)數(shù)據(jù)庫(kù)原理實(shí)驗(yàn)答案(sql語(yǔ)句)_第4頁(yè)
已閱讀5頁(yè),還剩20頁(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í)驗(yàn)三/*CREATE TABLE UNITNO(單位代碼VARCHAR(20),單位名稱(chēng)VARCHAR(30);CREATE TABLE OILWELL(井號(hào) VARCHAR(20),井別 VARCHAR(20),單位代碼VARCHAR(20),);CREATE TABLE CONSTRUCTIONUNIT(施工單位名稱(chēng)VARCHAR(30);CREATE TABLE GOODSNO(物碼 VARCHAR(20),名稱(chēng)規(guī)格VARCHAR(30),計(jì)量單位VARCHAR(20);CREATE TABLE COST(單據(jù)號(hào) VARCHAR(20),預(yù)算單位VARCHAR(20),井號(hào) VARCH

2、AR(20),預(yù)算金額FLOAT,預(yù)算人 VARCHAR(20),預(yù)算日期DATE,開(kāi)工日期DATE,完工日期DATE,施工單位VARCHAR(30),施工內(nèi)容VARCHAR(50),材料費(fèi) FLOAT,人工費(fèi) FLOAT,設(shè)備費(fèi) FLOAT,其他費(fèi)用FLOAT,結(jié)算金額FLOAT,結(jié)算人 VARCHAR(20),結(jié)算日期DATE,入賬金額FLOAT,入賬人 VARCHAR(20),入賬日期DATE);CREATE TABLE MATERIALPRICE(單據(jù)號(hào) VARCHAR(20),物碼 VARCHAR(20),消耗數(shù)量 BIGINT,單價(jià) FLOAT);*/*INSERT INTO UN

3、ITNO( 單位代碼 , 單位名稱(chēng) )VALUES('1122',' 采油廠(chǎng) '); INSERT INTO UNITNO(單位代碼 , 單位名稱(chēng) )VALUES('112201',' 采油一礦 '); INSERT INTO UNITNO(單位代碼 , 單位名稱(chēng) )VALUES('112202',' 采油二礦 '); INSERT INTO UNITNO(單位代碼 , 單位名稱(chēng) )VALUES('112201001',' 采油一礦一隊(duì) '); INSERT INTO

4、 UNITNO(單位代碼 , 單位名稱(chēng) )VALUES('112201002',' 采油一礦二隊(duì) '); INSERT INTO UNITNO(單位代碼 , 單位名稱(chēng) )VALUES('112201003',' 采油一礦三隊(duì) '); INSERT INTO UNITNO(單位代碼 , 單位名稱(chēng) )VALUES('112202001',' 采油二礦一隊(duì) '); INSERT INTO UNITNO(單位代碼 , 單位名稱(chēng) )VALUES('112202002',' 采油二礦二隊(duì)

5、 ');INSERT INTO OILWELL(井號(hào) , 井別 , 單位代碼 )VALUES('y001','油井 ','112201001');INSERT INTO OILWELL(井號(hào) , 井別 , 單位代碼 )VALUES('y002','油井 ','112201001');INSERT INTO OILWELL(井號(hào) , 井別 , 單位代碼 )VALUES('y003','油井 ','112201002');INSERT INTO O

6、ILWELL(井號(hào) , 井別 , 單位代碼 )VALUES('s001','水井 ','112201002');INSERT INTO OILWELL(井號(hào) , 井別 , 單位代碼 )VALUES('y004','油井 ','112201003');INSERT INTO OILWELL(井號(hào) , 井別 , 單位代碼 )VALUES('s002','水井 ','112201001');INSERT INTO OILWELL(井號(hào) , 井別 , 單位代碼

7、 )VALUES('s003','水井 ','112201001');INSERT INTO OILWELL(井號(hào) , 井別 , 單位代碼 )VALUES('y005','油井 ','112201002');INSERT INTO CONSTRUCTIONUNIT(施工單位名稱(chēng)INSERT INTO CONSTRUCTIONUNIT(施工單位名稱(chēng)INSERT INTO CONSTRUCTIONUNIT(施工單位名稱(chēng))VALUES(' 作業(yè)公司作業(yè)一隊(duì) '); )VALUES('

8、; 作業(yè)公司作業(yè)二隊(duì) '); )VALUES(' 作業(yè)公司作業(yè)三隊(duì) ');INSERT INTO GOODSNO(物碼 , 名稱(chēng)規(guī)格 , 計(jì)量單位 )VALUES('wm001','材料一 ','噸 ');INSERT INTO GOODSNO(物碼 , 名稱(chēng)規(guī)格 , 計(jì)量單位 )VALUES('wm002','材料二 ','米 ');INSERT INTO GOODSNO(物碼 , 名稱(chēng)規(guī)格 , 計(jì)量單位 )VALUES('wm003','材料三 &

9、#39;,'桶 ');INSERT INTO GOODSNO(物碼 , 名稱(chēng)規(guī)格 , 計(jì)量單位 )VALUES('wm004','材料四 ','袋 ');INSERTINTO COST(單據(jù)號(hào) , 預(yù)算單位 , 井號(hào) , 預(yù)算金額 , 預(yù)算人 , 預(yù)算日期 , 開(kāi)工日期 , 完工日期 , 施工單位 , 施工內(nèi)容 , 材料費(fèi) ,人工費(fèi) , 設(shè)備費(fèi) , 其他費(fèi)用 , 結(jié)算金額 , 結(jié)算人 , 結(jié)算日期 , 入賬金額 , 入賬人, 入賬日期 )VALUES('ZY2016001','112201001',

10、'y001','10000.00','張三','2016-5-1','2016-5-4','2016-5-25','作業(yè)公司作業(yè)一隊(duì)','堵漏 ','7000.00','2500.00','1000.00','1400.00','11900.00','李四','2016-5-26','11900.00','王五 ','

11、2016-5-28');INSERTINTO COST(單據(jù)號(hào) , 預(yù)算單位 , 井號(hào) , 預(yù)算金額 , 預(yù)算人 , 預(yù)算日期 , 開(kāi)工日期 , 完工日期 ,施工單位 , 施工內(nèi)容 , 材料費(fèi) ,人工費(fèi) , 設(shè)備費(fèi) , 其他費(fèi)用 , 結(jié)算金額 , 結(jié)算人 , 結(jié)算日期 , 入賬金額 , 入賬人, 入賬日期 )VALUES('ZY2016002','112201002','y003','11000.00','張三','2016-5-1','2016-5-4','2016

12、-5-23','作業(yè)公司作業(yè)二隊(duì)','檢泵 ','6000.00','1500.00','1000.00','2400.00','10900.00','李四','2016-5-26','10900.00','王五 ','2016-5-28');INSERTINTO COST(單據(jù)號(hào) , 預(yù)算單位 , 井號(hào) , 預(yù)算金額 , 預(yù)算人 , 預(yù)算日期 , 開(kāi)工日期 , 完工日期 ,施工單位 , 施工內(nèi)容

13、 , 材料費(fèi) ,人工費(fèi) , 設(shè)備費(fèi) , 其他費(fèi)用 , 結(jié)算金額 , 結(jié)算人 , 結(jié)算日期 , 入賬金額 , 入賬人, 入賬日期 )VALUES('ZY2016003','112201002','s001','10500.00','張三','2016-5-1','2016-5-6','2016-5-23','作業(yè)公司作業(yè)二隊(duì)','調(diào)剖 ','6500.00','2000.00','500.00

14、9;,'1400.00','10400.00','李四','2016-5-26','10400.00','王五 ','2016-5-28');INSERTINTO COST(單據(jù)號(hào) , 預(yù)算單位 , 井號(hào) , 預(yù)算金額 , 預(yù)算人 , 預(yù)算日期 , 開(kāi)工日期 , 完工日期 ,施工單位 , 施工內(nèi)容 , 材料費(fèi) ,人工費(fèi) , 設(shè)備費(fèi) , 其他費(fèi)用 , 結(jié)算金額 , 結(jié)算人 , 結(jié)算日期 , 入賬金額 , 入賬人, 入賬日期 )VALUES('ZY2016004',

15、9;112202001','s002','12000.00','張三','2016-5-1','2016-5-4','2016-5-24','作業(yè)公司作業(yè)三隊(duì)','解堵 ','6000.00','2000.00','1000.00','1600.00','10600.00','李四','2016-5-26','10600.00',&#

16、39;趙六 ','2016-5-28');INSERTINTO COST(單據(jù)號(hào) , 預(yù)算單位 , 井號(hào) , 預(yù)算金額 , 預(yù)算人 , 預(yù)算日期 , 開(kāi)工日期 , 完工日期 ,施工單位 , 施工內(nèi)容 , 材料費(fèi) ,人工費(fèi) , 設(shè)備費(fèi) , 其他費(fèi)用 , 結(jié)算金額 , 結(jié)算人 , 結(jié)算日期)VALUES('ZY2016005','112202002','y005','12000.00','張三','2016-5-1','2016-5-4','2016-5-

17、28','作業(yè)公司作業(yè)三隊(duì)','防砂 ','7000.00','1000.00','2000.00','1300.00','11300.00','李四 ','2016-6-1');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016001','wm001','200','10.00');INSERT INTO M

18、ATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016001','wm002','200','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016001','wm003','200','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016001

19、9;,'wm004','100','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016002','wm001','200','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016002','wm002','200','10.00');INSERT I

20、NTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016002','wm003','200','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016003','wm001','200','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY20160

21、03','wm002','200','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016003','wm003','250','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016004','wm001','200','10.00');INS

22、ERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016004','wm002','200','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016004','wm004','200','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY

23、2016005','wm001','200','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016005','wm002','200','10.00');INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('ZY2016005','wm004','300','10.00'

24、);UPDATE COSTSET 人工費(fèi) =人工費(fèi) +200.00, 結(jié)算金額 =結(jié)算金額 +200.00 WHERE單據(jù)號(hào) ='zy2016005'DELETEFROM COSTWHERE入賬金額 IS NULL OR入賬人 IS NULL OR入賬日期 IS NULL;BEGIN TRANUPDATE COSTSET 人工費(fèi) =人工費(fèi) +200.00, 結(jié)算金額 =結(jié)算金額 +200.00 WHERE單據(jù)號(hào) ='zy2016005'DELETEFROM COSTWHERE入賬金額 IS NULL OR入賬人 IS NULL OR入賬日期 IS NULL;RO

25、LLBACK TRAN實(shí)驗(yàn)四CREATE INDEX yDATE ON COST(預(yù)算日期 );CREATE INDEX jDATE ON COST(結(jié)算日期 );CREATE INDEX rDATE ON COST(入賬日期 );SELECT DISTINCT * FROM COST,UNITNOWHERE 單位名稱(chēng) =' 采油一礦二隊(duì) 'AND 預(yù)算單位 =單位代碼 AND 入賬日期 >='2016-5-1'AND 入賬日期 <='2016-5-28' AND 預(yù)算金額 IS NOT NULL AND 預(yù)算日期 IS NOT NU

26、LL AND 預(yù)算人 IS NOT NULL;SELECT DISTINCT * FROM COST,UNITNOWHERE 單位名稱(chēng) =' 采油一礦二隊(duì)'AND 預(yù)算單位 =單位代碼AND 入賬日期 >='2016-5-1'AND入賬日期 <='2016-5-28' AND日期 IS NOT NULL;結(jié)算金額IS NOT NULL AND結(jié)算人IS NOT NULL AND結(jié)算SELECT DISTINCT MATERIALPRICE單.據(jù)號(hào) , 物碼 , 消耗數(shù)量 FROM COST,MATERIALPRICE,UNITNO,

27、單價(jià)WHERE單位名稱(chēng)='采油一礦二隊(duì)'AND預(yù)算單位=單位代碼AND入賬日期>='2016-5-1'AND入賬日期 <='2016-5-28'AND MATERIALPRICE. 單據(jù)號(hào) =COST.單據(jù)號(hào) ;SELECT DISTINCT * FROM COST,UNITNOWHERE 單位名稱(chēng) =' 采油一礦二隊(duì)'AND 預(yù)算單位 =單位代碼AND 入賬日期 >='2016-5-1'AND入賬日期 <='2016-5-28' AND入賬金額IS NOT NULL AND

28、入賬人 IS NOT NULL AND 入賬日期 IS NOT NULL;SELECT 預(yù)算總額 =SUM(DISTINCT 預(yù)算金額 )FROM UNITNO,COSTWHERE單位名稱(chēng) =' 采油一礦二隊(duì) 'AND 預(yù)算單位 =單位代碼 AND 入賬日期 >='2016-5-1'AND 入賬日期 <='2016-5-28'SELECT 結(jié)算總額 =SUM(DISTINCT 結(jié)算金額 )FROM UNITNO,COSTWHERE單位名稱(chēng) =' 采油一礦二隊(duì) 'AND 預(yù)算單位 =單位代碼 AND 入賬日期 >=

29、'2016-5-1'AND 入賬日期 <='2016-5-28'SELECT 入賬總額 =SUM(DISTINCT 入賬金額 )FROM UNITNO,COSTWHERE單位名稱(chēng) =' 采油一礦二隊(duì) 'AND 預(yù)算單位 =單位代碼 AND 入賬日期 >='2016-5-1'AND 入賬日期 <='2016-5-28'SELECT 一礦入賬總額 =SUM(DISTINCT 入賬金額 )FROM UNITNO,COSTWHERE單位名稱(chēng) LIKE '采油一礦 %'AND 預(yù)算單位 =單

30、位代碼 AND 入賬日期>='2016-5-1'AND 入賬日期 <='2016-5-28'SELECT DISTINCT 入賬人FROM COSTWHERE入賬人 IS NOT NULL;SELECT DISTINCT FROM COST單據(jù)號(hào)WHERE結(jié)算日期 >='2016-5-1' AND算金額 IS NOT NULL ;結(jié)算日期<='2016-5-28' AND入賬金額 ISNULL AND 結(jié)SELECT DISTINCT 單據(jù)號(hào) , 入賬金額FROM COST,UNITNOWHERE單位名稱(chēng)

31、=' 采油一礦二隊(duì) 'AND 預(yù)算單位 =單位代碼ORDER BY入賬金額DESC;SELECT 單位名稱(chēng) , 結(jié)算金額總和=SUM(DISTINCT 結(jié)算金額 ), 項(xiàng)目數(shù) =COUNT(DISTINCT結(jié)算金額 )FROM COST,UNITNOWHERE預(yù)算單位 =單位代碼GROUP BY單位名稱(chēng) ;SELECT distinct單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià)FROM MATERIALPRICEWHERE物碼 IN(SELECT物碼FROM GOODSNOWHERE名稱(chēng)規(guī)格 =' 材料三 ')AND 單價(jià) *消耗數(shù)量 >=2000;SELE

32、CT DISTINCT 單據(jù)號(hào)FROM COSTWHERE施工單位 =' 作業(yè)公司作業(yè)二隊(duì)'SELECT 單據(jù)號(hào) , 施工單位FROM COSTWHERE施工單位 =' 作業(yè)公司作業(yè)二隊(duì)'UNIONSELECT 單據(jù)號(hào) , 施工單位FROM COSTWHERE施工單位 =' 作業(yè)公司作業(yè)一隊(duì)'SELECT DISTINCT 施工單位FROM COST,OILWELL,UNITNOWHERE預(yù)算單位 =UNITNO.單位代碼AND UNITNO.單位代碼 =OILWELL.單位代碼 AND 單位名稱(chēng) LIKE ' 采油一礦 %'CR

33、EATE TABLE數(shù)據(jù)表 ( 施工單位 VARCHAR(30),年月 VARCHAR(20),結(jié)算金額 FLOAT);INSERT INTO 數(shù)據(jù)表 ( 施工單位 , 年月 , 結(jié)算金額 )(SELECT 施工單位 ,YEAR(結(jié)算日期 )*100+MONTH(結(jié)算日期 ),SUM( 結(jié)算金額 )FROM COSTGROUP BY 施工單位 ,YEAR(結(jié)算日期 )*100+MONTH(結(jié)算日期 );UPDATE COSTSET 結(jié)算人 =' 李兵 'WHERE預(yù)算單位IN(SELECT單位代碼FROM UNITNOWHERE 單位代碼 =預(yù)算單位 AND 單位名稱(chēng) Like

34、 ' 采油一礦 %' );DELETEFROM COSTWHERE預(yù)算單位 IN(SELECT 單位代碼FROM UNITNOWHERE單位代碼 =預(yù)算單位 AND 單位名稱(chēng)Like '采油一礦 %');BEGIN TRANUPDATE COSTSET 結(jié)算人 =' 李兵 'WHERE預(yù)算單位IN(SELECT單位代碼FROM UNITNOWHERE 單位代碼 =預(yù)算單位AND 單位名稱(chēng)Like '采油一礦 %');DELETEFROM COSTWHERE預(yù)算單位 IN(SELECT 單位代碼FROM UNITNOWHERE 單位

35、代碼 =預(yù)算單位AND 單位名稱(chēng) Like '采油一礦 %');ROLLBACK TRANDROP INDEX yDATE ON COST;DROP INDEX jDATE ON COST;DROP INDEX rDATE ON COST;實(shí)驗(yàn)五ALTER TABLE 數(shù)據(jù)表 ADD 備注 CHAR;SELECT *FROM 數(shù)據(jù)表 ;ALTER TABLE 數(shù)據(jù)表ALTER COLUMN施工單位 VARCHAR(30) NOT NULL;ALTER TABLE 數(shù)據(jù)表 ADD PRIMARY KEY(施工單位 );DELETEFROM 數(shù)據(jù)表 ;DROP TABLE 數(shù)據(jù)表

36、;ALTER TABLE UNITNOALTER COLUMN單位代碼VARCHAR(20) NOT NULL;ALTER TABLE UNITNOADD CONSTRAINT UNI_NUM PRIMARY KEY(單位代碼 );ALTER TABLE OILWELLALTER COLUMN井號(hào) VARCHAR(20) NOT NULL;ALTER TABLE OILWELLADD CONSTRAINT WELL_NUM PRIMARY KEY(井號(hào) );ALTER TABLE GOODSNOALTER COLUMN物碼 VARCHAR(20) NOT NULL;ALTER TABLE GO

37、ODSNOADD CONSTRAINT GOOD_NUM PRIMARY KEY(物碼 );ALTER TABLE COSTALTER COLUMN單據(jù)號(hào) VARCHAR(20) NOT NULL;ALTER TABLE COSTADD CONSTRAINT COST_NUM PRIMARY KEY(單據(jù)號(hào) );ALTER TABLE MATERIALPRICEALTER COLUMN單據(jù)號(hào) VARCHAR(20) NOT NULL;ALTER TABLE MATERIALPRICEALTER COLUMN物碼 VARCHAR(20) NOT NULL;ALTER TABLE MATERIAL

38、PRICE ADD PRIMARY KEY(單據(jù)號(hào) , 物碼 );ALTER TABLE CONSTRUCTIONUNITALTER COLUMN施工單位名稱(chēng)VARCHAR(30) NOT NULL;ALTER TABLE CONSTRUCTIONUNITADD CONSTRAINT UNI_NAME PRIMARY KEY(施工單位名稱(chēng) );INSERT INTO MATERIALPRICE VALUES('zy2016001','wm004',100,10);INSERT INTO MATERIALPRICE VALUES('zy2016002

39、9;,NULL,200,10);ALTER TABLE OILWELLALTER COLUMN單位代碼 VARCHAR(20) NOT NULL;ALTER TABLE OILWELLADD CONSTRAINT UNI_NUM2 FOREIGN KEY(單位代碼 ) REFERENCES UNITNO(單位代碼 );ALTER TABLE COSTALTER COLUMN井號(hào) VARCHAR(20) NOT NULL;ALTER TABLE COSTADD CONSTRAINT WELL_NUM2 FOREIGN KEY(井號(hào) ) REFERENCES OILWELL(井號(hào) );ALTER

40、TABLE MATERIALPRICEALTER COLUMN物碼 VARCHAR(20) NOT NULL;ALTER TABLE MATERIALPRICEADD CONSTRAINT GOOD_NUM2 FOREIGN KEY(物碼 ) REFERENCES GOODSNO(物碼 );INSERT INTO OILWELL( 井號(hào) , 井別 , 單位代碼 )VALUES('y007',' 油井 ','112203002'); INSERT INTO MATERIALPRICE(單據(jù)號(hào) , 物碼 , 消耗數(shù)量 , 單價(jià))VALUES('

41、;zy2016007','wm006','100','10.00');UPDATE COSTSET 施工單位 =' 作業(yè)公司作業(yè)五隊(duì)'WHERE單據(jù)號(hào) ='ZY2016001'DELETEFROM UNITNOWHERE單位名稱(chēng) =' 采油二礦二隊(duì)' AND 單位代碼 ='112202002'UPDATE GOODSNOSET 物碼 ='wm04'WHERE物碼 ='wm004'BEGIN TRANUPDATE COSTSET 施工單位 =&#

42、39; 作業(yè)公司作業(yè)五隊(duì)'WHERE單據(jù)號(hào) ='ZY2016001'DELETEFROM UNITNOWHERE單位名稱(chēng) =' 采油二礦二隊(duì)' AND 單位代碼 ='112202002'UPDATE GOODSNOSET 物碼 ='wm04'WHERE物碼 ='wm004'ROLLBACK TRANALTER TABLE UNITNOALTER COLUMN單位名稱(chēng)VARCHAR(30) NOT NULL;ALTER TABLE UNITNO ADD UNIQUE(單位名稱(chēng) );ALTER TABLE OI

43、LWELLALTER COLUMN單位代碼VARCHAR(20) NOT NULL;ALTER TABLE OILWELLADD CONSTRAINT OIL_CHECK CHECK(井別 IN('油井 ','水井 ');ALTER TABLE GOODSNOALTER COLUMN名稱(chēng)規(guī)格 VARCHAR(30) NOT NULL;ALTER TABLE GOODSNO ADD UNIQUE(名稱(chēng)規(guī)格 );ALTER TABLE GOODSNOALTER COLUMN計(jì)量單位 VARCHAR(20) NOT NULL;ALTER TABLE MATERIALP

44、RICEALTER COLUMN消耗數(shù)量 BIGINT NOT NULL;ALTER TABLE MATERIALPRICEALTER COLUMN單價(jià) FLOAT NOT NULL;ALTER TABLE COSTALTER COLUMN預(yù)算人 VARCHAR(20) NOT NULL;BEGIN TRANSACTIONGOCREATE VIEW COST_PRICEASSELECT COST.*,物碼 , 消耗數(shù)量 , 單價(jià)FROM COST,MATERIALPRICEwhere COST. 單據(jù)號(hào) =MATERIALPRICE單.據(jù)號(hào) ;SELECT 單據(jù)號(hào) , 物碼FROM COST_

45、PRICEWHERE物碼 ='wm002'SELECT 單據(jù)號(hào) , 單價(jià)FROM COST_PRICEWHERE單據(jù)號(hào) ='ZY2016001'and物碼 ='wm001'GOCREATE VIEW YUSUANASSELECT 單據(jù)號(hào) , 預(yù)算單位 , 井號(hào) , 預(yù)算金額 , 預(yù)算人 , 預(yù)算日期FROM COST;INSERTINTO YUSUANVALUES('zy2016008','112202002','y005',10000,'張三 ', '2016-07-02&

46、#39;);ROLLBACK */實(shí)驗(yàn)六BEGIN TRANSACTIONINSERT INTO COST VALUES( 'zy2016006', '112202002', 'y005', 10000, ' 張三 ' ,'07-01-2016', '07-04-2016', '07-25-2016', ' 作業(yè)公司作業(yè)一隊(duì)' , ' 堵漏' , 7000, 2500, 1000, 1400, 11900, ' 李四 ' , '

47、07-26-2016', 11900, ' 王五 ' , '07-28-2016');IFERROR<>0BEGINPRINT ' 第一條插入出錯(cuò)'ROLLBACKENDELSEBEGINPRINT ' 第一條插入成功'COMMITTRANSACTIONENDBEGIN TRANSACTIONinsert into MATERIALPRICE values ( 'zy2016006' , 'wm001' , 200, 10); IF ERROR<>0BEGINPRIN

48、T ' 第二條插入出錯(cuò)'ROLLBACKENDELSEBEGINPRINT ' 第二條插入成功'COMMITTRANSACTIONENDBEGIN TRANSACTIONinsertintoMATERIALPRICE values ( 'zy2016006', 'wm002' , 200, 10);IFERROR<>0BEGINPRINT ' 第三條插入出錯(cuò)'ROLLBACKENDELSEBEGINPRINT ' 第三條插入成功'COMMITTRANSACTIONENDBEGIN TRA

49、NSACTIONinsert into MATERIALPRICE values ( 'zy2016006' , 'wm003' , 200, 10); IF ERROR<>0BEGINPRINT ' 第四條插入出錯(cuò)'ROLLBACKENDELSEBEGINPRINT ' 第四條插入成功'COMMITTRANSACTIONENDBEGIN TRANSACTIONinsertintoMATERIALPRICE values ( 'zy2016006', 'wm004' , 100, 10)

50、;IFERROR<>0BEGINPRINT ' 第五條插入出錯(cuò)'ROLLBACKENDELSEBEGINPRINT ' 第五條插入成功'COMMITTRANSACTIONENDBEGIN TRANSACTIONDECLARECOST_CURSCROLLCURSORFOR SELECT*FROMCOST;OPENCOST_CUR;DECLARE單據(jù)號(hào) VARCHAR(20)DECLARE預(yù)算單位VARCHAR( 20)DECLARE井號(hào) VARCHAR( 20)DECLARE預(yù)算金額FLOATDECLARE預(yù)算人 VARCHAR(20)DECLARE預(yù)

51、算日期DATEDECLARE開(kāi)工日期DATEDECLARE完工日期DATEDECLARE施工單位VARCHAR( 30)DECLARE施工內(nèi)容VARCHAR( 50)DECLARE材料費(fèi) FLOATDECLARE人工費(fèi) FLOATDECLARE設(shè)備費(fèi) FLOATDECLARE其他費(fèi)用FLOATDECLARE結(jié)算金額FLOATDECLARE結(jié)算人 VARCHAR(20)DECLARE結(jié)算日期DATEDECLARE入賬金額FLOATDECLARE入賬人 VARCHAR(20)DECLARE入賬日期DATEPRINT ' 單據(jù)號(hào) ' +' 預(yù)算單位 '+'井號(hào)

52、 ' +' 預(yù)算金額 ' +' 預(yù)算人 ' +'預(yù)算日期 '+'開(kāi)工日期 '+'完工日期 ' +'施工單位 '+' 施工內(nèi)容 ' +' 材料費(fèi) ' +'人工費(fèi) '+'設(shè)備費(fèi) ' +'其它費(fèi)用 '+'結(jié)算金額 ' +'結(jié)算人 ' +' 結(jié)算日期 '+'入賬金額 '+'入賬人 ' +'入賬日期 'FETCHFIRST FR

53、OMCOST_CRUINTO 單據(jù)號(hào) , 預(yù)算單位 , 井號(hào) , 預(yù)算金額 , 預(yù)算人 , 預(yù)算日期 , 開(kāi)工日期 , 完工日期 , 施工單位 , 施工內(nèi)容 , 材料費(fèi) , 人工費(fèi) ,設(shè)備費(fèi) , 其他費(fèi)用 , 結(jié)算金額 , 結(jié)算人 , 結(jié)算日期 , 入賬金額 , 入賬人 , 入賬日期WHILE( FETCH_STATUS=0)BEGINPRINT +單據(jù)號(hào) +預(yù)算單位+井號(hào)+預(yù)算金額+''+預(yù)算人 +' '+預(yù)算日期+'' +開(kāi)工日期 +' ' +完工日期 +' ' +施工單位 +' ' +施工內(nèi)容

54、 +材料費(fèi) +人工費(fèi)+設(shè)備費(fèi)+其他費(fèi)用+結(jié)算金額人 +入賬日期+''+結(jié)算人+' '+結(jié)算日期+入賬金額+''+入賬FETCHNEXT FROMCOST_CRUINTO單據(jù)號(hào) , 預(yù)算單位 , 井號(hào) , 預(yù)算金額 , 預(yù)算人 , 預(yù)算日期 ,開(kāi)工日期 , 完工日期 , 施工單位 , 施工內(nèi)容 , 材料費(fèi) , 人工費(fèi) ,設(shè)備費(fèi) , 其他費(fèi)用 , 結(jié)算金額 , 結(jié)算人 , 結(jié)算日期 , 入賬金額 , 入賬人 , 入賬日期END;ifOBJECT_ID( 'YUNXING_SITU', 'p') isnotnulldro

55、pprocedureYUNXING_SITU;goCREATEPROCEDUREYUNXING_SITUDANWEIDAIMAVARCHAR( 30), STARTTIMEDATE, ENDTIMEDATE ASDECLAREDANWEIMINGVARCHAR( 30);DECLAREYSMONEYmoney, JSMONEYmoney, RZMONEYmoney, NOJSMONEYmoney, NORUZHANGMONEYmoney;SELECTDANWEIMING=' 單位名稱(chēng) 'FROMUNITNOWHEREDANWEIDAIMA=' 單位代碼 'SET

56、YSMONEY=( SELECTSUM( 預(yù)算金額 )FROMCOSTWHERE預(yù)算單位LIKE DANWEIDAIMA+'%'AND預(yù)算日期BETWEENSTARTTIMEANDENDTIMEand 預(yù)算金額isnotnull)SETJSMONEY=( SELECTSUM( 結(jié)算金額 ) FROMCOST WHERE預(yù)算單位LIKE DANWEIDAIMA+'%' AND結(jié)算日期BETWEENSTARTTIMEANDENDTIMEand 結(jié)算金額isnotnull)SETRZMONEY=( SELECTSUM( 入賬金額 ) FROMCOST WHERE預(yù)算單位 LIKE DANWEIDAIMA+'%' AND 入賬日期 BETWEENSTARTTIMEANDENDTIMEAND 入賬人 IS NOT NULL)SETNOJSMONEY=( SELECTSUM( 預(yù)算金額 ) FROMCOST WHERE預(yù)算日期 BETWEENSTARTTIMEAND ENDTIMEAN

溫馨提示

  • 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)論