Kingbase数据库实验四 数据库系统的概要、逻辑、物理设计
實驗四 ??數(shù)據(jù)庫系統(tǒng)的概要、邏輯、物理設(shè)計
- 一、實驗?zāi)康?/li>
- 二、實驗步驟及結(jié)果
一、實驗?zāi)康?/h1>
二、實驗步驟及結(jié)果
注:sql代碼為人大金倉數(shù)據(jù)庫的代碼
某公司因業(yè)務(wù)擴(kuò)展需要開發(fā)一套電子商務(wù)系統(tǒng),用于在線銷售各類商品。作為數(shù)據(jù)庫設(shè)計人員,通過走訪與跟班作業(yè)的方式,從商品銷售部和商品管理部獲得了如下業(yè)務(wù)信息。
商品管理部負(fù)責(zé)管理銷售的各類商品。目前公司所有可供銷售的商品都記錄在Excel表格中。
Excel表格中每條記錄的主要內(nèi)容包括:商品名稱、商品類別、商品價格、生產(chǎn)廠家、上一次購入時間、商品的詳細(xì)信息、商品的縮略圖。其中,商品類別包括圖書、手機(jī)、數(shù)碼影像和電腦等。商品的縮略圖為jpg或png類型的圖片。生產(chǎn)廠家根據(jù)商品類型表達(dá)的含義略有差異。如果是圖書類型的商品,則生產(chǎn)廠家表示出版社。如果是其他類型商品,生產(chǎn)廠家即為實際生產(chǎn)機(jī)構(gòu)。Excel中商品記錄的示例信息如教材244頁圖6-27所示。
商品銷售部負(fù)責(zé)銷售各類商品并對每次銷售的結(jié)果進(jìn)行記錄。目前公司所有銷售結(jié)果都記錄Excel表格中。
Excel表格中每條記錄由三部分內(nèi)容構(gòu)成,分別是訂單的基本信息、訂單的購買人信息和訂單中購買的商品信息。
訂單的基本信息包括:訂單編號、訂單的提交時間和訂單的當(dāng)前狀態(tài)。其中,訂單編號為17位數(shù)字,前8位為當(dāng)前日期,后9位為按訂單提交順序生成的編碼,該編號能夠唯一標(biāo)識每一條銷售記錄;訂單提交時間精確到秒;訂單狀態(tài)包括:已提交、已發(fā)貨、已完成等。
訂單的購買人信息包括:購買人的姓名、購買人的性別、購買人的聯(lián)系方式、購買人的電子郵箱。其中,購買人的聯(lián)系方式統(tǒng)一存儲了購買者的送貨位置、郵政編碼和購買人的手機(jī)號碼。
訂單的購買商品信息包括:商品的名稱、商品的類別、商品的縮略圖、商品的購買數(shù)量、商品的單價(元)。上述信息需與商品管理部所記錄的商品信息對應(yīng)。
Excel中購買記錄的示例信息如教材245頁圖6-28所示。
請完成如下實驗。
根據(jù)概要設(shè)計所得的全局E-R圖,完成如下實驗。
根據(jù)已經(jīng)繪制的全局E-R圖,通過E-R圖到關(guān)系模式的轉(zhuǎn)換方法,將全局E-R圖轉(zhuǎn)換為關(guān)系模式,并注明每個模式的主鍵和外鍵。
(1)商品表(商品編號,商品名稱,商品價格,詳情信息,商品圖片)主鍵:商品編號
(2)類別表(類別號,類別名稱)主鍵:類別號
(3)屬于表(商品編號,類別號)主鍵:商品編號,類別號 外鍵:商品編號,類別號
(4)會員表(會員編號,會員姓名,會員性別,會員郵箱)主鍵:會員編號
(5)訂購表(訂單編號,商品編號,會員編號,數(shù)量,提交時間)
主鍵:訂單編號 外鍵:商品編號,會員編號
(6)狀態(tài)表(狀態(tài)號,狀態(tài)名)主鍵:狀態(tài)號
(7)操作表(訂單編號,狀態(tài)號)主鍵:訂單編號,狀態(tài)號 外鍵:訂單編號,狀態(tài)號
(8)聯(lián)系方式表(電話,郵編,地址)主鍵:電話
(9)聯(lián)系表(會員編號,電話)外鍵:會員編號,電話
(10)廠家表(廠家編號,廠家名稱)主鍵:廠家編號
(11)生產(chǎn)表(商品編號,廠家編號,上架時間)
主鍵:商品編號,廠家編號 外鍵:商品編號,廠家編號
對轉(zhuǎn)換后的關(guān)系模式進(jìn)行優(yōu)化。
(1)商品表(商品編號,商品名稱,商品價格,詳情信息,商品圖片,類別號)
(2)類別表(類別號,類別名稱)
(3)訂購表(訂單編號,商品編號,會員編號,數(shù)量,提交時間,狀態(tài)號)
(4)狀態(tài)表(狀態(tài)號,狀態(tài)名)
(5)會員表(會員編號,會員姓名,會員性別,會員郵箱,電話)
(6)聯(lián)系方式表(電話,郵編,地址)
(7)廠家表(廠家編號,廠家名稱)
(8)生產(chǎn)表(商品編號,廠家編號,上架時間)
使用數(shù)據(jù)規(guī)范化分析方法,分析轉(zhuǎn)換后的模式屬于第幾范式。
3NF(第三范式)
在與客戶進(jìn)行數(shù)據(jù)庫的確認(rèn)工作時,商品管理部門發(fā)現(xiàn)現(xiàn)有設(shè)計中遺漏了商品的庫存信息。需要在現(xiàn)有商品中添加庫存信息。添加庫存后的商品記錄如教材246頁圖6-29所示。請修改現(xiàn)有E-R圖,并調(diào)整轉(zhuǎn)換后的關(guān)系模式。
(1)類別表(類別號,類別名稱)
(2)商品表(商品編號,商品名稱,商品價格,詳情信息,商品圖片,類別號)
(3)會員表(會員編號,會員姓名,會員性別,會員郵箱)
(4)聯(lián)系方式表(會員編號,電話,郵編,地址)
(5)狀態(tài)表(狀態(tài)號,狀態(tài)名)
(6)廠家表(廠家編號,廠家名稱)
(7)生產(chǎn)表(商品編號,廠家編號,上架時間)
(8)倉庫表(商品編號,庫存量)
(9)訂購表(訂單編號,商品編號,會員編號,數(shù)量,提交時間,狀態(tài)號)
根據(jù)數(shù)據(jù)庫系統(tǒng)邏輯設(shè)計所得的關(guān)系模式,完成如下實驗。
1.以KingBaseES為系統(tǒng)將要部署的數(shù)據(jù)庫管理系統(tǒng),把邏輯設(shè)計所得的關(guān)系模式轉(zhuǎn)換成數(shù)據(jù)庫系統(tǒng)的DDL語句,具體包括:數(shù)據(jù)庫創(chuàng)建的DDL、各種實體創(chuàng)建的DDL和多對多聯(lián)系創(chuàng)建的DDL等。
2.向已經(jīng)創(chuàng)建好的數(shù)據(jù)中添加測試數(shù)據(jù),添加記錄的數(shù)量不限,只需有代表性即可。
INSERT INTO "類別表"(類別號,類別名稱) VALUES ('L1','計算機(jī)'),('L2','數(shù)學(xué)'),('L3','外語') INSERT INTO "商品表"(商品編號,商品名稱,商品價格,類別號) VALUES ('S1','數(shù)據(jù)庫系統(tǒng)',30,'L1'),('S2','高等數(shù)學(xué)',27,'L2'),('S3','綜合英語',45,'L3')INSERT INTO "會員表"(會員編號,會員姓名,會員性別,會員郵箱) VALUES ('H1','張三','男','11588345@qq.com'),('H2','李蘭','女','897464125@qq.com'),('H3','趙斌','男','465138745@qq.com')INSERT INTO "聯(lián)系方式表"(會員編號,電話,郵編,地址) VALUES ('H1','13523116489','55123','廣州'),('H2','15388456409','55124','深圳'),('H3','19244729105','55125','上海')INSERT INTO "狀態(tài)表"(狀態(tài)號,狀態(tài)名) VALUES ('Z1','已下單'),('Z2','已提交'),('Z3','已完成')INSERT INTO "廠家表"(廠家編號,廠家名稱) VALUES ('C1','高等教育出版社'),('C2','新疆大學(xué)出版社'),('C3','人民郵電出版社')INSERT INTO "生產(chǎn)表"(商品編號,廠家編號,上架時間) VALUES ('S1','C1','2001-08-12'),('S2','C2','2007-12-20'),('S3','C3','2020-03-12')INSERT INTO "倉庫表"(商品編號,庫存量) VALUES ('S1',700000),('S2',150000),('S3',90000)INSERT INTO "訂購表"(訂單編號,會員編號,商品編號,數(shù)量,提交時間,狀態(tài)號) VALUES ('D1','H1','S1',1500,'2020-03-01','Z1'),('D2','H1','S3',1700,'2020-03-01','Z1'),('D3','H2','S2',500,'2020-04-15','Z3'),('D4','H3','S1',800,'2019-12-09','Z3'),('D5','H3','S2',1000,'2020-01-15','Z2'),('D6','H3','S3',2000,'2020-05-20','Z1')3.創(chuàng)建視圖,顯示每個訂單的總價。
CREATE VIEW 訂單總價 AS SELECT訂單編號,商品名稱,商品價格,數(shù)量,會員姓名,電話,會員郵箱,地址, 商品價格*數(shù)量 As 總價 FROM 訂購表,商品表,會員表,聯(lián)系方式表 WHERE 訂購表.商品編號=商品表.商品編號 AND 訂購表.會員編號=會員表.會員編號AND 會員表.會員編號=聯(lián)系方式表.會員編號總結(jié)
以上是生活随笔為你收集整理的Kingbase数据库实验四 数据库系统的概要、逻辑、物理设计的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: npm ERR! code EINTEG
- 下一篇: 我挑了 10 本数据库类好书,来送你