版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 實驗題目:倉庫管理系統(tǒng)數(shù)據(jù)庫的設(shè)計與實現(xiàn) 描述:設(shè)計一個倉庫管理系統(tǒng),實現(xiàn)下列功能:零件信息登記(包括種類,名稱和庫存數(shù)量等信息);零件進(jìn)庫登記(包括種類,名稱和庫存數(shù)量等信息);零件出庫登記(包括種類,名稱和庫存數(shù)量等信息);實驗代碼和實驗結(jié)果和實驗總結(jié): 在實驗代碼中分別應(yīng)用了相關(guān)實驗操作的結(jié)果,通過上一個結(jié)果截圖與其隨后的結(jié)果截圖和相關(guān)代碼對比課已看出相關(guān)代碼的作用(主要是各個觸發(fā)器的作用)。 -數(shù)據(jù)庫的創(chuàng)建create database 倉庫管理系統(tǒng)數(shù)據(jù)庫on primary( name = 倉庫管理系統(tǒng)數(shù)據(jù)庫_data, filename =E:倉庫管理系統(tǒng)數(shù)據(jù)庫_Data.MDF
2、, size = 50, maxsize = 500, filegrowth = 5)log on ( name = 倉庫管理系統(tǒng)數(shù)據(jù)庫_log, filename =E:倉庫管理系統(tǒng)數(shù)據(jù)庫_Log.LDF, size = 10, maxsize = 200, filegrowth = 5)-數(shù)據(jù)表的創(chuàng)建use 倉庫管理系統(tǒng)數(shù)據(jù)庫create table 零件信息登記( 零件代號 char(10) primary key, 名稱 char(10) not null, 種類 char(10) not null , 價格 numeric(10,2) not null, 庫存數(shù)量 int defau
3、lt 0)create table 零件進(jìn)庫登記( 零件代號 char(10) foreign key references 零件信息登記(零件代號) , 進(jìn)貨代號 int , 進(jìn)貨人工作號 char(10), 名稱 char(10) not null, 種類 char(10) not null , 價格 numeric(10,2) not null, 進(jìn)庫數(shù)量 int not null default 0, 存放位置 char(10) not null, 進(jìn)庫時間 datetime ,primary key (零件代號,進(jìn)貨代號)create table 零件出庫登記( 零件代號 char(
4、10) foreign key references 零件信息登記(零件代號) , 出貨代號 int , 出貨人工作號 char(10) not null, 名稱 char(10) not null, 種類 char(10) not null , 價格 numeric(10,2) not null, 出庫數(shù)量 int not null default 0, 取貨單號 char(10) not null, 出庫時間 datetime , primary key(零件代號,出貨代號) -通過存儲過程來實現(xiàn)表中數(shù)據(jù)的輸入create procedure pro_ins1(no char(20), n
5、ame char(20), class char(20), s numeric(10,2), num int)asinsert into 零件信息登記values(no, name, class, s, num)create procedure pro_ins2(no char(20),jno int,wno char(10), name char(20), class char(20), s numeric(10,2), num int, m char(20) )asdeclare time datetimeset time = getdate()insert into 零件進(jìn)庫登記valu
6、es(no, jno ,wno ,name, class, s, num, m, time)create procedure pro_ins3(no char(20),jno int,wno char(10), name char(20), class char(20), s numeric(10,2), num int, m char(20)asdeclare time datetimeset time = getdate()insert into 零件出庫登記values(no,jno ,wno , name, class, s, num, m, time)create procedure
7、 pro_selectasbeginselect * from 零件信息登記select *from 零件進(jìn)庫登記select *from 零件出庫登記end-通過第一個存儲過程來實現(xiàn)零件的信息登錄exec pro_ins1 ,螺栓,金屬,5.2,50exec pro_ins1 ,龍頭,金屬,9.3,70exec pro_ins1 ,水杯,塑料,36.8,80exec pro_ins1 ,書包,布料,52,150exec pro_ins1 ,電視,電子,4000,50-當(dāng)零件進(jìn)庫時通過下面的觸發(fā)器來實現(xiàn)數(shù)據(jù)的完整性create trigger tri_統(tǒng)一零件管理on 零件進(jìn)庫登記instea
8、d of insertasbegin if(exists (select 零件代號 from 零件信息登記 where 零件代號 = (select 零件代號 from inserted) beginprint 在庫里已經(jīng)此零件,并且放置成功update 零件信息登記set 庫存數(shù)量 = 庫存數(shù)量 + (select 進(jìn)庫數(shù)量 from inserted )where 零件代號 = (select 零件代號 from inserted) end if(not exists (select 零件代號 from 零件信息登記 where 零件代號 = (select 零件代號 from inser
9、ted) beginprint 庫里不存在此零件,已經(jīng)把此零件加入零件信息登記中insert into 零件信息登記select 零件代號,名稱,種類,價格,進(jìn)庫數(shù)量from insertedinsert into 零件進(jìn)庫登記select 零件代號,進(jìn)貨代號,進(jìn)貨人工作號,名稱,種類,價格,進(jìn)庫數(shù)量,存放位置,進(jìn)庫時間from inserted endEnd-對觸發(fā)器“tri_統(tǒng)一零件管理”的相關(guān)驗證信息exec pro_selectexec pro_ins2 ,1120,c2011a,龍頭,金屬,9.3,70,一排號exec pro_ins2 ,1122,c2011b,電池,金屬,8.3,
10、150,一排號exec pro_ins2 ,1132,c2011c,水桶,塑料,7.9,130,二排號exec pro_ins2 ,1134,a2012d,飲料,食品,54,200,二排號exec pro_select-drop trigger tri_統(tǒng)一零件出庫-當(dāng)零件出庫時通過下面的觸發(fā)器來實現(xiàn)數(shù)據(jù)的完整性create trigger tri_統(tǒng)一零件出庫on 零件出庫登記instead of insertasif exists(select 零件代號 from 零件信息登記 where 零件代號 = (select 零件代號 from inserted)begin print 次零件存
11、在 if exists(select 零件代號 from 零件信息登記 where 零件代號 = (select 零件代號 from inserted) and 庫存數(shù)量=(select 出庫數(shù)量 from inserted) begin begin print 零件庫存夠出售 update 零件信息登記 set 庫存數(shù)量 = 庫存數(shù)量 -(select 出庫數(shù)量 from inserted) where 零件代號 = (select 零件代號 from inserted) endinsert into 零件出庫登記select 零件代號,出貨代號,出貨人工作號,名稱,種類,價格,出庫數(shù)量,取
12、貨單號,出庫時間from inserted end else begin print 零件庫存數(shù)量不夠,不能出售! end endelsebegin print 倉庫里沒有此零件,請通知公司end-對觸發(fā)器“tri_統(tǒng)一零件管理”的相關(guān)驗證信息exec pro_ins3 ,1120,f112a,龍頭,金屬,9.3,10,東華理工 exec pro_ins3 ,1143,f113a,書包,布料,52,1000,南昌exec pro_ins3 ,1220,f114b,鉛筆,用具,9.3,10,江西exec pro_ins3 ,1128,g112a,鎖,金屬,9.3,10,云南exec pro_se
13、lect-對“零件進(jìn)庫登記”數(shù)據(jù)更改是觸發(fā)對“零件信息登記”的更改-同時防止對“零件進(jìn)庫登記”信息的非法更改 create trigger tri_up零件進(jìn)庫on 零件進(jìn)庫登記after updateasif exists(select 零件代號 from deleted where 零件代號=(select 零件代號 from inserted) and 進(jìn)貨代號=(select 進(jìn)貨代號 from inserted) and 進(jìn)庫數(shù)量(select 進(jìn)庫時間 from inserted) update 零件信息登記 set 庫存數(shù)量 = 庫存數(shù)量+(select 進(jìn)庫數(shù)量 from in
14、serted)-(select 進(jìn)庫數(shù)量 from deleted)else if exists(select 零件代號 from deleted where 零件代號=(select 零件代號 from inserted) and 進(jìn)貨代號=(select 進(jìn)貨代號 from inserted) and 進(jìn)庫數(shù)量=(select 進(jìn)庫時間 from inserted) update 零件信息登記 set 庫存數(shù)量 = 庫存數(shù)量+(select 進(jìn)庫數(shù)量 from inserted)-(select 進(jìn)庫數(shù)量 from deleted) else beginprint 修改不正確 end-對觸
15、發(fā)器“tri_up零件進(jìn)庫”的相關(guān)驗證信息 update 零件進(jìn)庫登記set 進(jìn)庫數(shù)量= 120where 零件代號=and 進(jìn)貨代號=1120update 零件進(jìn)庫登記set 進(jìn)庫數(shù)量 = 5000where 零件代號= and 進(jìn)貨代號=2187exec pro_select-對“零件出庫登記”數(shù)據(jù)更改是觸發(fā)對“零件信息登記”的更改-同時防止對“零件進(jìn)庫登記”信息的非法更改create trigger tri_up零件出庫on 零件出庫登記after updateasif exists(select 零件代號 from deleted where 零件代號=(select 零件代號 fro
16、m inserted) and 出貨代號 = (select 出貨代號 from inserted) and 出庫數(shù)量(select 出貨代號 from inserted) update 零件信息登記 set 庫存數(shù)量 = 庫存數(shù)量+(select 出庫數(shù)量 from inserted)-(select 出庫數(shù)量 from deleted) else beginprint 修改不正確 end-對觸發(fā)器“tri_up零件出庫”的相關(guān)驗證信息update 零件出庫登記set 出庫數(shù)量 = 20where 零件代號= and 出貨代號 = 1120update 零件出庫登記set 出庫數(shù)量 = 120where 零件代號= update 零件出庫登記set 出貨代號 = 620where 零件代號= exec pro_select-一下代碼為創(chuàng)建相關(guān)規(guī)則、試圖、用戶并授權(quán),來完成數(shù)據(jù)庫的完整性和安全性-相關(guān)的驗證信息省略create rule ru_零件數(shù)量as num=0 exec sp_bindrule ru_零件數(shù)量,零件信息登記.庫存數(shù)量 exec sp_bindrule ru_零件數(shù)量,零件進(jìn)庫登記.進(jìn)庫數(shù)量 exec sp_bindrule ru_零件數(shù)量,零件出庫登記.出庫數(shù)量 exec pro_ins1 ,龍頭,金屬,9.3,-10 exec pro_ins2 ,龍頭,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版美容院美容院美容院美容院美容院員工激勵合同4篇
- 2025年項目部安全管理責(zé)任合同書編制規(guī)范2篇
- 2025年度個人藝術(shù)品鑒定擔(dān)保合同大全4篇
- 2025年水土保持監(jiān)測技術(shù)咨詢與技術(shù)培訓(xùn)合同3篇
- 2025年度個人經(jīng)營性借款合同規(guī)范文本4篇
- 2025年食用菌保健品綠色食品認(rèn)證代理銷售合同3篇
- 專利技術(shù)買賣專項合同(2024年修訂版)版B版
- 2025年度草捆回收與再生利用合同3篇
- 二零二五版供應(yīng)鏈金融服務(wù)-倉儲庫存融資倉單質(zhì)押授信合同3篇
- 2025版化妝品質(zhì)量檢測及售后追蹤服務(wù)合同范本2篇
- 不同茶葉的沖泡方法
- 光伏發(fā)電并網(wǎng)申辦具體流程
- 建筑勞務(wù)專業(yè)分包合同范本(2025年)
- 企業(yè)融資報告特斯拉成功案例分享
- 運動技能學(xué)習(xí)與控制完整
- 食管癌的早期癥狀和手術(shù)治療
- 垃圾分類和回收利用課件
- 北侖區(qū)建筑工程質(zhì)量監(jiān)督站監(jiān)督告知書
- 法考客觀題歷年真題及答案解析卷一(第1套)
- 央國企信創(chuàng)白皮書 -基于信創(chuàng)體系的數(shù)字化轉(zhuǎn)型
- 6第六章 社會契約論.電子教案教學(xué)課件
評論
0/150
提交評論