ACCESS网上书店数据库系统
1 概述
1.1本項目的研究意義
當(dāng)今社會,隨著計算機技術(shù)的發(fā)展應(yīng)用和網(wǎng)絡(luò)的普及,網(wǎng)絡(luò)給人類社會帶來了巨大變化,建立網(wǎng)上書店的銷售管理系統(tǒng)是時代的潮流。隨著互聯(lián)網(wǎng)技術(shù)的進(jìn)一步發(fā)展,電子商務(wù)正以一種驚人的速度發(fā)展著。本項目是網(wǎng)上書店購物系統(tǒng),以網(wǎng)絡(luò)為媒介,通過創(chuàng)建一個虛擬的書店——星期三書店。
首先,網(wǎng)上書店方便了網(wǎng)民的生活,更加便捷地、足不出戶便可買到心儀的書籍。用戶通過網(wǎng)絡(luò)查詢自己所需要的書籍信息,避免了顧客自己實地挑選商品的煩瑣過程,使用戶的購物過程變得輕松、快捷、方便,與高效。其次,網(wǎng)上購書減少了許多中間銷售代理,因此價格會比較低,對廣大網(wǎng)民的好處顯而易見。再者,網(wǎng)上書店是信息化購物,基本上所有操作都是通過計算機程序自動完成的,因此大大降低了勞力的消耗。通過建立網(wǎng)上書店購物系統(tǒng),可以提高企業(yè)的生產(chǎn)效率,降低經(jīng)營成本,優(yōu)化資源配置,從而實現(xiàn)企業(yè)的利潤最大化。最后,電子商務(wù)與出版發(fā)行業(yè)的結(jié)合使發(fā)展網(wǎng)上書店及研究網(wǎng)上書店具有雙重意義,充分結(jié)合互聯(lián)網(wǎng)銷售的特點探索圖書發(fā)行的新渠道和新模式,是對電子商務(wù)科學(xué)的充實和補充,更是對出版發(fā)行業(yè)發(fā)行渠道和市場的開拓和創(chuàng)新
1.2 設(shè)計目標(biāo)和任務(wù)
網(wǎng)上書店數(shù)據(jù)庫系統(tǒng)是基于B/S模式,通過對一些典型電子商務(wù)網(wǎng)站的考察、分析,而設(shè)計的一套信息化管理系統(tǒng)。該系統(tǒng)主要分為兩部分,為前臺系統(tǒng)(即面向普通用戶和會員)和后臺系統(tǒng)(面向管理員)。“星期三書店”以“服務(wù)至上”為原則,力圖為為管理者提供方便的管理、為顧客提供快捷的購買。主要有以下目標(biāo):
(1)前臺系統(tǒng)為顧客提供一個網(wǎng)絡(luò)服務(wù)平臺:使顧客通過互聯(lián)網(wǎng)隨時隨地查詢書籍信息它打破了時空界限,能通過網(wǎng)絡(luò)實現(xiàn)從瀏覽商品到購買商品的全部過程。同時,以身份為界限,為普通用戶和會員提供不同的服務(wù),帶來不同的用戶體驗。
(2)后臺系統(tǒng)為系統(tǒng)管理員提供一個工作平臺:即管理者通過該數(shù)據(jù)庫系統(tǒng)完成圖書管理、訂單管理、用戶管理和統(tǒng)計報表任務(wù),實施采集信息,處理信息,分析信息等一系列工作,使管理服務(wù)工作更加系統(tǒng)化,完整化,人性化。
2 數(shù)據(jù)庫的設(shè)計過程
2.1 需求分析
需求分析簡單地說就是分析用戶的要求。需求分析是設(shè)計數(shù)據(jù)庫的起點也是重點。需求分析的結(jié)果是否準(zhǔn)確地反映了用戶的實際需要,將直接影響到后面各個階段的設(shè)計,并影響到設(shè)計結(jié)果是否合理和實用,做好需求分析對整個數(shù)據(jù)庫的設(shè)計有著極為重要的作用。通過準(zhǔn)確了解、分析用戶的需求形成需求分析說明書。本網(wǎng)上書店系統(tǒng)而言,書店面向三種身份的人群:普通用戶、會員、管理員,針對三種用戶的個性需求,作出的需求分析如下:
2.1.1 需求分析的具體內(nèi)容
(1)需要的數(shù)據(jù)以及數(shù)據(jù)結(jié)構(gòu)
1)每本圖書的信息包括:ISBN,書名,類別,作者,出版社,單價,折扣,成交價,庫存數(shù)量,圖示概述,進(jìn)貨量,成本,入庫時間。
2) 每個會員的信息包括:會員ID,手機號,密碼,名字,省份,積分,圖片,注冊時間。
3)每張訂單的信息包括:訂單編號,訂購日期,發(fā)貨日期,會員ID,發(fā)貨狀態(tài),發(fā)票號。
4)購物車的信息包括:會員ID,ISBN,書名,成交價,預(yù)定數(shù)量
5)圖書評價的信息包括:書名,圖書質(zhì)量,閱讀體驗,綜合評價,留言
(2)數(shù)據(jù)之間的關(guān)系
1)只有會員才可以購買圖書
2)每個會員可以有多個訂單,每個訂單僅屬于一個會員。
3)每個會員購買圖書時,首先將選購的圖書加入購物車,選購結(jié)束時生成訂單
4)每個訂單可以包含多種圖書的商品,每種圖書商品可以出現(xiàn)在多個訂單中
5)訂單信息中每種圖書都有對應(yīng)的定價、折扣、庫存數(shù)量、ISBN、書名、類別、圖書概述、作者、出版社、入庫時間
6)訂單表包括訂單編號、訂購日期、發(fā)貨日期、會員ID、發(fā)貨狀態(tài)、發(fā)票號
7)每個訂單表有相應(yīng)的訂單詳情,包括訂單編號、ISBN、數(shù)量
(3)需要在網(wǎng)上書店數(shù)據(jù)庫實現(xiàn)時遵循的業(yè)務(wù)規(guī)則
1)數(shù)據(jù)的取值范圍。比如會員的注冊時間,其值不能大于當(dāng)前時間。
2)數(shù)據(jù)類型和長度要求。比如書名的類型必須是文本型;成交價的類型必須是數(shù)值型。
3)必填的值。比如注冊會員時的密碼,手機號等
4)數(shù)據(jù)的值合理性檢查
5)數(shù)據(jù)的默認(rèn)值的設(shè)定。如ISBN為17位,會員密碼為8位等。
2.1.2 需求分析的階段性成果
(1)網(wǎng)上購書一般流程圖
(2)網(wǎng)上書店主要業(yè)務(wù)流程圖
訂單生成流程圖 訂單受理流程圖
?
(3)管理員系統(tǒng)
2.2 概念結(jié)構(gòu)設(shè)計階段
2.2.1 概念結(jié)構(gòu)設(shè)計過程
概念結(jié)構(gòu)設(shè)計是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵。在需求分析階段我們詳細(xì)了解并描述了用戶的應(yīng)用需求,但這些應(yīng)用需求還是現(xiàn)實世界的具體需求。通過對用戶需求分析的綜合、歸納與抽象,形成一個獨立于具體 DBMS的概念模型。概念結(jié)構(gòu)設(shè)計是現(xiàn)實世界與機器世界的中介,它一方面能夠充分反映現(xiàn)實世界,包括實體和實體之間的聯(lián)系,同時又易于向關(guān)系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換。
(1)確定實體
(2)確定實體屬性
(3)確定主鍵
(4)使用E-R圖描述構(gòu)建的概念模型
2.2.2 E-R圖
2.3邏輯結(jié)構(gòu)設(shè)計階段
從理論上講,設(shè)計邏輯結(jié)構(gòu)應(yīng)該選擇最適合描述與表達(dá)相應(yīng)概念結(jié)構(gòu)的數(shù)據(jù)模型,然后對支持這種數(shù)據(jù)模型的各種DBMS進(jìn)行比較,從中選出最合適的DBMS。目前DBMS產(chǎn)品多是關(guān)系型的,這一階段的任務(wù)主要是講E-R圖轉(zhuǎn)化為一組關(guān)系模式,利用規(guī)范化理論對數(shù)據(jù)模型進(jìn)行優(yōu)化。
2.3.1 轉(zhuǎn)化為關(guān)系模式
圖書表(ISBN,書名,類別,作者,出版社,單價,折扣,成交價,庫存數(shù)量,圖示概述,進(jìn)貨量,成本,入庫時間)
會員表(會員ID,手機號,密碼,名字,省份,積分,圖片,注冊時間)
訂單表(訂單編號,訂購日期,發(fā)貨日期,會員ID,發(fā)貨狀態(tài),發(fā)票號)
訂單明細(xì)(訂單編號,ISBN,數(shù)量)
2.3.2 優(yōu)化設(shè)計
上述四個關(guān)系模式都是第三范式,不存在低級的數(shù)據(jù)冗余
2.4 物理結(jié)構(gòu)設(shè)計階段
數(shù)據(jù)庫最終是要存儲在物理設(shè)備上的。數(shù)據(jù)庫在物理設(shè)備上的存儲結(jié)構(gòu)與存取方法稱為數(shù)據(jù)庫的物理結(jié)構(gòu),它依賴于給定的計算機系統(tǒng)。為一個給定的邏輯數(shù)據(jù)模型選取一個最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)的過程,這就是數(shù)據(jù)庫的物理設(shè)計。這一階段的主要成果實在數(shù)據(jù)庫中生成具體的表(實際是表結(jié)構(gòu)),包括創(chuàng)建主鍵、外鍵、屬性列、索引、約束等。
2.4.1 表的結(jié)構(gòu)
圖書表的表結(jié)構(gòu)
字段名 ISBN 書名 類別 作者 出版社 單價 折扣
字段類型 文本 文本 文本 文本 文本 貨幣 文本
字段長度 17
說明 主鍵 小數(shù)位為0
字段名 成交價 庫存數(shù)量 圖書概述 進(jìn)貨量 成本 入庫時間
字段類型 貨幣 數(shù)字 文本 數(shù)量 文本 日期/時間
字段長度 長日期
說明 小數(shù)位為自動 小數(shù)位為自動
會員表的表結(jié)構(gòu)
字段名 會員ID 手機號 密碼 名字 省份 積分 圖片 注冊時間
字段類型 文本 文本 文本 文本 文本 數(shù)字 附件 日期/時間
字段長度 8 11 6 10 10 長整型 長日期
說明 主鍵
訂單表的表結(jié)構(gòu)
字段名 訂單編號 訂購日期 發(fā)貨日期 會員ID 發(fā)貨狀態(tài) 發(fā)票號
字段類型 數(shù)字 日期/時間 日期/時間 文本 文本 文本
字段長度 10 長日期 長日期 8 12
說明 主鍵
訂單詳情的表結(jié)構(gòu)
字段名 訂單編號 ISBN 數(shù)量
字段類型 數(shù)字 文本 文本
字段長度 10 17 長整型
說明 與圖書表中的“ISBN”設(shè)置相同,主屬性 與訂單表表中的“訂單編號”設(shè)置相同,主屬性 主屬性
2.5 數(shù)據(jù)庫實施(略)
2.6 數(shù)據(jù)庫運行和維護(hù)(略)
3 數(shù)據(jù)操作流程圖
4 系統(tǒng)難點及解決方案
4.1 難點一:生成訂單的流程
解決方案:
第一步:為購物車中“生成訂單”按鈕嵌入宏
第二步:將購物車的內(nèi)容追加到訂單表
第三步:將訂單表的內(nèi)容追加到訂單明細(xì)表
第四步:刪除購物車表中的相應(yīng)內(nèi)容
第五步:查詢新訂單的總價
第五步:將新訂單的總價顯示在窗體
第六步:完成虛擬支付
4.2 難點二:發(fā)貨的流程
解決方案:單擊發(fā)貨按鈕后,將訂單的發(fā)貨狀態(tài)更新為“否”(有bug)
5 系統(tǒng)創(chuàng)新點
5.1 登錄界面
5.1.1 驗證碼登錄
Option Compare Database
Dim a(1) As Integer
Private Sub Command23_Click()
i = 1
a(i) = Int(9000 * Rnd + 1000)
Text21.SetFocus
Text21.Text = a(i)
End Sub
5.1.2 會員找回密碼
Private Sub Command2_Click()
Dim n As Integer
If IsNull(Me.Text0) Then
MsgBox “請輸入手機號或會員ID!”
ElseIf DLookup(“手機號”, “會員表”, “手機號=’” & Me.Text0 & “’”) = Me.Text0 Then
A = DLookup(“密碼”, “會員表”, “手機號=’” & Me.Text0 & “’”)
Text3.SetFocus
Text3.Text = A
ElseIf DLookup(“會員ID”, “會員表”, “會員ID=’” & Me.Text0 & “’”) = Me.Text0 Then
A = DLookup(“密碼”, “會員表”, “會員ID=’” & Me.Text0 & “’”)
Text3.SetFocus
Text3.Text = A
Else
MsgBox “不存在此手機號或會員ID,請重新輸入!”
Text3.SetFocus
Text3.Text = “”
Text0.SetFocus
Text0.Text = “”
End If
End Sub
5.1.3 顯示當(dāng)前時間
Private Sub Form_Timer()
Me.Text31 = Time()
End Sub
5.2 會員界面
5.2.1 根據(jù)會員購書記錄推薦圖書
5.2.2 網(wǎng)上支付
5.2.3 每日推薦小視頻
5.2.4 猜謎小游戲
Private Sub Command5_Click()
Static n As Integer
If Text3 = “四世同堂” Then
MsgBox “恭喜你!回答正確!”
MsgBox “感謝您的參與!請再接再厲!敬請關(guān)注下一期猜謎游戲!”
End If
If Text3 <> “四世同堂” Then
MsgBox “回答錯誤,請思考并重新輸入答案!”
Text3 = “”
Text3.SetFocus
n = n + 1
If n >= 3 Then
MsgBox “您已猜錯三次,正確答案是“四世同堂”。”
MsgBox “感謝您的參與!請再接再厲!敬請關(guān)注下一期猜謎游戲!”
Text3 = “四世同堂”
Me.Text3.Locked = True
End If
End If
End Sub
5.3 管理員界面
5.3.1 庫存緊張?zhí)崾?/p>
5.4.2 銷售圖表分析
5.5.3 會員頭像
設(shè)置圖片鏈接
5.5.4 查看會員足跡
將“購書記錄”查詢作為該窗體的數(shù)據(jù)源
5.5.5 查看新增會員
Private Sub Command5_Click()
If [Text1] > [Text3] Then
MsgBox “開始時間不能大于結(jié)束時間”
Text1.SetFocus
Else
DoCmd.OpenQuery “會員注冊時間”
End If
End Sub
5.5.6 管理員日志
Private Sub Command4_Click()
Form_管理員日志.Text5.SetFocus
If Form_管理員日志.Text5.Text = “” Then
MsgBox “您今天還沒有寫工作日志哦”
Else
Call filewrite(“D:\管理員日志.txt”)
End If
End Sub
Public Sub filewrite(content As String)
Open content For Append As #1
Form_管理員日志.Text5.SetFocus
Write #1, Form_管理員日志.Text5.Text
Close #1
DoCmd.Close acForm, “管理員日志”
End Sub
總結(jié)
以上是生活随笔為你收集整理的ACCESS网上书店数据库系统的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VIM使用系统剪切板
- 下一篇: 【字体】编程常用字体推荐,微软,苹果,开