目錄
一、實(shí)驗(yàn)?zāi)康?/p>
二、實(shí)驗(yàn)學(xué)時(shí)
三、實(shí)驗(yàn)內(nèi)容
一、實(shí)驗(yàn)?zāi)康?/h2>
??? 1.掌握基本表的定義;
??? 2.掌握插入數(shù)據(jù)、修改數(shù)據(jù)和刪除數(shù)據(jù)語(yǔ)句的常用形式。
二、實(shí)驗(yàn)學(xué)時(shí)
? ? 2學(xué)時(shí)
三、實(shí)驗(yàn)內(nèi)容
1.利用Enterprise Manager,新建一個(gè)數(shù)據(jù)庫(kù),命名為zyxt,并有以下要求:
? ? ? ⑴ 該數(shù)據(jù)庫(kù)記錄某采油廠對(duì)油/水井實(shí)施作業(yè)時(shí)所消耗的成本。(作業(yè):為保證油水井正常生產(chǎn)所實(shí)施的工程項(xiàng)目)
? ? ? ⑵ 成本的消耗分為預(yù)算、結(jié)算、入賬三個(gè)狀態(tài)。
? ? ? ? ? 預(yù)算:采油隊(duì)向管理部門(mén)提出作業(yè)申請(qǐng),并經(jīng)管理部門(mén)批準(zhǔn)后,由管理部門(mén)負(fù)責(zé)錄入。
? ? ? ? ? 結(jié)算:某次作業(yè)施工結(jié)束后,由管理部門(mén)與施工單位共同核算各種成本,由管理部門(mén)負(fù)責(zé)錄入。
? ? ? ? ? 入賬:結(jié)算后,財(cái)務(wù)部門(mén)將成本計(jì)入采油廠賬目,由財(cái)務(wù)部門(mén)錄入。
? ? ? ⑶ 預(yù)算狀態(tài)時(shí)需要錄入的數(shù)據(jù):(★:字符型?? ◆貨幣型?? ▲日期型)
? ? ? ? ? ★單據(jù)號(hào):某一作業(yè)項(xiàng)目的編號(hào)
? ? ? ? ? ★預(yù)算單位:指需要對(duì)油水井實(shí)施作業(yè)的采油隊(duì)代碼
? ? ? ? ? ★井號(hào):需要實(shí)施作業(yè)的油水井
? ? ? ? ? ◆預(yù)算金額
? ? ? ? ? ★預(yù)算人
? ? ? ? ?▲預(yù)算日期
? ? ? ⑷ 結(jié)算狀態(tài)時(shí)需要錄入的數(shù)據(jù):(★:字符型?? ◆貨幣型?? ▲日期型?? ▼數(shù)值型)
? ? ? ? ? 調(diào)出某條預(yù)算記錄,錄入以下數(shù)據(jù):
? ? ? ? ? ▲開(kāi)工日期
? ? ? ? ? ▲完工日期
? ? ? ? ? ★施工單位
? ? ? ? ? ★施工內(nèi)容
? ? ? ? ? ◆材料費(fèi)(要求另外用表單獨(dú)記錄材料消耗的明細(xì))
? ? ? ? ?(★單據(jù)號(hào)? ★物碼?? ▼消耗數(shù)量?? ◆單價(jià))
? ? ? ? ? ◆人工費(fèi)
? ? ? ? ? ◆設(shè)備費(fèi)
? ? ? ? ? ◆其它費(fèi)用
? ? ? ? ? ◆結(jié)算金額(材料費(fèi)+人工費(fèi)+設(shè)備費(fèi)+其它費(fèi)用)
? ? ? ? ? ★結(jié)算人
? ? ? ? ? ▲結(jié)算日期
? ? ? ⑸ 入賬狀態(tài)時(shí)需要錄入的數(shù)據(jù):(★:字符型?? ◆貨幣型?? ▲日期型)
? ? ? ? ? 調(diào)出某條結(jié)算記錄,錄入以下數(shù)據(jù):
? ? ? ? ? ◆入賬金額
? ? ? ? ? ★入賬人
? ? ? ? ? ▲入賬日期
? ? ? ⑹ 為了避免出現(xiàn)數(shù)據(jù)的不一致和方便數(shù)據(jù)錄入,要求定義以下基礎(chǔ)表:(★:字符型)
? ? ? ? ? ?單位代碼表:★單位代碼?? ★單位名稱(chēng)
? ? ? ? ? ?油水井表:★井號(hào)?? ★井別:油井/水井?? ★單位代碼? (表示某口井由哪個(gè)單位負(fù)責(zé)管理)
? ? ? ? ? ?施工單位表:★施工單位名稱(chēng)
? ? ? ? ? ?物碼表:★物碼?? ★名稱(chēng)規(guī)格?? ★計(jì)量單位
2.根據(jù)以上要求,在Query Analyzer中用建表語(yǔ)句定義所需的數(shù)據(jù)表。
create table 成本消耗
(
單據(jù)號(hào) varchar(20),
預(yù)算單位 varchar(20),
井號(hào) varchar(20),
預(yù)算金額 money,
預(yù)算人 varchar(20),
預(yù)算日期 date,
開(kāi)工日期 date,
完工日期 date,
施工單位 varchar(20),
施工內(nèi)容 varchar(20),
材料費(fèi) money,
人工費(fèi) money,
設(shè)備費(fèi) money,
其他費(fèi)用 money,
結(jié)算金額 money,
結(jié)算人 varchar(20),
結(jié)算日期 date,
入賬金額 money,
入賬人 varchar(20),
入賬日期 date
);
create table 單位代碼表
(
單位代碼 varchar(20),
單位名稱(chēng) varchar(20)
);
create table 油水井表
(
井號(hào) varchar(20),
井別 varchar(20),
單位代碼 varchar(20)
);
create table 施工單位表
(
施工單位名稱(chēng) varchar(20)
);
create table 物碼表
(
物碼 varchar(20),
名稱(chēng)規(guī)格 varchar(20),
計(jì)量單位 varchar(20),
單價(jià) money
);
create table 材料消耗表
(
單據(jù)號(hào) varchar(20),
物碼 varchar(20),
消耗數(shù)量 int,
單價(jià) money
);
3.在Query Analyzer中用數(shù)據(jù)插入語(yǔ)句錄入以下數(shù)據(jù):
單位代碼表:
1122?????? 采油廠
112201???? 采油一礦?????? 112202? ???采油二礦
112201001? 采油一礦一隊(duì)?? 112201002? 采油一礦二隊(duì)
112201003? 采油一礦三隊(duì)
112202001? 采油二礦一隊(duì)?? 112202002? 采油二礦二隊(duì)
insert into 單位代碼表
values
('1122','采油廠'),
('112201','采油一礦'),
('112202','采油二礦'),
('112201001','采油一礦一隊(duì)'),
('112201002','采油一礦二隊(duì)'),
('112201003','采油一礦三隊(duì)'),
('112202001','采油二礦一隊(duì)'),
('112202002','采油二礦二隊(duì)');
油水井表:
(y001?? 油井?? 112201001)? (y002?? 油井?? 112201001)
(y003?? 油井?? 112201002)? (s001?? 水井?? 112201002)
(y004?? 油井?? 112201003)? (s002? ?水井?? 112202001)
(s003?? 水井?? 112202001)? (y005?? 油井?? 112202002)
insert into 油水井表
values
('y001','油井','112201001'),
('y002','油井','112201001'),
('y003','油井','112201002'),
('s001','水井','112201002'),
('y004','油井','112201003'),
('s002','水井','112202001'),
('s003','水井','112202001'),
('y005','油井','112202002');
施工單位表:
作業(yè)公司作業(yè)一隊(duì)??? 作業(yè)公司作業(yè)二隊(duì)
作業(yè)公司作業(yè)三隊(duì)
insert into 施工單位表
values
('作業(yè)公司作業(yè)一隊(duì)'),
('作業(yè)公司作業(yè)二隊(duì)'),
('作業(yè)公司作業(yè)三隊(duì)');
物碼表:(單價(jià)均為10)
wm001 材料一 噸????? wm002 材料二 米
wm003 材料三 桶????? wm004 材料四 袋
insert into 物碼表
values
('wm001','材料一','噸',10),
('wm002','材料二','米',10),
('wm003','材料三','桶',10),
('wm004','材料四','袋',10);
4.利用Query Analyzer錄入以下數(shù)據(jù):
某作業(yè)項(xiàng)目編號(hào)? zy2018001
預(yù)算單位:112201001?? 井號(hào):y001 ??預(yù)算金額:10000.00
預(yù)算人:張三?? 預(yù)算日期:2018-5-1?? 開(kāi)工日期:2018-5-4
完工日期:2018-5-25?? 施工單位:作業(yè)公司作業(yè)一隊(duì)
施工內(nèi)容:堵漏??? 材料費(fèi):7000.00(其中材料一:2000.00
材料二:2000.00??? 材料三:2000.00?? 材料四:1000.00)
人工費(fèi):2500.00??? 設(shè)備費(fèi):1000.00?? 其它費(fèi)用:1400.00
結(jié)算金額:11900.00? 結(jié)算人:李四?? 結(jié)算日期:2018-5-26
入賬金額:11900.00? 入賬人:王五 ??入賬日期:2018-5-28
5.利用Enterprise Manager錄入以下數(shù)據(jù):
⑴ 某作業(yè)項(xiàng)目編號(hào)? zy2018002
預(yù)算單位:112201002?? 井號(hào):y003?? 預(yù)算金額:11000.00? 預(yù)算人:張三?? 預(yù)算日期:2018-5-1???
開(kāi)工日期:2018-5-4? ? ?完工日期:2018-5-23?? 施工單位:作業(yè)公司作業(yè)二隊(duì)
施工內(nèi)容:檢泵???材料費(fèi):6000.00(其中材料一:2000.00? 材料二:2000.00??材料三:2000.00)
人工費(fèi):1500.00 ?設(shè)備費(fèi):1000.00?? 其它費(fèi)用:2400.00? ?結(jié)算金額:10900.00
結(jié)算人:李四? 結(jié)算日期:2018-5-26? 入賬金額:10900.00?? 入賬人:王五?? 入賬日期:2018-5-28
⑵ 某作業(yè)項(xiàng)目編號(hào)? zy2018003
預(yù)算單位:112201002?? 井號(hào):s001?? 預(yù)算金額:10500.00? ?預(yù)算人:張三??
預(yù)算日期:2018-5-1?? 開(kāi)工日期:2018-5-6? ?完工日期:2018-5-23?? 施工單位:作業(yè)公司作業(yè)二隊(duì)
施工內(nèi)容:調(diào)剖??? 材料費(fèi):6500.00(其中材料一:2000.00? 材料二:2000.00??? 材料三:2500.00)
人工費(fèi):2000.00??? 設(shè)備費(fèi):500.00?? 其它費(fèi)用:1400.00? ? 結(jié)算金額:10400.00?
結(jié)算人:李四?? 結(jié)算日期:2018-5-26? 入賬金額:10400.00? 入賬人:王五?? 入賬日期:2018-5-28
⑶ 某作業(yè)項(xiàng)目編號(hào)? zy2018004
預(yù)算單位:112202001? ?井號(hào):s002?? 預(yù)算金額:12000.00? 預(yù)算人:張三?? 預(yù)算日期:2018-5-1??
開(kāi)工日期:2018-5-4? ? ?完工日期:2018-5-24?? 施工單位:作業(yè)公司作業(yè)三隊(duì)? 施工內(nèi)容:解堵???
材料費(fèi):6000.00(其中材料一:2000.00? ?材料二:2000.00??? 材料四:2000.00)
人工費(fèi):2000.00??? 設(shè)備費(fèi):1000.00?? 其它費(fèi)用:1600.00? ?結(jié)算金額:10600.00?
結(jié)算人:李四?? 結(jié)算日期:2018-5-26? 入賬金額:10600.00? 入賬人:趙六?? 入賬日期:2018-5-28
⑷ 某作業(yè)項(xiàng)目編號(hào)? zy2018005
預(yù)算單位:112202002?? 井號(hào):y005?? 預(yù)算金額:12000.00? ?預(yù)算人:張三??
預(yù)算日期:2018-5-1?? 開(kāi)工日期:2018-5-4? ?完工日期:2018-5-28?? 施工單位:作業(yè)公司作業(yè)三隊(duì)
施工內(nèi)容:防砂??? 材料費(fèi):7000.00(其中材料一:2000.00? 材料二:2000.00??? 材料四:3000.00)
人工費(fèi):1000.00??? 設(shè)備費(fèi):2000.00?? 其它費(fèi)用:1300.00? 結(jié)算金額:11300.00?
結(jié)算人:李四?? 結(jié)算日期:2018-6-1
insert into 成本消耗
values
('zy2018001','112201001','y001',10000,'張三','2018-5-1','2018-5-4','2018-5-25','作業(yè)公司作業(yè)一隊(duì)',
'堵漏',7000,2500,1000,1400,11900,'李四','2018-5-26',11900,'王五','2018-5-28'),
('zy2018002','112201002','y003',11000,'張三','2018-5-1','2018-5-4','2018-5-23','作業(yè)公司作業(yè)二隊(duì)',
'檢泵',6000,1500,1000,2400,10900,'李四','2018-5-26',10900,'王五','2018-5-28'),
('zy2018003','112201002','s001',10500,'張三','2018-5-1','2018-5-6','2018-5-23','作業(yè)公司作業(yè)二隊(duì)',
'調(diào)刨',6500,2000,500,1400,10400,'李四','2018-5-26',10400,'王五','2018-5-28'),
('zy2018004','112202001','s002',12000,'張三','2018-5-1','2018-5-4','2018-5-24','作業(yè)公司作業(yè)三隊(duì)',
'解堵',6000,2000,1000,1600,10600,'李四','2018-5-26',10600,'趙六','2018-5-28'),
('zy2018005','112202002','y005',12000,'張三','2018-5-1','2018-5-4','2018-5-28','作業(yè)公司作業(yè)三隊(duì)',
'防砂',7000,1000,2000,1300,11300,'李四','2018-6-1',null,null,null);
insert into 材料消耗表
values
('zy2018001','wm001',200,10),
('zy2018001','wm002',200,10),
('zy2018001','wm003',200,10),
('zy2018001','wm004',100,10),
('zy2018002','wm001',200,10),
('zy2018002','wm002',200,10),
('zy2018002','wm003',200,10),
('zy2018003','wm001',200,10),
('zy2018003','wm002',200,10),
('zy2018003','wm003',250,10),
('zy2018004','wm001',200,10),
('zy2018004','wm002',200,10),
('zy2018004','wm004',200,10),
('zy2018005','wm001',200,10),
('zy2018005','wm002',200,10),
('zy2018005','wm004',300,10);
6.利用Query Analyzer完成以下操作:
⑴ 將編號(hào)為zy2018005的項(xiàng)目的人工費(fèi)和結(jié)算金額增加200元。
⑵ 刪除已經(jīng)結(jié)算但未入賬的項(xiàng)目。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-436933.html
⑶ 撤消上述兩個(gè)操作。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-436933.html
begin transaction;
update 成本消耗
set 人工費(fèi) = 人工費(fèi) + 200,
結(jié)算金額 = 結(jié)算金額 + 200
where 單據(jù)號(hào) = 'zy2018005';
delete from 成本消耗
where 入賬金額 is null;
rollback;
到了這里,關(guān)于《數(shù)據(jù)庫(kù)》實(shí)驗(yàn)二:SQL練習(xí)1的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!