




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、工廠物資管理數據庫系統設計報告班級: 11級信班 學號: 31112300510 姓名: 賀媛 目錄一、設計任務說明1二、需求分析1三、概念模型設計21.實體E-R圖設計22.實體聯系描述43.全局概念結構E-R圖設計4四、邏輯模型設計5五、物理模型設計61.數據庫設計62.數據表描述:63觸發器:84.視圖:85.存儲過程:8六、數據庫實施81.創建數據庫:82.創建備份文件:93.創建數據表文件93.創建索引124.創建觸發器:125.創建視圖:136.修改語句14七、總結15八、參考文獻16一、設計任務說明1.理解數據庫應用與工廠物資管理體系;2.掌握模型設計定義以及如何用數據庫實現創建
2、;3.掌握數據庫實現管理以及語句、數據上的修改;二、需求分析通過對工廠物資管理工作過程及數據流圖的認真分析,得到如下的有用信息: 1. 工廠物資管理設計多種零件的存放。2. 每件零件需要記錄零件號碼、條形碼、類別、價格、出廠日期等基本信息。3. 除此之外,還需要記錄零件的其他相關信息,如零件供應商的信息,存放的倉庫信息、何種項目需要使用何種零件等。4. 同時需要提供對信息的添加、編輯、刪除等操作。5. 供應商(supplier)信息,包括的數據項有:供應商號、姓名、賬號、地址、電話號碼。 6. 項目(project)信息,包括的數據項有:項目號、預算、開工日期。7. 零件(part)信息,包括
3、的數據項有:零件號、名稱、規格、單價、描述。8. 倉庫(warehouse )信息,包括的數據項有:倉庫號、面積、地址、電話號碼。 9. 職工(staff)信息,包括的數據項有:職工號、姓名、性別、年齡、職稱三、概念模型設計1.實體E-R圖設計(1)供應商:供應商號、姓名、地址、電話號、賬號。供應商號賬號姓名地址電話號供應商圖3.1供應商實體ER圖(2)零件:編號、名稱、倉庫號、描述、單價、規格。零件號單價描述名稱規格零件、圖3.2零件商實體ER圖(3)項目:項目號、預算、開工日期。開工日期預算項目號項目圖3.3項目實體ER圖(4)倉庫:倉庫號、面積、電話號、管理號、職工號。面積倉庫號電話號倉
4、庫圖3.4倉庫實體ER圖(5)職工:姓名、年齡、名稱、職工號。職稱姓名職工號年齡職工圖3.5職工實體ER圖2.實體聯系描述采購部門與供應商的聯系,為多個項目提供多種零件,供應商、項目和零件三者之間具有多對多的聯系。倉庫管理部門主要記錄零件數量情況,一間倉庫可以存放多種零件,一種零件可以存放在多建倉庫中,因此倉庫和零件之間具有多對多的聯系,用數量來表示某種零件在某建倉庫中的數量。人事部門要安排職工的工作任務,一間倉庫有多個職工當倉庫保管員,一個職工只能在一間倉庫工作,因此倉庫和職工之間存在一對多的聯系。職工之間具有領導-被領導關系,即倉庫主任領導若干保管員,因此直供實體具有一對多的聯系。3.全局
5、概念結構E-R圖設計供應供應商供應商號賬號電話地址姓名供應量項目項目號預算開工日期零件庫存名稱描述零件號規格單價倉庫面積倉庫號電話號職工姓名年齡職工號庫存量職稱領導工作圖3.6倉庫系統整體ER圖四、邏輯模型設計下面是“工廠物資管理”的E-R數據模型轉換成關系模型的所有模型(1)根據規則1,5實體對應以下5個關系模式。l 倉庫資料(倉庫號、面積、電話號碼),主鍵為倉庫號。l 零件資料(零件號,名稱,規格,單價,描述),主鍵為零件號。l 供應商資料(供應商號,姓名,地址,電話,賬號),主鍵為供應商號。l 項目資料(項目號,預算,開工日期),主鍵為項目號。l 職工資料(職工號,姓名,年齡,職稱),主
6、鍵為職工號。(2)根據規則2,倉庫與零件之間存在多對多的關系,對應關系模式如下。l 庫存量(倉庫號,零件號,庫存量),主鍵為倉庫庫與零件號的組合。(3)根據規則3,倉庫與職工實體之間存在一對多的二元聯系,對應的關系模式如下。l 工作情況表(職工號、倉庫號、工作時間),主鍵為職工號。(4)根據規則5,供應商、項目與零件三實體之間的三元聯系,對應的關系模式如下。l 供應情況表(供應商號、零件號、項目號 供應量),主鍵為項目號,供應商號與零件號的組合。(5)根據規則7,將職工實體拆分為普通員工和班長兩個子集,兩子集之間存在一對多的聯系,對應的關系模式如下。l 普通員工(職工號,姓名,年齡),主鍵為職
7、工號。l 班長(工號,姓名,年齡),主鍵為工號。l 領導(職工號),主鍵為職工號。五、物理模型設計1.數據庫設計(1)邏輯數據庫名稱:goodsManagment(2)數據文件:goods DAT.MDF,始初大小為3MB,最大空間為20MB,增加量為2MB。(3)日志文件:goods LOG.LDF,始初大小為1MB,最大空間為20MB,增加量為2MB。(4)備份設置名:BACKUP;goodsbackup.dat。2.數據表描述:項目資料表字段類型長度可否為空備注項目號Int否主鍵預算Int可開工日期datetime否倉庫資料表字段類型長度可否為空備注倉庫號Int否主鍵面積Int否電話號碼
8、Char15否零件資料表字段類型長度可否為空備注零件號Int否主鍵名稱Varchar30否規格Varchar20否電話號碼Char15可描述Text可單價int否職工資料表字段類型長度可否為空備注職工號Int否主鍵姓名char8否年齡Int可職稱char8可供應商資料表字段類型長度可否為空備注供應商號Int否主鍵姓名char8否地址Varchar20否電話號碼char7賬號Int庫存情況表字段類型長度可否為空備注倉庫Int否主鍵零件Int否庫存量int否供應情況表字段類型長度可否為空備注供應商號Int否主鍵零件號Int否項目號Int否供應量Int工作情況表字段類型長度可否為空備注職工號Int否
9、主鍵倉庫號Int否工作時間datetime否3觸發器: (1)要求供應商資料中的供應商號被修改時,供應情況表中的供應商號也被修改。名稱:goodsid、(2)要求零件資料中的零件號被修改時,供應情況表與庫存情況表中的零件號也被修改。名稱:goodsid1、(3)要求項目資料中的項目號被修改時,供應情況表中的項目號也被修改。名稱:goodsid2、(4)要求供應商資料中的供應商號只有在供應情況表中的相應供應商號不存在時,方可刪除。名稱:goodsid3、(5)要求零件商資料中的零件號只有在供應情況表與庫存情況表中的相應零件號不存在時,方可刪除。名稱:goodsid4、(6)要求項目資料中的項目號
10、只有在供應情況表中的相應項目號不存在時,方可刪除。名稱:goodsid5。4.視圖:為用戶提供包含供應商姓名、零件號、項目號、和零件總價格的視圖。名稱: project5.存儲過程:根據用戶所提交的職工號,為用戶提供職工信息。名稱 :lookworker。六、數據庫實施1.創建數據庫:create database goodsManagmenton(name = goosaDAT,filename = 'c:SQLgoodsDAT.MDF',size = 3,maxsize=20,filegrowth = 2)LOG on(name = 物資管理LOG,filename=
11、9;c:SQLgoodsLOG.ldf',size=1,maxsize=20,filegrowth=2)2.創建備份文件:sp_addumpdevice'disk','BACKUP1','D:sqlgoodsbackup1.dat'gobackup database goodsManagment to BACKUP13.創建數據表文件create table 倉庫資料(倉庫號 int primary key,面積 int,電話號碼 char(15)圖6.1倉庫數據表顯示圖create table 零件資料(零件號 int primary
12、key,名稱 varchar(30),規格 varchar(20),電話號碼 char(15),描述 Text,單價 int)圖6.2零件數據表顯示圖create table 項目資料(項目號int primary key,預算int,開工日期datetime)圖6.3項目數據顯示圖create table 職工資料(職工號int primary key,姓名char(8),年齡int,職稱char(8)圖6.4職工數據顯示圖create table 供應商資料(供應商號int primary key,姓名char(8),地址varchar(20),電話號碼char(7),賬號int)圖6.5
13、供應商數據顯示圖create table 庫存情況表(倉庫號int,零件號int,庫存量int)圖6.6倉庫情況表顯示圖create table 供應情況表(供應商號int references 供應商資料(供應商號),零件號int references 零件資料(零件號),項目號int references 項目資料(項目號),供應量int)圖6.7供應商情況表顯示圖create table 工作情況表(職工號int references 職工資料(職工號),倉庫號int references 倉庫資料(倉庫號),工作時間datetime)圖6.8工作情況表顯示圖3.創建索引create n
14、onclusteredindex IX_倉庫號on 倉庫資料(倉庫號asc)create nonclusteredindex IX_零件號on 零件資料(零件號asc)create nonclusteredindex IX_項目號on 項目資料(項目號asc)create nonclusteredindex IX_職工號on 職工資料(職工號asc)create nonclusteredindex IX_供應商號on 供應商資料(供應商號asc)create nonclusteredindex IX_倉庫號on 庫存情況表(倉庫號asc)create nonclusteredindex IX_
15、供應商號on 供應情況表(供應商號asc)create nonclusteredindex IX_職工號on 工作情況表(職工號asc)4.創建觸發器:(1) create trigger goodid on 供應商資料for updateasbeginif (columns_updated()&01)>0update 供應情況表set 供應情況表.供應商號= (select a.供應商號from inserted a)where 供應情況表.供應商號= (select b.供應商號from deleted b)end(2)create trigger good_1 on 零件資
16、料for updateasbeginif(columns_updated()&01)>0update 供應情況表set 供應情況表.零件號=(select 零件號from inserted)where 供應情況表.零件號=(select 零件號from deleted)update 庫存情況表set 庫存情況表.零件號=(select 零件號from inserted)where 庫存情況表.零件號=(select 零件號from deleted)end(3)create trigger good_2 on 項目資料for update asbeginif(columns_upd
17、ated()&01)>0update 供應情況表set 供應情況表.項目號=(select 項目號from inserted)where 供應情況表.項目號=(select 項目號from deleted)end(4)create trigger good_3 on 供應商資料for delete asif exists(select 供應商號from deleted awhere a.供應商號in(select 供應情況表.供應商號from 供應情況表)beginraiserror('因在供應商資料中存在,不得刪除此條記錄!',16,1)rollback tra
18、nsactionend(5)create trigger good_5 on 零件資料for delete asif exists(select 零件號from deleted awhere a.零件號in(select 供應情況表.零件號from 供應情況表) or a.零件號in(select 庫存情況表.零件號from 庫存情況表)beginraiserror('因在零件資料中存在,不得刪除此條記錄!',16,1)rollback transactionend(6)create trigger good_4 on 項目資料for delete asif exists(se
19、lect 項目號from deleted awhere a.項目號in(select 供應情況表.項目號from 供應情況表)beginraiserror('因在零件資料中存在,不得刪除此條記錄!',16,1)rollback transactionend5.創建視圖:create VIEW project(供應商姓名,零件名,項目號,零件總價格)asselect 姓名,名稱,項目號,供應量* 單價from 供應商資料,供應情況表,零件資料where 供應商資料.供應商號= 供應情況表.供應商號and 供應情況表.零件號= 零件資料.零件號創建存儲過程:create proce
20、dure lookworkerid intasselect 職工號from 職工資料where 職工資料.職工號= id6.修改語句(1)use goodsManagementgoupdate 供應商資料set 供應商號= 1002where 供應商號= '2001'go select * from 供應商資料圖6.9供應商修改顯示圖(2) use goodsManagementgoupdate 項目資料set 項目號= 8where 項目號= '1'go select * from 項目資料圖6.10項目修改顯示圖(3) use goodsManagement
21、goupdate 零件資料set 零件號= 106where 零件號= '102'go select * from 零件資料圖6.11零件修改顯示圖(4) use goodsManagementgodelete from 供應商資料where 供應商號='1002'goselect*from 供應商資料(5)use goodsManagementgodelete from 零件資料where 零件號='101'goselect*from 零件資料(6) use goodsManagementgodelete from 項目資料where 項目號='3'goselect*from 項目資料七、總結本系統是一個典型的信息管理系統,其主要通過數據庫系統設計方法進行課題選擇、需求分析、系統設計等步驟實現。開發本系統的過程中,首先要對工廠物資管理進行系統調研,熟悉其中的零件的存儲管理、零件的使用管理和供應記錄管理流程、步驟,完成需求分析;其次在系統需求分析的基礎上,發現工廠物資管理中需要解決的各種問題,并在總體設計把握好對問題的分析、理解,進而解決問題;使用數
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025后勤服務人員雇傭合同模板
- 班級消防安全主題班會工作總結(10篇)
- 我的夢想家園想象與寫景結合作文9篇
- 秋天的畫卷寫景文(15篇)
- 學前教育研究名詞解釋
- 互聯網餐廳訂餐系統合作協議
- 節日里的家鄉寫景并抒情作文(11篇)
- 文化產業管理考試試卷及答案2025年
- 職場英語能力考試試卷及答案2025年
- 邯鄲計件加工合同(3篇)
- ZJ17ZB45卷接包設備點巡檢作業規程
- 降低壓力性損傷發生率品管圈課件
- 《嘭嘭嘭》閱讀測試題(附答案)
- 《CSR培訓資料》課件
- 《生活環境和健康》課件
- 《集體經營性建設用地使用權出讓監管協議》示范文本(試點試行)
- 工作與個人生活平衡安排
- 深圳律師法律服務產品清單(第二版)
- 會務服務投標方案(技術標)
- 施工組織設計(橫道圖+平面圖)
- 變形監測方案
評論
0/150
提交評論