程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SyBase數據庫 >> SyBase教程 >> 機房收費系統重構——數據庫設計

機房收費系統重構——數據庫設計

編輯:SyBase教程

機房收費系統重構——數據庫設計


終於,走到了機房收費系統重構的階段……

之前的一遍機房收費系統的數據庫是用的給的那個,只是把每個表都看了一下,當時也沒有學習數據庫原理那本書,然後就沒有深究……

現在不一樣了,我們進行機房收費系統重構,況且學習了數據庫原理這本書,對數據庫有了更深的認識。所以對於數據庫要好好的設計,按照步驟走……

數據庫技術是信息資源管理最有效地手段。數據庫設計是指對於一個給定的應用環境,構造最優的數據庫模式,建立數據庫及其應用系統,有效存儲數據,滿足用戶信息要求和處理要求。

數據庫的設計的步驟和各階段的主要內容如下:

\

在邏輯設計階段要注意

將E-R圖轉換為關系模型實際上就是要將實體、實體的屬性和實體之間的聯系轉化為關系模式,這種轉換一般遵循如下原則:

(1)一個實體型轉換為一個關系模式。實體的屬性就是關系的屬性。實體的碼就是關系的碼。

(2)一個m:n聯系轉換為一個關系模式。與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性。 而關系的碼為各實體碼的組合。 <喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+ICAgICCjqDOjqdK7uPYxOm7Bqs+1v8nS1Nequ7vOqtK7uPa2wMGitcS52M+1xKPKvaOs0rK/ydLU0+tutsu21NOmtcS52M+1xKPKvbrPsqKho8jnufvXqru7zqrSu7j2tsDBorXEudjPtcSjyr2jrNTy0+u4w8Gqz7XP4MGstcS498q1zOW1xMLr0tS8sMGqz7WxvsnttcTK9NDUvvnXqru7zqq52M+1tcTK9NDUo6y2+LnYz7W1xMLrzqputsvKtczltcTC66GjPC9wPgo8cD4gICAgIKOoNKOp0ru49jE6McGqz7W/ydLU16q7u86q0ru49rbAwaK1xLnYz7XEo8q9o6zSsr/J0tTT68jO0uLSu7bLttTTprXEudjPtcSjyr26z7KioaM8L3A+CjxwPiAgICAgo6g1o6nI/bj2u/LI/bj20tTJz8q1zOW85LXE0ru49rbg1KrBqs+116q7u86q0ru49rnYz7XEo8q9oaPT67jDtuDUqsGqz7XP4MGstcS498q1zOW1xMLr0tS8sMGqz7WxvsnttcTK9NDUvvnXqru7zqq52M+1tcTK9NDUoaO2+LnYz7W1xMLrzqq498q1zOXC67XE1+m6z6GjIAo8L3A+CjxwPiAgICAgo6g2o6nNrNK7yrXM5byvtcTKtczlvOS1xMGqz7WjrLy019TBqs+1o6zSsr/JsLTJz8r2MToxoaIxOm66zW06bsj91tbH6b/2t9ax8LSmwO2hozwvcD4KPHA+ICAgICCjqDejqb7f09DP4M2swuu1xLnYz7XEo8q9v8m6z7KioaM8L3A+CjxwPiAgICAgo6g4o6m7udPQvs3Kx87Sw8ezo8u1tcTI/be2yr2jqMi3tqjK/b7d0sDAtaGjz/uz/cjf0+C1xMGqz7WjqaO6PC9wPgo8cD4gICAgICAgICAgICAgILXa0ru3tsq9o6gxTkajqaO6udjPtcSjyr1S1tDDv9K7uPbUrdfTtrzKx7K7v8m31rjutcTUrdfTJiMyMDU0MDuhozwvcD4KPHA+ICAgICAgICAgICAgICC12rb+t7bKvaOoMk5Go6mjurnYz7XEo8q9UsrHMU5Go6zDv7j2t8fW98r00NTN6sir0sDAtdPauvLRobz8o6i2vL/J0tTTw8C01/bW97z8tcTX1rbOo6mjrL7NysfC+tfjtdq2/re2yr2hozwvcD4KPHA+ICAgICAgICAgICAgICC12sj9t7bKvaOoM05Go6k6udjPtcSjyr1SyscxTkajrMO/uPa3x9b3yvTQ1La8sru0q7Xd0sDAtdPaUrXEuvLRobz8oaM8L3A+CjxwPiA8L3A+CjxwPiAgICAgICAgICAgICAgytfPyM7SuPm+3dStwLS1xMr9vt2/4r340NDBy9TZtM7J6LzGo6y9q9StwLTTt9bXtcSx7dPQtcS31r+qo6zT0LXEvPXJ2barzvehraGtu63By9K7uPZFUs28o7o8L3A+CjxpbWcgc3JjPQ=="http://www.2cto.com/uploadfile/Collfiles/20150525/2015052509421086.jpg" alt="\">

根據ER圖設計出了數據庫中每個表:

用戶信息表(User_Info):

UsrID

用戶名(主鍵)

Char(10)

Password

密碼

Char(10)

Level

級別

Char(10)

UserName

真實姓名

Char(10)

Holder

開戶人

Char(10)

學生信息表(Student_Info):

StudentID

學號(主鍵)

Char(10)

StudentName

姓名

Char(10)

Sex

性別

Char(2)

Department

系別

Char(10)

grade

年級

Char(10)

Class

班級

Char(10)

卡信息表(card_Info):

CardID

卡號(主鍵)

Char(10)

studentID

學號

Char(10)

Status

使用狀態

Bit

Account

余額

Decimal(10,4)

Type

卡類型

Char(10)

registDate

注冊日期

Date

registTime

注冊時間

Time

checkstatus

結賬狀態

Bit

UserID

用戶名

Char(10)

由於學生和卡是兩個不同的實體,所以將它們有關的信息分開記錄,防止數據冗余,防止表的臃腫。

充值記錄表(Recharge):

cardID

卡號

Char(10)

rechargeMoney

充值金額

Decimal(10,4)

RechargeDate

充值日期

Date

RechargeTime

充值時間

Time

userID

用戶名

Char(10)

checkstatus

結賬狀態

Bit

退卡記錄表(Cancelcard):

cardID

卡號

Char(10)

returnMoney

退還金額

Decimal(10,4)

CancelcardDate

退卡日期

Date

CancelcardTime

退卡時間

Time

UserID

用戶名

Char(10)

checkstatus

結賬狀態

Bit

上下機記錄表(OnOffLineRecord):

cardID

卡號

Char(10)

OnDate

上機日期

Date

Ontime

上機時間

Time

OffDate

下機日期

Date

Offtime

下機時間

Time

OffWay

下機方式

Char(10)

ConsumeMoney

消費金額

Decimal(10,4)

ConsumeTime

消費時間

Time

UserID

用戶名

Char(10)

checkstatus

結賬狀態

Bit

Computer

機器名

Char(10)

基本數據表(BasicData):

Leasttime

至少上機時間

Time

Unittime

單位遞增時間

Time

Rate

固定每小時費用

Decimal(10,4)

Tmprate

臨時每小時費用

Decimal(10,4)

Limitcash

最少金額

Decimal(10,4)

date

日期

Date

Time

時間

Time

UserID

用戶名

Char(10)

賬單(check):

LastcardMoney

上期充值卡金額

Decimal(10,4)

CurrentrechargeMoney

本期充值卡金額

Decimal(10,4)

CurrentcancelcardMoney

本期退卡金額

Decimal(10,4)

CurrentconsumeMoney

本期消費金額

Decimal(10,4)

CurrentcardMoney

本期充值卡金額

Decimal(10,4)

Date

日期

Date

Time

時間

Time

UserId

用戶名

Char(10)

工作記錄表(workLog):

UserID

用戶名

Char(10)

Ondate

登錄日期

Date

Ontime

登錄時間

Time

Offdate

注銷日期

Date

Offtime

注銷時間

Time

Status

狀態

Bit

Computer

機器名

Char(10)

總結:數據庫設計是很重要的一件事,但是我們不可能一次就將自己的數據庫設計的完美,每次都嚴格按照規則走,只有實踐的多了才能慢慢的設計出好的數據庫。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved