馬 靜
(陜西國防工業(yè)職業(yè)技術(shù)學(xué)院計算機與軟件學(xué)院,陜西 西安 710300)
近年來,移動互聯(lián)網(wǎng)技術(shù)的蓬勃發(fā)展給予線上商品銷售等電子商務(wù)行業(yè)巨大的商機。 據(jù)不完全統(tǒng)計,2020年我國網(wǎng)上零售額達11.76 萬億元,占社會消費品零售總額的比重為21.6%。 在線上商品銷售平臺上購物已經(jīng)成為現(xiàn)代人不可缺少的生活方式,人們可以隨時隨地使用線上商品銷售平臺購買心儀的商品,不需要花費時間奔波于實體商場或超市,既方便又快捷。 線上商品銷售經(jīng)營者不再需要實體商鋪,取而代之的是線上商品銷售管理平臺。目前線上商品銷售平臺主要有網(wǎng)站、 手機APP、 微信小程序等,無論是哪種平臺都離不開數(shù)據(jù)庫系統(tǒng)的支撐,本文根據(jù)互聯(lián)網(wǎng)主流商品銷售平臺的需求完成了一種通用的關(guān)系型數(shù)據(jù)庫系統(tǒng)的設(shè)計與實現(xiàn),能夠滿足此類銷售平臺開發(fā)的需要[1]。
如今互聯(lián)網(wǎng)主流的商品銷售管理平臺均可提供多種商品的網(wǎng)絡(luò)銷售。 商家可以通過銷售平臺上傳商品圖片、 視頻、 詳細信息等來展示商品,同時需要統(tǒng)計庫存和銷售情況從而完成商品管理等業(yè)務(wù)??蛻艨梢栽诰€瀏覽商品,完成注冊信息填寫,選購商品后下訂單、 付款,收貨后給予評價。 根據(jù)客觀實際需要,商品銷售管理數(shù)據(jù)庫系統(tǒng)的功能需求包括: 存儲客戶基本信息、 員工基本信息、 商品詳細信息及訂單詳細信息; 能夠?qū)λ写鎯π畔⑦M行查詢; 能夠以商品類別為單位統(tǒng)計商品銷售量,以天為單位統(tǒng)計每日銷售金額等。
在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)由數(shù)據(jù)庫管理系統(tǒng)(Database Management System,DBMS) 進行獨立的管理,對程序的依賴大為減少,數(shù)據(jù)庫系統(tǒng)的設(shè)計也逐漸成為一項獨立開發(fā)的活動。 一般來說,數(shù)據(jù)庫系統(tǒng)的設(shè)計要經(jīng)歷概念結(jié)構(gòu)設(shè)計、 邏輯結(jié)構(gòu)設(shè)計、 物理設(shè)計3 個階段。 第一階段概念結(jié)構(gòu)設(shè)計是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵,需要使用 “實體-聯(lián)系”法,用E-R 圖來描述現(xiàn)實世界的概念模型。 第二階段邏輯結(jié)構(gòu)設(shè)計的任務(wù)是把概念模型轉(zhuǎn)換為組織層數(shù)據(jù)模型,因為組織層中關(guān)系模型有很多優(yōu)點,是現(xiàn)階段主流數(shù)據(jù)庫管理軟件所采用的數(shù)據(jù)模型,因此,第二階段的核心是將概念模型轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型。 第三階段物理設(shè)計的任務(wù)是選用一個合適的數(shù)據(jù)庫管理軟件實現(xiàn)已經(jīng)設(shè)計好的關(guān)系數(shù)據(jù)模型。 根據(jù)數(shù)據(jù)庫設(shè)計的3 個階段具體完成 “商品銷售管理系統(tǒng)” 的數(shù)據(jù)庫設(shè)計[2]。
數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計的核心是繪制E-R 圖。在繪制E-R 圖之前需要從實際場景中抽象出實體,以及實體所具有的屬性。 通過對 “商品銷售管理系統(tǒng)” 實際場景進行功能需求分析,可以抽象出客戶、 員工、 商品類別、 商品和訂單5 個實體,以及這些實體的屬性,在概念模型中可以使用括號將屬性表示在實體之后[3],具體如下。
客戶 (客戶編號、 賬號、 密碼、 姓名、 電話、收貨地址)
員工 (員工編號、 賬號、 密碼、 姓名、 性別、電話)
商品類別(商品類別編號、 商品類別名稱)
商品 (商品編號、 商品名稱、 品牌、 規(guī)格、單價、 庫存數(shù)量、 圖片路徑、 商品描述、 商品類別編號)
訂單(訂單編號、 商品編號、 銷售數(shù)量、 下單日期、 訂單狀態(tài)、 客戶編號、 反饋評論、 員工編號、 發(fā)貨日期)
根據(jù)E-R 圖繪制方法畫出E-R 圖。 在繪制ER 圖時,符號的表示方法為: 矩形表示實體,橢圓表示屬性,并用線段連接對應(yīng)關(guān)系,圖1 為 “商品銷售管理系統(tǒng)” 的E-R 圖。 在繪制E-R 圖時,使用Microsoft Visio 等專業(yè)繪圖軟件可以快速完成圖形的繪制[4]。
圖1 商品銷售管理系統(tǒng)E-R 圖
邏輯結(jié)構(gòu)設(shè)計的核心是將概念模型轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型,轉(zhuǎn)化的過程有兩個要點。 一是將實體表示為二維表,實體名就是二維表名,實體的屬性就是二維表的各個列。 二是確定每張二維表的主鍵和外鍵,用外鍵表示實體間的聯(lián)系[5]。 由于篇幅有限,本文以 “客戶” 和 “訂單” 為例介紹邏輯結(jié)構(gòu)設(shè)計,其中 “客戶” 實體二維表 (見表1) 中的主鍵為客戶編號 (Consumer_Id); “訂單” 實體二維表(見表2) 中的主鍵為訂單編號 (Order_Id),外鍵為商品編號(Goods_Id)、 客戶編號(Consumer_Id)、員工編號(Emp1oyee_Id)。
表1 Consumer(客戶表)
表2 Shop_Order(訂單表)
物理設(shè)計階段的任務(wù)是選用一個合適的數(shù)據(jù)庫管理軟件實現(xiàn)已經(jīng)設(shè)計好的關(guān)系數(shù)據(jù)庫。 目前流行的數(shù)據(jù)庫管理軟件很多,其中SQL Server 軟件有很多優(yōu)點,功能全面,效率高,適合中大型關(guān)系型數(shù)據(jù)庫的開發(fā)和管理,本文選用SQL Server 2016 軟件完成“商品銷售管理系統(tǒng)” 數(shù)據(jù)庫的物理設(shè)計,具體創(chuàng)建數(shù)據(jù)庫和表的T-SQL 實現(xiàn)代碼如下[6]。
本文設(shè)計與實現(xiàn)的線上商品銷售管理數(shù)據(jù)庫系統(tǒng),能夠滿足互聯(lián)網(wǎng)主流商品銷售平臺的需求,解決相應(yīng)的數(shù)據(jù)存儲、 管理、 運行等問題。 該系統(tǒng)的設(shè)計符合數(shù)據(jù)庫設(shè)計的理論體系結(jié)構(gòu),達到了科學(xué)性和規(guī)范性的要求。 該系統(tǒng)的實現(xiàn)使用關(guān)系型數(shù)據(jù)庫T-SQL 語言,不僅適用于SQL Server 軟件,還可遷移至其他關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中,如Oraca1、 MySq1 軟件等。 因此具有較好的通用性和實用性,是一種線上商品銷售管理數(shù)據(jù)庫系統(tǒng)的有效解決方案。