




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優(yōu)質文檔-傾情為你奉上 2012年 3 月 14 日課題:數據庫設計(食堂管理系統(tǒng))目的和要求:1. 掌握數據庫需求分析2. 掌握數據庫概念結構設計與邏輯結構設計方法3. 掌握創(chuàng)建數據庫、表、約束、視圖、存儲過程、觸發(fā)器的方法4. 掌握權限的設置方法5. 掌握備份與恢復的方法操作內容:設計數據庫課題:食堂管理系統(tǒng)一、數據需求分析:在搜集資料和分析用戶應用要求的基礎上,形成該數據庫系統(tǒng)的應用需求說明;二、涉及到的表:通過需求分析確定表結構。1、分幾個表2、表中需哪些列,列名、數據類型、長度;3、可否為空值;(表示未知、不可用或將在以后添加數據)4、需使用的約束:主鍵,外鍵,默認值,check
2、,唯一值約束。三、創(chuàng)建視圖四、存儲過程五、觸發(fā)器六、權限設置七、數據備份與恢復設計一、 需求分析1. 系統(tǒng)分析隨著時代的進步, 如今各個服務行業(yè)也都逐漸發(fā)展壯大起來,尤其是食堂服務業(yè),其在服務范圍、服務數量和服務內容上都有著非常大的膨脹幅度,因此如何對如此復雜而頻繁的服務活動進行管理就屬于“食堂管理”的內容。其主要包括:職員資料管理、物品管理、消費內容管理、席位管理、客戶評價管理,工資管理等,它是現代食堂管理中的一個重要組成部分。 2. 功能需求分析“食堂管理” 包括很多項目,以前食堂管理人員要記錄大量的用戶消費內容,然后通過計算器進行一系列的加減乘除運算, 最后得出一位顧客的“應付金額”,這
3、樣做的效率和準確度可想而知。 如果使用計算機來實現對食堂服務業(yè)的智能管理,從選擇菜、酒水、主食,到計算“應付金額”,最后到打印消費內容,計算機都可以很準確、很快捷地進行處理,這些都是“食堂管理系統(tǒng)”的功能。一個完善的“食堂管理系統(tǒng)”可以很好地管理食堂服務業(yè)的各項內容,這樣不僅能更好地服務顧客,而且可以為經營者創(chuàng)造更大的利潤。針對每部分的具體功能我們又做了如下的詳細分析: 職員管理管理物品管理席位管理營業(yè)管理食堂管理系統(tǒng)評價管理工資管理二、 涉及的表職員資料屬性類型大小是否為空約束職員編號char6否主鍵。6位數姓名varchar20否職位varchar20否性別Char2否,默認“男”男或女民
4、族varchar10否,默認“漢族”籍貫varchar10否,默認“廣東”出生日期datetime否身份證號char18否婚姻狀況char4否,默認“未婚”未婚或已婚家庭地址varchar30否聯系電話varchar11否備注varchar30是物品表屬性類型大小是否為空約束物品編號char6否主鍵。6位數物品名字varchar20否所屬類型char4否,默認“主食”主食、酒水或其他價格/元int否是否售馨char2否,默認“否”是或否品牌varchar30是備注varchar30是席位表屬性類型大小是否為空約束席位號char6否主鍵,6位數負責人編號外鍵人數int否,默認“8”1至20狀態(tài)c
5、har4否,默認“空閑”正在使用,預定或空閑日期datetime否備注varchar30是銷售記錄屬性類型大小是否為空約束類型外鍵數量int否方式varchar10否,默認“現場”現場、預定或外賣日期datetime否金額/元int否備注varchar30是評價情況屬性類型大小是否為空約束職員編號外鍵評價級別char4否,默認“優(yōu)”優(yōu)、良、一般、差日期datetime否,默認當天備注varchar30是工資表屬性類型大小是否為空約束職員編號外鍵工資/元int否日期datetime否備注varchar30是SQL 命令創(chuàng)建數據庫create database 食堂管理系統(tǒng)on primary (
6、name= stglxt_data,filename=e:stglxt_data.mdf)log on (name=stglxt_log1,filename=e:stglxt _log.ldf)創(chuàng)建表create table 職員資料(職員編號char(6) not null primary keycheck(職員編號like0-90-90-90-90-90-9),姓名varchar(20) not null,職位varchar(20) not null,性別char(2) not null check(性別=男 or 性別=女) default 男,民族varchar(8) null def
7、ault 漢族,出生日期datetime not null,身份證號碼char(18) not null unique,婚姻狀況char(4) not null check(婚姻狀況=已婚 or 婚姻狀況=未婚) default 未婚,聯系電話varchar(11) not null unique,備注varchar(30)create table 物品表(物品編號 char(6) not null primary key,物品名字 varchar(20) not null,所屬類型 char(4) not null check(所屬類型=主食or 所屬類型=酒水 or 所屬類型=其他) de
8、fault 主食,價格 money not null,是否售馨 char(2) not null check(是否售馨=是 or 是否售馨=否) default 否,品牌 varchar(30),備注 varchar(30)create table 席位表(席位號char(6) not null primary key,負責人編號char(6) not null foreign key references 職員資料(職員編號) on update cascade on delete cascade,人數int not null,狀態(tài)char(4) not null check(狀態(tài)=使用 o
9、r 狀態(tài)=預定 or 狀態(tài)=空閑) default 空閑,日期datetime not null,備注varchar(30)create table 銷售記錄(類型char(4) not null check(類型=主食or 類型=酒水 or 類型=其他) default 主食,數量int not null,方式char(4) not null check(方式=現場 or 方式=預定 or 方式=外賣) default 現場,金額money not null,日期datetime not null,備注varchar(30)create table 評價情況(職員編號 char(6) not
10、 null foreign key references 職員資料(職員編號) on update cascade on delete cascade,評價級別char(4) not null check(評價級別in (優(yōu),良,一般,差) default 優(yōu),日期datetime not null default getdate(),備注varchar(30)create table 工資表(職員編號char(6) not null foreign key references 職員資料(職員編號) on update cascade on delete cascade,工資money no
11、t null,日期datetime not null,備注varchar(30)所有表的截圖如下:三、 視圖設計1. 為了方便查看職員的評價與對應的職員,所以要建一個“職員信息與評價表”,以顯示職員的評價的同時,還可以看到該職員的一些個人信息。create view 職員信息與評價表asselect 姓名,性別,職位,聯系電話,評價級別,日期from 職員資料 a, 評價情況bwhere a.職員編號=b. 職員編號2. 為了方便查看物品的銷售記錄以及物品的信息,所以建立一個“物品信息與銷售情況表”。create view 物品信息與銷售情況表asselect 物品名字,所屬類型,價格,品牌,
12、方式,日期,數量from 銷售記錄 a, 物品表 bwhere a.類型=b. 所屬類型3. 為了在職員信息中,可以方便看到該職員的工資,所以建立一個“職員信息工資表”create view 職員信息工資表asselect 姓名,性別,職位,聯系電話,工資(元),日期from 職員資料 a, 工資表 bwhere a.職員編號=b. 職員編號四、 存儲過程1. 創(chuàng)建一個存儲過程,通過給定職位可查看該職位所有職員的個人信息。create proc 查詢所指定職位的職員基本信息職位 varchar(20)asselect 職位,姓名,性別,民族,籍貫,出生日期,身份證號,婚姻狀況,家庭住址,聯系電
13、話,備注from 職員資料where職位=職位2. 創(chuàng)建一個存儲過程,通過給定職員編號可刪除該職員create proc 刪除所指定的職員職員編號 char(6)asdelete 職員資料where 職員編號=職員編號五、 觸發(fā)器1. 在評價情況表中添加記錄后,統(tǒng)計某職員的優(yōu)評數量,在本月1號到到添加日期這段時間的好評達到10次將在職員資料表中為該職員的備注欄添加上“工作中表現優(yōu)秀!”create trigger 優(yōu)評備注 on 評價情況after insertasdeclare a varchar,b intbeginselect a=職員編號 form inserted where 評價級
14、別=優(yōu)select b=count(*)form 評價情況 where 評價級別=優(yōu)and 職員編號=a and dateadd(day,-1,getdate())10beginupdate 職員資料set 備注=” 工作中表現優(yōu)秀!”where 職員編號=aendelseend2. 在評價情況表中添加記錄后,統(tǒng)計某職員的優(yōu)評數量,在本月1號到到添加日期這段時間的差評達到10次將在職員資料表中為該職員的備注欄添加上“工作中表現糟糕!”。create trigger 優(yōu)評備注 on 評價情況after insertasdeclare c varchar,d intbeginselect c=職員
15、編號 form inserted where 評價級別=差select d=count(*)form 評價情況 where 評價級別=差and 職員編號=c and dateadd(day,-1,getdate())10beginupdate 職員資料set 備注=” 工作中表現糟糕!”where 職員編號=aendelseend六、 權限設置我們所設計的教師檔案管理系統(tǒng)根據實際情況會用到四類用戶,有食堂所有者、管理者、普通員工,還有客戶。食堂所有者在這管理系統(tǒng)種具有全部權限,食堂的管理人員具有職員管理,物品管理,營業(yè)管理,評價管理的添加刪改權限。 食堂普通職員具有席位管理的添加刪改權限,方便
16、對日常工作的管理??蛻艟哂性谠u價情況表上添加對職員的評價情況的權限,但是不能修改和刪除。1、新建了三個用戶分別代表四類用戶,所有者、管理者、普通員工,客戶,分別設有密碼。命令如下:exec sp_addlogin 所有者,111exec sp_addlogin 管理者,222exec sp_addlogin 普通員工,333exec sp_addlogin 客戶,4442、授予所有者所有權限給 所有者 授予食堂管理系統(tǒng)數據庫訪問權,并給其分配為該數據庫的擁有者:db_owner,在該數據庫中擁有所有權限;命令如下:use 食堂管理系統(tǒng)exec sp_grantdbaccess 所有者goexe
17、c sp_addrolemember db_owner,所有者2、通過所有者用戶給普通員工授予權限,命令如下:use 食堂管理系統(tǒng)exec sp_grantdbaccess 普通員工gogrant select on 席位表 to 普通員工3、通過所有者用戶給管理者授予權限,命令如下:use 食堂管理系統(tǒng)exec sp_grantdbaccess 管理者gogrant select,insert,update on 職員資料 to 管理者grant select,insert,update on 物品表 to 管理者grant select,insert,update on 銷售記錄 to 管
18、理者grant select,insert,update on 評價情況 to 管理者七、 數據備份與恢復設計為了防止數據可能在運行過程中出現某些意外的錯誤而導致數據丟失等嚴重問題,數據庫的備份與恢復在實際的數據庫系統(tǒng)開發(fā)中有著十分重要的意義。1. 針對系統(tǒng)的數據庫分析:為了防止突發(fā)事件對現存數據庫的破壞,應該隨時將數據庫信息進行備份,考慮到三種備份空間與時間上的優(yōu)化,我們采取備份策略:1) 有規(guī)律的進行完整數據庫備份,可以隔一段時間,在操作數據庫不頻繁的時間段進行;2) 在較小的時間間隔內進行差異備份,比如一天;3) 在相鄰的兩次差異備份之間進行事務日志備份,可以每半個小時一次,以補充備份在
19、完整數據庫備份與差異備份進行之間之間進行的事務。2. 考慮食堂管理系統(tǒng)實際情況,我們采取恢復策略:先恢復最近一次的數據庫備份,接著進行差異備份恢復,最后進行事務日志備份的恢復。因為我們同樣關心數據庫狀態(tài)之間的變化,所以采用完整數據庫恢復策略。3. 由于食堂管理系統(tǒng)的數據量會隨時間不斷增多,可能出現很多的人員的調動和調整,占據存儲空間的同時又降低數據庫訪問的效率,針對這方面我們采?。好?年對教師教師基本信息進行數據備份,備份數據另保存,同時將這些已備份的數據從食堂管理系統(tǒng)中刪除。數據庫備份備份:數據庫備份就是制作數據庫結構和數據的拷貝,以便在數據庫遭到破壞的時候能夠恢復數據庫。備份數據庫語法ba
20、ckup database 要備份的數據庫名to 用來備份的備份設備名/備份文件名 with format/init/noinit/restart/differentialformat:完全刪除備份設備原內容后備份init:完全刪除備份設備除標題外的原內容noinit:備份內容添加到備份設備原有內容后restart:在中斷點重新備份differential:進行差異性備份事務日志備份的語法:backup log 要備份的數據庫名to 用來備份的備份設備名/備份文件名恢復數據庫1、數據庫恢復:數據庫恢復就是把數據庫備份加載到系統(tǒng)中。數據庫備份后,一旦系統(tǒng)發(fā)生崩潰或者執(zhí)行了錯誤的數據庫操作,就可以
21、從備份文件中恢復數據庫。系統(tǒng)在恢復數據庫的過程中,自動執(zhí)行安全性檢查、重建數據庫結構以及完整數據庫內容。 2、下面三個情況會導致恢復失?。悍掌魃系臄祿煳募蛡浞菁械臄祿募灰恢隆H绻趓estore語句中指定的數據庫已經存在,并且該數據庫與在備份文件中記錄的數據庫不同。不能提供用于恢復數據庫的全部文件或文件組。3、恢復數據庫時應注意的兩個問題:在數據庫恢復前,應該首先刪除故障數據庫,以便刪除對故障硬件的任何引用。在數據庫恢復前,必須限制用戶對數據庫的訪問恢復數據庫語法restore database 數據庫名from 備份設備名with file=備份文件序號Norecovery
22、*還原還沒有最后完成,還能接收新的日志備份文件,用來恢復 Recovery *還原已經結束,數據庫可以恢復使用恢復事務日志restore log 數據庫名from 備份設備邏輯名with file=備份文件序號,norecovery/recovery創(chuàng)建備份設備exec sp_addumpdevice disk ,邏輯名稱 ,物理名稱對數據庫進行如下操作:創(chuàng)建好食堂管理系統(tǒng)數據庫,然后對數據庫進行完全備份;對數據庫進行相對應的操作后,進行差異備份;對數據庫再次進行相關操作后,進行日志備份;破壞數據庫,然后進行還原(選擇最佳還原方案)。還原后,再次進行相關操作,然后進行一次差異備份。破壞數據庫,
23、然后進行還原(選擇最佳還原方案)。還原后,進行一次完全備份。再次破壞數據庫,最后一次還原(選擇最佳還原方案)。命令如下: exec sp_addumpdevice disk,bbb,e:bbb.bakbackup database 食堂管理系統(tǒng) to bbb2、backup database 食堂管理系統(tǒng)to bbb with differential3、backup log 食堂管理系統(tǒng) to bbb4、drop database 食堂管理系統(tǒng)gorestore database 食堂管理系統(tǒng) from bbb with file=1,norecoveryrestore database 食
24、堂管理系統(tǒng) from bbb with file=2,norecoveryrestore log 食堂管理系統(tǒng) from bbb with file=35、backup database 食堂管理系統(tǒng) to bbb with differential6、drop database 食堂管理系統(tǒng)gorestore database食堂管理系統(tǒng) from bbb with file=1,norecoveryrestore database食堂管理系統(tǒng) from bbb with file=47、backup database食堂管理系統(tǒng) to bbb8、drop database 食堂管理系統(tǒng)go
25、restore database 食堂管理系統(tǒng) from bbb with file=5總結通過這次的數據庫課程設計,獨立完成了食堂管理系統(tǒng)的設計,從這次的系統(tǒng)設計中我領略到了:1. 開放一個數據庫應用系統(tǒng),通常需要進過需求分析、概念結構設計、邏輯結構設計、物理結構設計、對功能的SQL語句的相應描述5個階段;2. 進行數據庫設計首先需要準確了解與分析用戶需求、需求分析是整個設計過程的基礎,是最困難、最耗時間的一步。作為“地基”的需求分析是否做得充分與準確,決定了在其上構建數據庫大廈的速度與質量。需求分析做的不好,甚至會導致整個數據庫設計返工重做。3. 數據庫的設計艱苦而漫長,必須踏踏實實,走好
26、每一步。要做到人性化,科學管理是根本但是也是最難的,為此,我會加倍努力投入學習,以期待能設計一個根據我完整的數據庫系統(tǒng)。課程設計報告 2012 年 3 月17日課題:前臺連接后臺數據庫目的和要求:讓學生體會一下如何用最簡單的方法讓連接后臺的數據庫,在前臺的窗體中實現對后臺數據庫中數據的添加、刪除、修改、查詢等操作。內容:1. 制作如下圖所示的網頁,可供用戶登錄對進行數據庫操作。輸入正確的用戶名是sa,密碼為:123,如下圖2. 制作如下圖所示的網頁,可供用戶選擇對數據庫要操作的的表進行選擇3. 制作如下圖所示的網頁,可以對一個表進行添加、刪除、修改、查詢、查看等基本操作。這里選擇了物品表,功能
27、如下圖所示4. 下面為具體的查看、查詢、添加、更新、刪除的操作頁面:查看:查詢:(以查詢“雞蛋”為例)添加:(這里成功添加了數據)編輯、更新:(顯示了上面添加的數據)5. 下面是一些其他頁面的展示:設計后總結 這次的前臺連接后臺數據庫的實驗是在我們在沒有任何asp.Net基礎的情況下,進行設計的,但是在老師的悉心教導下,我還是順利完成了網頁的制作。雖然實驗操作過程中遇到了很多問題,又是第一次自己動手做前臺,一切都是那么的生疏,但是老師給我們知識的時間雖然有限但是恰到好處,在這緊張的時間中我們領會了其中的要領,一步步解決了問題,最后做出的作品雖說不是很完善,但是花的精力確實不少。不過很欣慰的是,
28、在這其中我學會更多,隨著實驗一步步的進行,我從中學到了平時理論課學不到的東西,而且通過動手,平時很多不明朗的東西也漸漸明朗起來了!老師在此也付出了辛勤,我在此表示致敬!魚知水恩,乃幸福之源也。魚離不開水,人離不開親人和朋友,當你處于逆境和災難時,幫助你一臂之力,渡過難關的人,都是你的親人和朋友。吃水不忘挖井人,度過苦難,不能忘記援助過你的人。知恩圖報,善莫大焉。一個人要想獲得幸福,必須懂得感恩。生活需要一顆感恩的心來創(chuàng)造, 一顆感恩的心需要生活來滋養(yǎng)。一飯之恩,當永世不忘。順境里給你幫助的人,不能全部稱作朋友,但是能夠在你逆境時依然愿意援助你,走出困境的人,一定是你要用一生去感謝和珍惜的人。唐代李商隱的晚晴里有這樣一句詩:天意憐幽草,人間重晚晴。久遭雨潦之苦的幽草,忽遇晚晴,得以沾沐余輝而平添生意。當一個人闖過難關的時候,一定要記住那些支撐你,陪你一起走過厄運的朋友和親人,這個世界誰也不虧欠誰,幫你是情分,不幫你是本分。如古人所說:淡看世事去如煙,銘記恩情存如血。學會感恩父母養(yǎng)育之恩,學會感恩朋友的幫助之情,生活里做一個有
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 阿米巴經營考試題及答案
- 街道社工考試題及答案
- 神經源性膀胱護理查房
- 物業(yè)管理及物業(yè)電工培訓
- 冠脈搭橋術后心理護理
- 腫瘤學概論:化療專題
- 質量意識培訓報告
- 導尿管技術及尿管護理
- 犬貓尿常規(guī)檢查規(guī)范與解讀
- 鋼板材質培訓
- 施工費用控制管理制度
- 律師事務所數據管理制度
- 2025年衛(wèi)生系統(tǒng)招聘考試《職業(yè)能力傾向測試》新版真題卷(附詳細解析)
- 大學生心理健康教育導論
- 河南省洛陽市2024-2025學年高二下學期6月期末質檢物理試卷(含答案)
- 浙江理工大學《統(tǒng)計學與R語言》2023-2024學年第二學期期末試卷
- 安全生產獎罰管理制度
- 2025年全省民政行業(yè)職業(yè)技能大賽(孤殘兒童護理員)備考試題庫(含答案)
- 南京鼓樓醫(yī)院合作協(xié)議書
- DB32/T 3375-2018公共場所母乳哺育設施建設指南
- 規(guī)培指導教師考試試題及答案
評論
0/150
提交評論