學計算機的男孩、女孩現在都蠻多。特別是80、90後網路原著民,很多人都特別愛玩遊戲。我們透過遊戲裡面的使用者裝備資訊來講解表的關係。
銀行提款、轉帳、發紅包也是我們日常中最常用銀行卡操作,我們也用銀行卡的存取來講解表的關係。
遊戲裡的裝備與使用者的關係
在遊戲裡面的某個人物有頭盔、衣服、靴子、武器、項鍊。
並且,每一個不同的武器都會增加上不同的攻防值。那我們就可以這樣來模擬遊戲的表設計。
註:以下僅為了讓大家更理解遊戲裡、使用者和裝備的關係。
用戶表
#裝備表
使用者表中骷髏王帶上了裝備表中編號為1(死亡面具)和使用了編號為6(魔棒)的武器。 而使用者3(半人馬),使用了裝備表中編號為3(的速度之靴)和7(幽魂權杖)。 這樣就實現了遊戲中某些使用者戴上了裝備。如果使用者的行和列資料裡面沒有這個選項的話,就沒有這個資料。
透過裝備的屬性值,與使用者等級屬性值相加就實現了使用者穿上裝備好的回血、防禦值增加等不同的效果。
銀行開戶、取現與轉帳
我們來透過表格的方式來模擬:
上表中設計了使用者的銀行卡ID、卡號、密碼、是否凍結和餘額。我們自行規定:凍結狀態可以設定為0(未凍結) 和 1 (凍結了)。如果銀行收到法院的通知。則將凍結狀態設為1。有錢也不讓拿錢。 (這塊業務邏輯需要在程式中實作)。
用戶若取錢了,或是存錢了將用戶的餘額增加或減少。同時將記錄,記錄至交易流水中。
交易流水錶
#每當用戶的餘額改變的時候,我們都會忠實的記錄到交易流水錶。讓交易可查、可追述。
這樣就模擬了銀行的凍結、取現、存錢等流程。
附註:
密碼必須使用md5等加密方式幫使用者進行加密。使用者輸入原密碼如:123456。我們使用md5將用戶輸入的123456加密後與資料庫的密碼進行比較。
一致則密碼通過。不一致則使用者將密碼輸入錯誤了。
這樣就實現保證使用者密碼安全,防止內部人員洩漏使用者密碼的可能性。
更多的密碼知識,我們在下冊和進階項目中更多的為大家講解。
資料庫的安裝
#我們的整合安裝套件已經包含了MySQL,大家直接使用就可以了
下一節