數(shù)據(jù)庫設(shè)計(jì)是根據(jù)用戶需求設(shè)計(jì)數(shù)據(jù)庫結(jié)構(gòu)的過程,具體來說,數(shù)據(jù)庫設(shè)計(jì)是對于給定的應(yīng)用環(huán)境,在厝數(shù)據(jù)庫理論的指導(dǎo)下,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,在數(shù)據(jù)庫管理系統(tǒng)上建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能有效地存儲數(shù)據(jù),滿足用戶的各種需求的過程。到底數(shù)據(jù)庫該如
數(shù)據(jù)庫設(shè)計(jì)是根據(jù)用戶需求設(shè)計(jì)數(shù)據(jù)庫結(jié)構(gòu)的過程,具體來說,數(shù)據(jù)庫設(shè)計(jì)是對于給定的應(yīng)用環(huán)境,在厝數(shù)據(jù)庫理論的指導(dǎo)下,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,在數(shù)據(jù)庫管理系統(tǒng)上建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能有效地存儲數(shù)據(jù),滿足用戶的各種需求的過程。到底數(shù)據(jù)庫該如何設(shè)計(jì),古往今來,每個人都有每個人的想法,所以數(shù)據(jù)庫設(shè)計(jì)并沒有優(yōu)劣之分,好壞之別,合適的數(shù)據(jù)庫設(shè)計(jì)就是最好的。
走過自考--《數(shù)據(jù)庫系統(tǒng)原理》,看過耿建玲老師的視頻,對數(shù)據(jù)庫設(shè)計(jì)有了一點(diǎn)了解,VB版的機(jī)房收費(fèi)系統(tǒng),直接用原來的腳本生成的數(shù)據(jù)庫,當(dāng)時對數(shù)據(jù)庫設(shè)計(jì)這部分的內(nèi)容也沒有特別深入的研究過,欠下的債,早晚要還,我想現(xiàn)在是時候了,這幾天,VB.Net版的機(jī)房收費(fèi)系統(tǒng)正式開工了,才發(fā)現(xiàn)數(shù)據(jù)庫設(shè)計(jì)是一門學(xué)問,接下來,結(jié)合機(jī)房收費(fèi)系統(tǒng),總結(jié)一下數(shù)據(jù)庫設(shè)計(jì)。
首先,數(shù)據(jù)庫設(shè)計(jì)主要包含以下六個步驟:
1、需求分析:了解用戶的數(shù)據(jù)需求、處理需求、安全性及完整性要求;
2、概念設(shè)計(jì):通過數(shù)據(jù)抽象,設(shè)計(jì)系統(tǒng)概念模型,一般為E-R模型;
3、邏輯結(jié)構(gòu)設(shè)計(jì):設(shè)計(jì)系統(tǒng)的模式和外模式,對于關(guān)系模型主要是基本表和視圖;
4、物理結(jié)構(gòu)設(shè)計(jì):設(shè)計(jì)數(shù)據(jù)的存儲結(jié)構(gòu)和存取方法,如索引的設(shè)計(jì);
5、系統(tǒng)實(shí)施:組織數(shù)據(jù)入庫、編制應(yīng)用程序、試運(yùn)行;
6、運(yùn)行維護(hù):系統(tǒng)投入運(yùn)行,長期的維護(hù)工作。
本文就需求分析,概念設(shè)計(jì)和邏輯結(jié)構(gòu)設(shè)計(jì)展開討論,在這里簡單的說一下機(jī)房收費(fèi)系統(tǒng)的需求,使用該系統(tǒng)有三個角色用戶:分別為一般用戶,操作員,管理員。不同的權(quán)限有著不同的權(quán)限,具體如下:
A、一般用戶可以實(shí)現(xiàn)的功能是
a、查看學(xué)生卡內(nèi)余額,通過卡號查詢查看學(xué)生基本信息并顯示余額。
b、查看上機(jī)記錄,通過卡號查詢上機(jī)記錄,姓名,上下機(jī)日期和時間,消費(fèi)金額,導(dǎo)出Execl表格。
c、查看充值記錄,通過卡號查詢充值金額,充值日期,充值時間,充值教師,導(dǎo)出Excel表格。
d、查詢學(xué)生上機(jī)狀態(tài),并可以強(qiáng)制管理學(xué)生進(jìn)行下機(jī)操作。
e、修改密碼。
B、操作員指辦理一定業(yè)務(wù)的人員,級別高于一般用戶,除了可以實(shí)現(xiàn)值班員的功能外,還可以執(zhí)行額外功能:
a、注冊卡號,注冊一張新卡。
b、充值,通過卡號充值金額,顯示充值卡號,上次卡內(nèi)余額,現(xiàn)在卡內(nèi)余額,充值日期時間以及老師。
c、退卡,將卡注銷,并退還學(xué)生卡內(nèi)余額
d、收取(退還)金額查詢,通過輸入起始日期和終止日期,查詢充值金額,充值日期時間,充值教師,導(dǎo)出Execl表格。
e、學(xué)生基本信息維護(hù)和操作員工記錄,采用組合查詢。
f、學(xué)生上機(jī)統(tǒng)計(jì)信息查詢,采用組合查詢,導(dǎo)出Execl表格。
C、管理員可以管理系統(tǒng)所有信息,級別最高,除了可以處理值班員和操作員的功能外,還可以處理其他操作:
a、結(jié)賬
b、添加刪除用戶,添加或刪除不同級別的賬戶
c、基本數(shù)據(jù)設(shè)定,包含上機(jī)費(fèi)用等信息
d、查看正在值班的教師
e、日結(jié)和周結(jié),涉及報(bào)表。
根據(jù)上面的需求分析,設(shè)計(jì)ER模型(不是特別完整,有不同見解的小伙伴歡迎留言交流)如下圖:
vcq9o6zSu8rH1NpTUUwgU2VydmVyIE1hbmFnZW1lbnQgU3R1ZGlv1tDKudPDz/K1vLS0vajK/b7dv+KjrLb+ysfNqLn9sunRr7Swv9rWtNDQVC1TUUzT777ktLS9qMr9vt2/4qGj0tRULVNRTLS0vajK/b7dv+K6zbHtzqrA/aOsyrXP1rT6wuvI58/COjwvcD4KPHA+ICAgICAgICAgPHByZSBjbGFzcz0="brush:sql;">create database mycharge --創(chuàng)建mycharge數(shù)據(jù)庫
go
user mycharge --轉(zhuǎn)到mycharge數(shù)據(jù)庫
go
create table studen --在STUDENT數(shù)據(jù)庫中創(chuàng)建表student
(
Sno char(10) primary key,
Sname char (10) ,
Ssex ,
Sage int,
Sdept char(10)
) 機(jī)房收費(fèi)系統(tǒng)表如下:
1、學(xué)生表:卡號、學(xué)號、姓名、類型、性別、系別、年級、班級、金額、狀態(tài)、備注。
2、上機(jī)表:卡號、類型、學(xué)號、姓名、系別、性別、上機(jī)日期、下機(jī)日期、上機(jī)時間、下機(jī)時間、消費(fèi)時間、消費(fèi)金額、余額。
3、充值表:卡號、充值金額、充值時間、充值教師。
4 、用戶表:用戶名、密碼、身份、操作人。
5、退卡表:卡號、退款金額、退卡時間、辦理退卡教師、結(jié)賬狀態(tài)。
6、操作員工工作記錄表:序列號、教師、身份、注冊日期、注冊時間、注銷日期、注銷時間。
7、結(jié)賬信息表:售卡張數(shù)、總售卡張數(shù)、退卡張數(shù)、應(yīng)收總金額、充值金額、臨時收費(fèi)金額。
8、基本數(shù)據(jù)設(shè)定信息表:固定半個小時費(fèi)用、臨時半個小時費(fèi)用、遞增單位時間、至少上機(jī)時間、準(zhǔn)備時間、最少金額。
9、正在值班教師信息表:記錄號、教師名、身份、登陸日期、登錄時間。
10、日結(jié)賬信息表:上次充值卡余額、當(dāng)日充值金額、當(dāng)日消費(fèi)金額、本次充值卡金額、日期。
11、周結(jié)帳信息表:上次充值卡金額、本次充值金額、本次消費(fèi)金額、本次充值卡余額、日期。
初次設(shè)計(jì)數(shù)據(jù)庫,存在很多缺陷,有不同意見的小伙伴歡迎留言交流,機(jī)房收費(fèi)系統(tǒng)個人重構(gòu)版,未完待續(xù)......
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com