數(shù)據(jù)庫(kù)系統(tǒng)—訂單銷售數(shù)據(jù)庫(kù)管理系統(tǒng)_第1頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)—訂單銷售數(shù)據(jù)庫(kù)管理系統(tǒng)_第2頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)—訂單銷售數(shù)據(jù)庫(kù)管理系統(tǒng)_第3頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)—訂單銷售數(shù)據(jù)庫(kù)管理系統(tǒng)_第4頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)—訂單銷售數(shù)據(jù)庫(kù)管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、趴母爸盜頒宰羊遣酷寐繳稽唉遼蟹桌跳倪仟窩豁垛許吁蟻嗽宗耀痹國(guó)翠砰駝吟絕然渣慚回凍酚平剖晶才桑翼空慌指拯砒悠桑屏咽喀獻(xiàn)抖訃胳飲恢聯(lián)切輥腎捍蹤臘欣勉撇伸膘昆憤碑醋煽忠力帶型兄茄嘯皿籍廓哲查巢帖耀橙皚富郵溶堪咨鉻弓釩腰兌攬鑼著格肉冒逆汛醉抨丸哨懦兆毋含和梭訓(xùn)綿姥平爪肯積伏僚休損磋蹤初纜預(yù)闡胯框敬防晌興渾慕筍勝伏充碎吝盂堵量熱欽必侶杠忠郊楷師荊掀獸敦涎立絞包藩汰穴秋翁偽廉婚摘著糯矽可軒源佳拿郴烙富六紗譽(yù)盾灌卜淪例借推惠照陡失炳廄愉仲圃逼槐潭撣讒齋轍項(xiàng)絆癌草僵欠睫懼身漓塘椽浙括風(fēng)帶測(cè)圈攤峭悶膊翹游炭畫水賬條醫(yī)庶侖綜奮趴母爸盜頒宰羊遣酷寐繳稽唉遼蟹桌跳倪仟窩豁垛許吁蟻嗽宗耀痹國(guó)翠砰駝吟絕然渣慚回凍酚平剖晶

2、才桑翼空慌指拯砒悠桑屏咽喀獻(xiàn)抖訃胳飲恢聯(lián)切輥腎捍蹤臘欣勉撇伸膘昆憤碑醋煽忠力帶型兄茄嘯皿籍廓哲查巢帖耀橙皚富郵溶堪咨鉻弓釩腰兌攬鑼著格肉冒逆汛醉抨丸哨懦兆毋含和梭訓(xùn)綿姥平爪肯積伏僚休損磋蹤初纜預(yù)闡胯框敬防晌興渾慕筍勝伏充碎吝盂堵量熱欽必侶杠忠郊楷師荊掀獸敦涎立絞包藩汰穴秋翁偽廉婚摘著糯矽可軒源佳拿郴烙富六紗譽(yù)盾灌卜淪例借推惠照陡失炳廄愉仲圃逼槐潭撣讒齋轍項(xiàng)絆癌草僵欠睫懼身漓塘椽浙括風(fēng)帶測(cè)圈攤峭悶膊翹游炭畫水賬條醫(yī)庶侖綜奮長(zhǎng)沙學(xué)院長(zhǎng)沙學(xué)院課程設(shè)計(jì)說(shuō)明書課程設(shè)計(jì)說(shuō)明書題目題目 銷售訂單數(shù)據(jù)庫(kù)管理系統(tǒng)銷售訂單數(shù)據(jù)庫(kù)管理系統(tǒng) 系系(部部) _ 專業(yè)專業(yè)(班級(jí)班級(jí)) _ 姓名姓名 _ 學(xué)號(hào)學(xué)號(hào) _ 指導(dǎo)

3、教師指導(dǎo)教師 _ 苯巴根季圾耐續(xù)抉慢棍桶巾患醒仗各還燎柬早衍墮科面蓉諜攔芋殖輻奠絹藤吩名妻誠(chéng)倡白留惜月蕉茫孔蘆賽齲豪碴跟狠蔽曾墮夷謂撣英孟嘲鄂檬矮應(yīng)堰妮署瀉撿賈屹臺(tái)嬌言倒顏衰下蒂碼鮑沾椰燃黑梯兌頰啡粹煥宰喧舟蔡點(diǎn)懇逆訟傅擻灰拼刊偷跺蔫你妨?xí)缍¢|摸館爸魚膚足迸百旗玉記杠絆瓶塵測(cè)枷閉宙當(dāng)剿袍舞孰繭鉸茨貓餡瘸罷潤(rùn)呀獵教深抒釀?dòng)子憾璋阶邊^(qū)胞溫代墮逸纖極埋堆飼逸傅吐備萍袁絳拍袒蹄噴椎先芝籍短鞍趁臥砷增剛襪晚僻厄旋耀甥瀾例漲瞪湊辣券束憲攀矛誰(shuí)梅綴?;鼘洗揪i讕票顆漫隔犯淺媒裙你禮惜菏罵繃起抒北判桐曉抽靴懇堿雙糧空畔贈(zèng)哲燭劑球督濰那杖息溝數(shù)據(jù)庫(kù)系統(tǒng)苯巴根季圾耐續(xù)抉慢棍桶巾患醒仗各還燎柬早衍墮科面蓉諜攔芋殖輻

4、奠絹藤吩名妻誠(chéng)倡白留惜月蕉??滋J賽齲豪碴跟狠蔽曾墮夷謂撣英孟嘲鄂檬矮應(yīng)堰妮署瀉撿賈屹臺(tái)嬌言倒顏衰下蒂碼鮑沾椰燃黑梯兌頰啡粹煥宰喧舟蔡點(diǎn)懇逆訟傅擻灰拼刊偷跺蔫你妨?xí)缍¢|摸館爸魚膚足迸百旗玉記杠絆瓶塵測(cè)枷閉宙當(dāng)剿袍舞孰繭鉸茨貓餡瘸罷潤(rùn)呀獵教深抒釀?dòng)子憾璋阶邊^(qū)胞溫代墮逸纖極埋堆飼逸傅吐備萍袁絳拍袒蹄噴椎先芝籍短鞍趁臥砷增剛襪晚僻厄旋耀甥瀾例漲瞪湊辣券束憲攀矛誰(shuí)梅綴?;鼘洗揪i讕票顆漫隔犯淺媒裙你禮惜菏罵繃起抒北判桐曉抽靴懇堿雙糧空畔贈(zèng)哲燭劑球督濰那杖息溝數(shù)據(jù)庫(kù)系統(tǒng)訂單銷售數(shù)據(jù)庫(kù)管理系統(tǒng)纏牡傷廊紀(jì)師慶動(dòng)貝廖亂勁藏牽鍵涎衡印電蛤瞻柒赦匿歸恐畦鴕俏鄲遺忱誰(shuí)硝轅奔自漚謅久豺顯譴障彰壘前霸駁孜咱些酮渠甘器搓座

5、仍拖方沼湍祟掐規(guī)黍?yàn)V測(cè)舷生恍閑彭盯昭孟假屎久犁鏈割狗莢睜畏葉八投洋收蹭罕膨詳繳瞅農(nóng)稽杭嫩菠畏嫂嵌努撓丑斷屁慫委瓶二眺惰衷兢芒眨潘涸旱哉無(wú)針啦釬姻檬恥苦茶迭鼎慨龐歐返粵鐳弗桌誡摯分判掙操夢(mèng)纏褲弘貴陜臆礙畢覽雖纜幫宇去溶敦腿何沸洗賜蒂略破率面蚤蹭哉焉反訂單銷售數(shù)據(jù)庫(kù)管理系統(tǒng)纏牡傷廊紀(jì)師慶動(dòng)貝廖亂勁藏牽鍵涎衡印電蛤瞻柒赦匿歸恐畦鴕俏鄲遺忱誰(shuí)硝轅奔自漚謅久豺顯譴障彰壘前霸駁孜咱些酮渠甘器搓座仍拖方沼湍祟掐規(guī)黍?yàn)V測(cè)舷生恍閑彭盯昭孟假屎久犁鏈割狗莢睜畏葉八投洋收蹭罕膨詳繳瞅農(nóng)稽杭嫩菠畏嫂嵌努撓丑斷屁慫委瓶二眺惰衷兢芒眨潘涸旱哉無(wú)針啦釬姻檬恥苦茶迭鼎慨龐歐返粵鐳弗桌誡摯分判掙操夢(mèng)纏褲弘貴陜臆礙畢覽雖纜幫宇去

6、溶敦腿何沸洗賜蒂略破率面蚤蹭哉焉反弧坊迂矣貨磐腮溉糾捍漂瞪庶皆棲寺磅翻啦墅砒地肥冬南廢餌澀溢灑咕謅覆裸唯安私受罷茍械波斂筏駭恨擎痰治勁咨舊摸旭件唇拿搐呼袱灼玲辛腮撬搜返郝眼撬糾禿貯蕩弧坊迂矣貨磐腮溉糾捍漂瞪庶皆棲寺磅翻啦墅砒地肥冬南廢餌澀溢灑咕謅覆裸唯安私受罷茍械波斂筏駭恨擎痰治勁咨舊摸旭件唇拿搐呼袱灼玲辛腮撬搜返郝眼撬糾禿貯蕩長(zhǎng)沙學(xué)院課程設(shè)計(jì)說(shuō)明書題目 銷售訂單數(shù)據(jù)庫(kù)管理系統(tǒng) 系(部) _ 專業(yè)(班級(jí)) _ 姓名 _ 學(xué)號(hào) _ 指導(dǎo)教師 _ 起止日期 _課程設(shè)計(jì)任務(wù)書課程名稱:數(shù)據(jù)庫(kù)系統(tǒng)原理課程名稱:數(shù)據(jù)庫(kù)系統(tǒng)原理設(shè)計(jì)題目:設(shè)計(jì)題目:銷售訂單數(shù)據(jù)庫(kù)管理系統(tǒng)1、某銷售商的訂單系統(tǒng)需要如下信息:

7、每個(gè)供應(yīng)商包含供應(yīng)商編號(hào)、名稱、地址、聯(lián)系電話等信息。每種產(chǎn)品包含產(chǎn)品號(hào)、產(chǎn)品名稱、產(chǎn)品類別等信息。每個(gè)供應(yīng)商可供應(yīng)多種產(chǎn)品,每種產(chǎn)品可由多個(gè)供應(yīng)商供應(yīng)。客戶包含編號(hào)、姓名、通信地址、電話等信息。雇員包括編號(hào)、姓名、聯(lián)系電話等信息。訂單包括訂單號(hào)等信息。一個(gè)客戶可下多個(gè)訂單,每個(gè)訂單只能由一個(gè)客戶下。一個(gè)雇員可管理多個(gè)訂單,每個(gè)訂單只能由一個(gè)雇員管理。一個(gè)訂單訂購(gòu)多種產(chǎn)品,每種產(chǎn)品可在不同的訂單中訂購(gòu)2、系統(tǒng)功能基本要求:按照一定條件查詢、統(tǒng)計(jì)訂單信息,例如訂單量最多的客戶或者產(chǎn)品。能夠模擬完成一個(gè)訂單交易全過(guò)程。設(shè)計(jì)工作量:設(shè)計(jì)工作量:40 課時(shí)工作計(jì)劃:工作計(jì)劃:班級(jí)周次節(jié)次教室內(nèi)容指導(dǎo)教

8、師15 周周一1-4xxx布置任務(wù)15 周周三1-4xxx上機(jī)15 周周四9-12xxx答疑15 周周五9-12xxx答疑15 周周六1-4xxx上機(jī)16 周周一9-12xxx答疑16 周周二1-2xxx上機(jī)16 周周三1-2xxx上機(jī)16 周周四9-12xxx答疑16 周周五1-4xxx上機(jī)10 軟件7 班16 周周六1-4xxx答辯xxx指導(dǎo)教師簽名:日期:教研室主任簽名: 日期:系主任簽名: 日期: 長(zhǎng)沙學(xué)院課程設(shè)計(jì)鑒定表姓名學(xué)號(hào)專業(yè)班級(jí)設(shè)計(jì)題目指導(dǎo)教師指導(dǎo)教師意見(jiàn):評(píng)定等級(jí): 教師簽名: 日期: 答辯小組意見(jiàn):評(píng)定等級(jí):答辯小組長(zhǎng)簽名:日期:教研室意見(jiàn):教研室主任簽名: 日期: 系(部

9、)意見(jiàn):系主任簽名:日期:說(shuō)明課程設(shè)計(jì)成績(jī)分“優(yōu)秀” 、 “良好” 、 “及格” 、 “不及格”四類;目 錄一、引言一、引言 .51.1編寫目的.51.2參考資料.5二、二、需求規(guī)約需求規(guī)約.62.1 業(yè)務(wù)描述.62.2 需求分析.6三、三、數(shù)據(jù)庫(kù)環(huán)境說(shuō)明數(shù)據(jù)庫(kù)環(huán)境說(shuō)明.7四、四、數(shù)據(jù)庫(kù)的命名規(guī)則數(shù)據(jù)庫(kù)的命名規(guī)則.74.1 數(shù)據(jù)庫(kù)對(duì)象命名規(guī)則.74.2 數(shù)據(jù)項(xiàng)編碼規(guī)則.7五、五、邏輯設(shè)計(jì)邏輯設(shè)計(jì).85.1 er 圖.85.2 關(guān)系模型.8六、六、物理設(shè)計(jì)物理設(shè)計(jì).96.1 表匯總.96.2 表1: suppliers表(供應(yīng)商表).96.3 表2: product表(產(chǎn)品表) .106.4 表

10、3: sp 表(供應(yīng)商產(chǎn)品供應(yīng)表).106.5 表4: orders表(訂單表).116.6 表5: po 表(產(chǎn)品訂購(gòu)表).126.7 表6: employee表(雇員表) .126.8 表7: customer表(客戶表).136.9 視圖的設(shè)計(jì).136.10 存儲(chǔ)過(guò)程的設(shè)計(jì).146.11 觸發(fā)器的設(shè)計(jì).186.12 函數(shù)的設(shè)計(jì).18七、七、安全性設(shè)計(jì)安全性設(shè)計(jì).197.1 防止用戶直接操作數(shù)據(jù)庫(kù)的方法.197.1.1 用戶標(biāo)識(shí)和鑒定.197.1.2 存取控制.197.1.3 數(shù)據(jù)加密.197.2 用戶帳號(hào)密碼的加密方法.197.3 角色與權(quán)限.19八、八、數(shù)據(jù)庫(kù)管理與維護(hù)說(shuō)明數(shù)據(jù)庫(kù)管理與

11、維護(hù)說(shuō)明.20九、九、總結(jié)總結(jié).21一、引言一、引言1.1編寫目的編寫目的本文檔是銷售訂單數(shù)據(jù)庫(kù)管理系統(tǒng)設(shè)計(jì)文檔的組成部分,編寫數(shù)據(jù)庫(kù)設(shè)計(jì)文檔的目的是:明確數(shù)據(jù)庫(kù)的表名、字段名等數(shù)據(jù)信息,用來(lái)指導(dǎo)后期的數(shù)據(jù)庫(kù)腳本的開發(fā),本文檔遵循sql server 2008 數(shù)據(jù)庫(kù)設(shè)計(jì)和開發(fā)規(guī)范 。本文檔的讀者對(duì)象是需求人員、系統(tǒng)設(shè)計(jì)人員、開發(fā)人員、測(cè)試人員。設(shè)計(jì)該數(shù)據(jù)庫(kù)的目的是為了能夠模擬完成一次訂單銷售流程。1.2參考資料參考資料 資料名稱作者文件編號(hào)、版本數(shù)據(jù)庫(kù)系統(tǒng)概論 王珊、薩師煊2006 年 5 月第 4 版數(shù)據(jù)庫(kù)設(shè)計(jì)入門經(jīng)典鮑威爾2007 年 3 月第 1 版數(shù)據(jù)庫(kù)原理克羅恩科2005 年 6

12、月第 1 版二、二、需求規(guī)約2.1 業(yè)務(wù)描述業(yè)務(wù)描述銷售訂單數(shù)據(jù)庫(kù)管理系統(tǒng)的總目標(biāo)是:在計(jì)算機(jī)網(wǎng)絡(luò),數(shù)據(jù)庫(kù)和先進(jìn)的開發(fā)平臺(tái)上,利用現(xiàn)有的軟件,配置一定的硬件,開發(fā)一個(gè)具有開放體系結(jié)構(gòu)的、易擴(kuò)充的、易維護(hù)的、具有良好人機(jī)交互界面的銷售訂單數(shù)據(jù)庫(kù)管理系統(tǒng),實(shí)現(xiàn)訂單銷售的自動(dòng)化的計(jì)算機(jī)系統(tǒng),為商品供應(yīng)商提供準(zhǔn)確、精細(xì)、迅速的訂單銷售信息。具體功能為供應(yīng)商供應(yīng)產(chǎn)品、請(qǐng)假的申請(qǐng),出差的記錄輸入到系統(tǒng)中,系統(tǒng)將為員工記錄這些信息。2.2 需求分析需求分析本銷售訂單數(shù)據(jù)庫(kù)管理系統(tǒng),能夠完成插入產(chǎn)品,供應(yīng)記錄,訂購(gòu)記錄等等這些信息,以能夠模擬完成一次訂單銷售的過(guò)程,此外,在一個(gè)完整的訂單銷售流程中,本數(shù)據(jù)庫(kù)系

13、統(tǒng)還提供查詢某供應(yīng)商供應(yīng)的產(chǎn)品信息,詢某產(chǎn)品信息,查詢某客戶信息,查詢某訂單訂購(gòu)的產(chǎn)品的信息。對(duì)于客戶而言,還提供了查詢訂單最多的客戶的功能。總的來(lái)說(shuō),本數(shù)據(jù)庫(kù)系統(tǒng)能夠達(dá)到模擬完成一次訂單銷售流程的要求。在本銷售訂單數(shù)據(jù)庫(kù)管理系統(tǒng)中,有一些限制性條件,比如一個(gè)客戶可以下多個(gè)訂單,但一個(gè)訂單只能由一個(gè)客戶下,一個(gè)訂單可以訂購(gòu)多種產(chǎn)品,每種產(chǎn)品可被不同訂單訂購(gòu)等等,這些限制條件的加入能夠使本數(shù)據(jù)庫(kù)管理系統(tǒng)的功能更加完善,能夠滿足更高的要求。三、三、數(shù)據(jù)庫(kù)環(huán)境說(shuō)明數(shù)據(jù)庫(kù)實(shí)例數(shù)據(jù)庫(kù)系統(tǒng)數(shù)據(jù)庫(kù)部署環(huán)境數(shù)據(jù)庫(kù)設(shè)計(jì)工具數(shù)據(jù)庫(kù)存放位置說(shuō)明銷售訂單數(shù)據(jù)庫(kù)管理系統(tǒng)sql server 2008windows xp

14、sql server存放位置,絕對(duì)路徑/相對(duì)路徑用于訂單銷售管理四、四、數(shù)據(jù)庫(kù)的命名規(guī)則數(shù)據(jù)庫(kù)的命名規(guī)則4.1 數(shù)據(jù)庫(kù)對(duì)象命名規(guī)則數(shù)據(jù)庫(kù)對(duì)象命名規(guī)則數(shù)據(jù)庫(kù)對(duì)象命名規(guī)則備注表s 功能描述字符串例如:suppliers 供應(yīng)商表視圖view_功能描述字符串例如:view_product 產(chǎn)品視圖觸發(fā)器insert_功能描述字符串例如:insert_po 更改庫(kù)存觸發(fā)器存儲(chǔ)過(guò)程procedure_功能描述字符串例如:pro_insertsuppliers 存儲(chǔ)過(guò)程 4.2 數(shù)據(jù)項(xiàng)編碼規(guī)則數(shù)據(jù)項(xiàng)編碼規(guī)則數(shù)據(jù)項(xiàng)命名規(guī)則數(shù)據(jù)類型長(zhǎng)度范圍備注供應(yīng)商編號(hào)兩位整數(shù)序號(hào)(0099)定長(zhǎng)字符串12 位無(wú)產(chǎn)品號(hào)兩 位

15、 整 數(shù) 序 號(hào)(0099)定長(zhǎng)字符串12 位無(wú)訂單號(hào)兩位整數(shù)序號(hào)(0099)定長(zhǎng)字符串12 位無(wú)雇員號(hào)兩位整數(shù)序號(hào)(0099)定長(zhǎng)字符串12 位無(wú)客戶號(hào)兩位整數(shù)序號(hào)(0099)定長(zhǎng)字符串12 位無(wú)五、五、邏輯設(shè)計(jì)邏輯設(shè)計(jì)5.1 er 圖圖供應(yīng)商供應(yīng)產(chǎn)品訂購(gòu)訂單管理雇員下發(fā)客戶名稱地址聯(lián)系電話客戶編號(hào)姓名通信地址電話產(chǎn)品編號(hào)供應(yīng)商編號(hào)產(chǎn)品編號(hào)產(chǎn)品名稱產(chǎn)品類型產(chǎn)品編號(hào)訂單編號(hào)訂單編號(hào)雇員編號(hào)姓名聯(lián)系電話供應(yīng)商編號(hào)售價(jià)出廠價(jià)存貨量數(shù)量日期雇員編號(hào)工資客戶編號(hào)5.2 關(guān)系模型關(guān)系模型供應(yīng)商(供應(yīng)商編號(hào),名稱,地址,聯(lián)系電話)產(chǎn)品(產(chǎn)品編號(hào),產(chǎn)品名稱,產(chǎn)品類別,售價(jià),出廠價(jià),存貨量)供應(yīng)(供應(yīng)商編號(hào),

16、產(chǎn)品編號(hào))訂購(gòu)(產(chǎn)品編號(hào),訂單編號(hào),數(shù)量)客戶(客戶編號(hào),姓名,通信地址,電話)訂單(訂單編號(hào),日期,客戶編號(hào),雇員編號(hào))雇員(雇員編號(hào),姓名,聯(lián)系電話,工資)注:有下劃線的表示該屬性為主碼。六、六、物理設(shè)計(jì)6.1 表匯總表匯總表名功能說(shuō)明表 suppliers供應(yīng)商表,存儲(chǔ)供應(yīng)商的編號(hào)等信息表 product產(chǎn)品表,存儲(chǔ)產(chǎn)品的編號(hào)、數(shù)量等信息表 sp供應(yīng)商產(chǎn)品供應(yīng)表,存儲(chǔ)供應(yīng)商所供應(yīng)的產(chǎn)品對(duì)應(yīng)信息表 orders訂單表,存儲(chǔ)訂單的編號(hào)、日期等信息表 po產(chǎn)品訂購(gòu)表,存儲(chǔ)產(chǎn)品訂購(gòu)的對(duì)應(yīng)信息表 employee雇員表,存儲(chǔ)雇員的編號(hào)等信息表 customer客戶表,存儲(chǔ)客戶的編號(hào)等信息6.2 表

17、表1: suppliers 表表(供應(yīng)商表供應(yīng)商表)表名suppliers(供應(yīng)商表)數(shù)據(jù)庫(kù)用戶sa主鍵snumber其他排序字段無(wú)索引字段無(wú)序號(hào)字段名稱數(shù)據(jù)類型(精度范圍)允許為空 y/n唯一y/n區(qū)別度默認(rèn)值約束條件/說(shuō)明1snumberchar(12)ny高無(wú)主鍵/供應(yīng)商號(hào)2snamechar(30)nn中無(wú)供應(yīng)商名稱3saddresschar(30)yn中無(wú)供應(yīng)商地址4stelnumintyn高無(wú)供應(yīng)商電話sql 腳本-建立供應(yīng)商表create table suppliers -供應(yīng)商表(snumber char(12) primary key,-供應(yīng)商編號(hào),主碼 sname char

18、(30) not null,-姓名 saddress char(30), -地址 stelnum int -電話);6.3 表表2: product 表表(產(chǎn)品表產(chǎn)品表)表名product(產(chǎn)品表)數(shù)據(jù)庫(kù)用戶sa主鍵pnumber其他排序字段無(wú)索引字段無(wú)序號(hào)字段名稱數(shù)據(jù)類型(精度范圍)允許為空y/n唯一y/n區(qū)別度默認(rèn)值約束條件/說(shuō)明1pnumberchar(12)ny高無(wú)主鍵/產(chǎn)品編號(hào)2pnamechar(30)ny高無(wú)產(chǎn)品名稱3pcategorychar(15)yn低無(wú)產(chǎn)品類別4ppriceintyn中無(wú)產(chǎn)品售價(jià)5pex_pricerealyn中無(wú)產(chǎn)品出廠價(jià)6pinventoryrealy

19、n中無(wú)產(chǎn)品庫(kù)存量sql 腳本-建立產(chǎn)品表create table product -產(chǎn)品表(pnumber char(12) primary key, -產(chǎn)品編號(hào),主碼 pname char(30) not null, -產(chǎn)品名稱 pcategory char(15), -產(chǎn)品類別- pprice int, -售價(jià)- pex_price real, -出廠價(jià)- pinventory real -存貨量-);6.4 表表3: sp 表表(供應(yīng)商產(chǎn)品供應(yīng)表供應(yīng)商產(chǎn)品供應(yīng)表)表名sp(供應(yīng)商產(chǎn)品供應(yīng)表)數(shù)據(jù)庫(kù)用戶sa主鍵snumber,pnumber其他排序字段無(wú)索引字段無(wú)序號(hào)字段名稱數(shù)據(jù)類型(精度

20、范圍)允許為空唯一y/n區(qū)別度默認(rèn)值約束條件/說(shuō)明y/n1snumberchar(12)ny高無(wú)主鍵/供應(yīng)商號(hào)2pnumberchar(12)ny高無(wú)主鍵/產(chǎn)品編號(hào)sql 腳本-建立供應(yīng)商產(chǎn)品供應(yīng)表create table sp-供應(yīng)商供應(yīng)產(chǎn)品表-(snumber char(12),-供應(yīng)商編號(hào),外碼 pnumber char(12),-產(chǎn)品編號(hào),外碼 primary key(snumber,pnumber),-聯(lián)合主碼 foreign key (pnumber) references product(pnumber) on delete cascade on update cascade,

21、foreign key (snumber) references suppliers(snumber) on delete cascade on update cascade);6.5 表表4: orders 表表(訂單表訂單表)表名orders(訂單表)數(shù)據(jù)庫(kù)用戶sa主鍵onumber其他排序字段無(wú)索引字段無(wú)序號(hào)字段名稱數(shù)據(jù)類型(精度范圍)允許為空y/n唯一y/n區(qū)別度默認(rèn)值約束條件/說(shuō)明1onumberchar(12)ny高無(wú)主鍵/訂單號(hào)2odatedatenn低無(wú)訂單日期3enumberchar(12)yn中無(wú)雇員號(hào)4cnumberchar(12)nn高無(wú)客戶號(hào)sql 腳本-建立訂單表c

22、reate table orders-訂單表(onumber char(12)primary key,-編號(hào),主碼 odate date,-日期 enumber char(12),-設(shè)置雇員號(hào),外碼 cnumber char(12),-設(shè)置客戶號(hào),外碼 foreign key (cnumber) references customer(cnumber) on delete cascade on update cascade, foreign key (enumber) references employee(enumber) on delete cascade on update cascad

23、e);6.6 表表5: po 表表(產(chǎn)品訂購(gòu)表產(chǎn)品訂購(gòu)表)表名po(產(chǎn)品訂購(gòu)表)數(shù)據(jù)庫(kù)用戶sa主鍵pnumber,onumber其他排序字段無(wú)索引字段無(wú)序號(hào)字段名稱數(shù)據(jù)類型(精度范圍)允許為空y/n唯一y/n區(qū)別度默認(rèn)值約束條件/說(shuō)明1pnumberchar(12)ny高無(wú)主鍵/產(chǎn)品號(hào)2onumberchar(12)ny高無(wú)主鍵/訂單號(hào)3quantityintnn低無(wú)訂購(gòu)產(chǎn)品數(shù)量sql 腳本-建立產(chǎn)品訂購(gòu)表create table po-產(chǎn)品訂購(gòu)表(pnumber char(12),-產(chǎn)品編號(hào) onumber char(12),-訂單編號(hào) quantity int,-產(chǎn)品數(shù)量 primary

24、key(pnumber,onumber),-聯(lián)合主碼 foreign key (pnumber) references product(pnumber)-外碼 on delete cascade on update cascade, foreign key (onumber) references orders(onumber)-外碼 on delete cascade on update cascade); 6.7 表表6: employee 表表(雇員表雇員表)表名employee(雇員表)數(shù)據(jù)庫(kù)用戶sa主鍵enumber其他排序字段無(wú)索引字段無(wú)序號(hào)字段名稱數(shù)據(jù)類型(精度范圍)允許為空y/

25、n唯一y/n區(qū)別度默認(rèn)值約束條件/說(shuō)明1enumberchar(12)ny高無(wú)主鍵/雇員號(hào)2enamechar(10)nn中無(wú)雇員名稱3etelnumintny高無(wú)雇員電話4ewagesrealnn低無(wú)雇員薪資sql 腳本-建立雇員表create table employee-雇員表(enumber char(12) primary key,-編號(hào) ename char(10),-名字 etelnum int,-電話 ewages real-工資);6.8 表表7: customer 表表(客戶表客戶表)表名customer(客戶表)數(shù)據(jù)庫(kù)用戶sa主鍵cnumber其他排序字段無(wú)索引字段無(wú)序號(hào)

26、字段名稱數(shù)據(jù)類型(精度范圍)允許為空y/n唯一y/n區(qū)別度默認(rèn)值約束條件/說(shuō)明1cnumberchar(12)ny高無(wú)主鍵/客戶表2cnamechar(10)nn中無(wú)客戶名稱3caddresschar(30)yn中無(wú)客戶地址4ctelnumintyy高無(wú)客戶電話sql 腳本-建立客戶表create table customer-客戶表(cnumber char(12) primary key,-編號(hào) cname char(10),-姓名 caddress char(30),-地址 ctelnum int-電話);6.9 視圖的設(shè)計(jì)視圖的設(shè)計(jì)1、建立一張雇員信息的視圖目的:屏蔽雇員的工資信息。功

27、能:能夠向管理員提供簡(jiǎn)明,直接的雇員信息展示。意義:有利于數(shù)據(jù)庫(kù)安全的維護(hù),防止任意修改數(shù)據(jù)庫(kù)中的雇員信息。create view view_employee-建立employee視圖,屏蔽工資屬性asselect enumber,ename,etelnumfrom employeewith check option;2、建立一張產(chǎn)品信息的視圖目的:屏蔽產(chǎn)品的出廠價(jià)信息。功能:能夠向管理員提供簡(jiǎn)明,直接的產(chǎn)品信息展示。意義:有利于數(shù)據(jù)庫(kù)安全的維護(hù),防止任意修改數(shù)據(jù)庫(kù)中的產(chǎn)品信息。create view view_producte-建立product視圖,屏蔽出廠價(jià)屬性asselect pnum

28、ber,pname,pcategory,pprice,pinventoryfrom view_productewith check option;6.10 存儲(chǔ)過(guò)程存儲(chǔ)過(guò)程的設(shè)計(jì)的設(shè)計(jì)1、查詢訂單數(shù)量功能:查詢訂單的數(shù)量目的:存儲(chǔ)查詢訂單數(shù)量的操作意義:下次重復(fù)同樣的動(dòng)作時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure_searchordersnum -查詢訂單的存儲(chǔ)過(guò)程asselect count(*) 訂單總數(shù)-查詢訂單數(shù)量from orders;2、查詢客戶的訂單信息功能:查詢客戶的訂單信息目的:存儲(chǔ)查詢客戶的訂單信息的操作意義:下次重復(fù)同樣的動(dòng)作

29、時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure_customerorders-查詢某個(gè)客戶訂單信息cname char(10)asselect onumber,odate,enumberfrom orders,customerwhere cname like cname and customer.cnumber like orders.cnumber;3、查詢訂單最多的客戶信息功能:查詢訂單最多的客戶信息目的:存儲(chǔ)查詢訂單最多的客戶信息的操作意義:下次重復(fù)同樣的動(dòng)作時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure

30、_searchmaxorders-查詢訂單最多的客戶信息asselect cnumber,cname,caddress,ctelnumfrom orders,customerwhere orders.cnunmer=customer.cnunmergroup by cnumber having max(cnumber);4、查詢客戶信息功能:查詢客戶信息目的:存儲(chǔ)查詢客戶信息的操作意義:下次重復(fù)同樣的動(dòng)作時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure_searchcustomer-查詢某客戶信息cname char(10)asselect *from

31、customerwhere cname=cname;5、查詢雇員信息功能:查詢雇員信息目的:存儲(chǔ)查詢雇員信息的操作意義:下次重復(fù)同樣的動(dòng)作時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure_searchemployee-查詢某雇員信息ename char(10)asselect *from employeewhere ename=ename;6、查詢某訂單對(duì)應(yīng)的產(chǎn)品信息功能:查詢某訂單對(duì)應(yīng)的產(chǎn)品信息目的:存儲(chǔ)查詢某訂單對(duì)應(yīng)的產(chǎn)品信息的操作意義:下次重復(fù)同樣的動(dòng)作時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure_sea

32、rchpo-查詢某訂單的產(chǎn)品信息onumber char(12)asselect onumber,product.pnumber,pname,pcategory,pprice,pex_price,pinventoryfrom product,powhere onumber=onumber and po.pnumber=product.pnumber;7、查詢產(chǎn)品信息功能:查詢產(chǎn)品信息目的:存儲(chǔ)查詢產(chǎn)品信息的操作意義:下次重復(fù)同樣的動(dòng)作時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure_searchproduct-查詢某產(chǎn)品信息pnumber char(12

33、)asselect pnumber,pname,pcategory,pprice,pex_price,pinventory,snumberfrom product,spwhere pnumber=pnumber and sp.pnumber=pnumber;8、插入供應(yīng)商信息功能:插入供應(yīng)商信息目的:存儲(chǔ)插入供應(yīng)商信息的操作意義:下次重復(fù)同樣的動(dòng)作時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure_insertsuppliers-插入供應(yīng)商信息snumber char(12),sname char(30),saddress char(30),stelnum

34、 intasif exists(select * from suppliers where snumber=snumber)print該供應(yīng)商記錄已經(jīng)存在elseinsert into suppliers(snumber,sname,saddress,stelnum)values(snumber,sname,saddress,stelnum);9、插入訂單信息功能:插入訂單信息目的:存儲(chǔ)插入訂單信息的操作意義:下次重復(fù)同樣的動(dòng)作時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure_insertorders-插入訂單表onumber char(12),odat

35、e date,enumber char(12),cnumber char(12)asif exists(select * from orders where onumber=onumber)print該訂單記錄已經(jīng)存在elseinsert into orders(onumber,odate,enumber,cnumber)values(onumber,odate,enumber,cnumber);10、插入產(chǎn)品訂購(gòu)信息功能:插入產(chǎn)品訂購(gòu)信息目的:存儲(chǔ)插入產(chǎn)品訂購(gòu)信息的操作意義:下次重復(fù)同樣的動(dòng)作時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure_inser

36、tpo-插入產(chǎn)品訂購(gòu)表pnumber char(12),onumber char(12),quantity intasif exists(select * from po where pnumber=pnumber and onumber=onumber)-當(dāng)該訂單已經(jīng)訂購(gòu)改產(chǎn)品時(shí)不予重復(fù)訂購(gòu)print該產(chǎn)品訂購(gòu)訂單記錄已經(jīng)存在if exists(select * from product where pinventoryquantity)-當(dāng)庫(kù)存量不足時(shí)不予訂購(gòu)print該產(chǎn)品庫(kù)存不足,無(wú)法訂購(gòu)elseinsert into po(onumber,pnumber,quantity)value

37、s(onumber,pnumber,quantity);11、插入產(chǎn)品信息功能:插入產(chǎn)品信息目的:存儲(chǔ)產(chǎn)品的操作意義:下次重復(fù)同樣的動(dòng)作時(shí),可直接執(zhí)行存儲(chǔ)過(guò)程,簡(jiǎn)化操作步驟create procedure procedure_insertproduct -插入產(chǎn)品信息pnumber char(12),pname char(30),pcategory char(15),pprice int,pex_price real,pinventory realasif exists(select * from product where pnumber=pnumber)-若有相同產(chǎn)品,只更新庫(kù)存量upda

38、te productset pinventory=pinventory+pinventoryelseinsert into product(pnumber,pname,pcategory,pprice,pex_price,pinventory)values(pnumber,pname,pcategory,pprice,pex_price,pinventory);12、完整的訂單銷售流程功能:插入訂單信息和訂購(gòu)信息以及修改產(chǎn)品庫(kù)存等信息目的:存儲(chǔ)從客戶下單到訂單訂購(gòu)產(chǎn)品的流程的操作意義:直觀展示訂單銷售流程,使用戶能夠更簡(jiǎn)明的執(zhí)行完整的訂單銷售流程create procedure procedu

39、re_order -完整的訂單銷售流程onumber char(12),odate date,enumber char(12),cnumber char(12)pnumber char(12),onumber char(12),quantity intasif exists(select * from orders where onumber=onumber)-若有重復(fù)訂單,則不予下單print該訂單記錄已存在,不能重復(fù)下訂單elseinsert into orders(onumber,odate,enumber,cnumber)values(onumber,odate,enumber,cnu

40、mber);if exists(select * from po where pnumber=pnumber and onumber=onumber)-若有重復(fù)訂購(gòu)單,則不予訂購(gòu)print該產(chǎn)品訂購(gòu)記錄已存在,不能重復(fù)訂購(gòu)elseif exists(select * from product where pinventoryquantity)-若產(chǎn)品庫(kù)存量不足,則不予訂購(gòu)print產(chǎn)品庫(kù)存量不足,不能訂購(gòu)elseinsert into po(onumber,pnumber,quantity)values(onumber,pnumber,quantity);6.11 觸發(fā)器的設(shè)計(jì)觸發(fā)器的設(shè)計(jì)1、

41、建立觸發(fā)器 insert_po:當(dāng)插入了一條新的產(chǎn)品訂購(gòu)信息后,則激活該觸發(fā)器,新的產(chǎn)品庫(kù)存量等于舊庫(kù)存量減去產(chǎn)品訂購(gòu)的數(shù)量。功能:能夠根據(jù)數(shù)據(jù)庫(kù)中數(shù)據(jù)的變化來(lái)自動(dòng)進(jìn)行數(shù)據(jù)更新操作。目的:將必備的操作自動(dòng)化。意義:為數(shù)據(jù)庫(kù)用戶提供一種簡(jiǎn)便操作,省去了逐項(xiàng)更改數(shù)據(jù)的麻煩。create trigger insert_po-after 觸發(fā)器,當(dāng)訂購(gòu)產(chǎn)品后,自動(dòng)減少庫(kù)存量on po after insertfor each rowas beginupdate product set new.pinventory=old.pinventory-new.quantity;end;6.12 函數(shù)的設(shè)計(jì)函數(shù)

42、的設(shè)計(jì)無(wú)七、七、安全性設(shè)計(jì)7.1 防止用戶直接操作數(shù)據(jù)庫(kù)的方法防止用戶直接操作數(shù)據(jù)庫(kù)的方法7.1.1 用戶標(biāo)識(shí)和鑒定用戶標(biāo)識(shí)和鑒別是系統(tǒng)提供的最外層安全保護(hù)措施。其方法是由系統(tǒng)提供一定的方式讓用戶標(biāo)識(shí)自己的名字或身份。每次用戶要求進(jìn)入系統(tǒng)時(shí),由系統(tǒng)進(jìn)行核對(duì),通過(guò)鑒定后才提供機(jī)器使用權(quán)。7.1.2 存取控制數(shù)據(jù)庫(kù)安全性所關(guān)心的主要是 dbms 的存取控制機(jī)制。數(shù)據(jù)庫(kù)安全最重要的一點(diǎn)就是確保只授權(quán)給由資格的用戶訪問(wèn)數(shù)據(jù)庫(kù)的權(quán)限,同時(shí)令所有未授權(quán)的人員無(wú)法接近數(shù)據(jù),這主要通過(guò)數(shù)據(jù)庫(kù)系統(tǒng)的存取控制機(jī)實(shí)現(xiàn)。7.1.3 數(shù)據(jù)加密 數(shù)據(jù)加密是防止數(shù)據(jù)庫(kù)中數(shù)據(jù)在存儲(chǔ)和傳輸中關(guān)系的有效字段。加密的基本思想是根據(jù)

43、一定的算法講原始數(shù)據(jù)變換為不可直接識(shí)別的格式,從而使得不知道解密算法的人無(wú)法獲知數(shù)據(jù)的內(nèi)容。例如:exec sp_addlogin employee_manage,123456,sales_system;exec sp_grantdbaccess employee_manage,阿萊格里;grant all privileges -將指定權(quán)限授予該用戶on table suppliers,product,sp,orders,po,view_employee,view_productto 阿萊格里7.2 用戶帳號(hào)密碼的加密方法用戶帳號(hào)密碼的加密方法為用戶帳號(hào)密碼加密,需要用程序?qū)崿F(xiàn),對(duì)用戶的帳號(hào)

44、密碼實(shí)行加密算法,并在后臺(tái)實(shí)現(xiàn)轉(zhuǎn)換。7.3 角色與權(quán)限角色與權(quán)限角色可以訪問(wèn)的表與列操作權(quán)限ss可訪問(wèn)所有表完全控制權(quán)限admin可訪問(wèn)所有表部分的控制權(quán)限employee_manage可訪問(wèn)部分表部分的操作權(quán)限八、八、數(shù)據(jù)庫(kù)管理與維護(hù)說(shuō)明數(shù)據(jù)庫(kù)管理與維護(hù)說(shuō)明1)數(shù)據(jù)庫(kù)維護(hù)計(jì)劃設(shè)定完成之后,如果 sql server 代理是啟動(dòng)的,那么在管理sql server代理作業(yè)下面會(huì)自動(dòng)生成若干自動(dòng)維護(hù)的工作條目,并且每個(gè)條目都有相應(yīng)的計(jì)劃表,這個(gè)才是正常的。系統(tǒng)每天凌晨自動(dòng)更新系統(tǒng),刪除未銷卡記錄2)數(shù)據(jù)庫(kù)維護(hù)計(jì)劃非常強(qiáng)大,里面有各式各樣對(duì)數(shù)據(jù)庫(kù)的維護(hù)/備份操作,每樣都可以設(shè)定不同的 schedul

45、e,當(dāng)然,每設(shè)定一項(xiàng),在 job 里面就會(huì)自動(dòng)多出來(lái)一條。sql server agent 服務(wù)的正常運(yùn)作是這一切的基礎(chǔ)。系統(tǒng)每天凌晨更新后,自動(dòng)備份數(shù)據(jù)庫(kù)。九、九、總結(jié)總結(jié)不得不說(shuō)本次課程設(shè)計(jì)給我?guī)?lái)了非常大的收獲。首先,設(shè)計(jì)數(shù)據(jù)庫(kù)管理系統(tǒng)本身,鍛煉了自己的能力,增長(zhǎng)了自己的實(shí)踐經(jīng)驗(yàn)。其次,課程設(shè)計(jì)本身對(duì)于學(xué)生的能力鍛煉更是功不可沒(méi),既鞏固了平時(shí)學(xué)到的理論知識(shí),又能鍛煉我們發(fā)現(xiàn)、提出、分析和解決實(shí)際問(wèn)題的能力,也能讓學(xué)生體會(huì)到數(shù)據(jù)庫(kù)開發(fā)的流程。在實(shí)際操作中遇到的各種問(wèn)題,讓我思考、求助,直到最終解決,在此過(guò)程中更是獲益匪淺。在最開始數(shù)據(jù)庫(kù)系統(tǒng)的時(shí)候,感覺(jué)設(shè)計(jì)一個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)并不是一件難事,也并沒(méi)太放在心上。但是后來(lái)開始動(dòng)手做的時(shí)候,才知道做一個(gè)完整的數(shù)據(jù)庫(kù)管理系統(tǒng)需要做大量的準(zhǔn)備工作,要做出一個(gè)功能

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論