RPG游戲數據庫設計

一.數據庫需求分析

通過游戲過程中所需元素,設計如下數據項和數據結構
1.角色,包括的數據項有:用戶ID,角色ID,角色昵稱,(通用屬性,角色屬性)
2.角色屬性,包括的數據項有:力量,智力,敏捷,經驗值,職業,角色ID
3.通用屬性,包括的數據項有:生命值,魔法值,攻擊力,護甲值,魔抗值,主人ID
4.怪物信息,包括的數據項有:怪物ID,(通用屬性,NPC屬性)
5.NPC屬性,包括的數據項有:出生地點,活動范圍,功能,主人ID
6.用戶信息,包括的數據項有:用戶ID,用戶密碼,用戶郵箱,登陸地址,登陸時間
7.裝備,包括的數據項有:裝備名稱,裝備描述,(通用屬性),裝備ID,主人ID
8.技能,包括的數據項有:技能名稱,基礎傷害,加成類型,加成比例,冷卻時間,學習等級

二.數據庫概念結構設計

角色E-R圖.PNG
角色屬性E-R圖.PNG
通用屬性E-R圖.PNG
怪物信息E-R圖.PNG
NPC屬性E-R圖.PNG
用戶信息E-R圖.PNG
裝備E-R圖.PNG
技能E-R圖.PNG
實體間聯系E-R圖.PNG

三.數據庫邏輯結構設計

角色
字段名 數據類型 長度 是否為NULL 描述
YHID INT 8 不為NULL,外鍵 創建該角色的用戶ID
JSID INT 8 不為NULL,主鍵 該角色的ID
JSNC CHAR 8 不為NULL 角色昵稱
角色屬性
字段名 數據類型 長度 是否為NULL 描述
ID INT 8 不為NULL,外鍵 擁有該屬性的角色ID
LL INT 3 不為NULL 力量
ZL INT 3 不為NULL 智力
MJ INT 3 不為NULL 敏捷
JYZ INT 3 不為NULL 經驗值
ZY CHAR 4 不為NULL 職業
通用屬性
字段名 數據類型 長度 是否為NULL 描述
SMZ INT 3 不為NULL 生命值
MFZ INT 3 不為NULL 魔法值
GJL INT 3 不為NULL 攻擊力
HJZ INT 3 不為NULL 護甲值
MKZ INT 3 不為NULL 魔抗值
ID INT 8 不為NULL,外鍵 擁有該屬性的ID
怪物
字段名 數據類型 長度 是否為NULL 描述
ID INT 8 不為NULL,主鍵 怪物ID
NPC屬性
字段名 數據類型 長度 是否為NULL 描述
ID INT 8 不為NULL,外鍵 擁有該屬性的ID
CSDD CHAR 8 不為NULL 出生地點
HDFF INT 3 不為NULL 活動范圍
GN CHAR 3 可空,商人,任務發布者,怪物等 功能
用戶信息
字段名 數據類型 長度 是否為NULL 描述
YHID INT 8 不為NULL,主鍵 用戶ID
YHMM CHAR 8 不為NULL 用戶密碼
YHYX CHAR 8 不為NULL 用戶郵箱
DLDZ CHAR 8 可NULL 登陸地址
DLSJ CHAR 8 可NULL 登陸時間
裝備
字段名 數據類型 長度 是否為NULL 描述
ZBID INT 8 不為NULL,主鍵 裝備ID
ZRID INT 8 不為NULL,外鍵 擁有該裝備的角色ID
ZBMC CHAR 8 不為NULL 裝備名稱
ZBMS CHAR 8 可NULL 裝備描述
技能
字段名 數據類型 長度 是否為NULL 描述
ID INT 8 不為NULL,外鍵 擁有該技能的角色ID
JNMC CHAR 8 不為NULL 技能名稱
JCSS INT 8 不為NULL 基礎傷害
JCLX CHAR 2 不為NULL,物理,魔法 加成類型
JCBL INT 2 可為NULL 加成比例
LQSJ INT 3 不為NULL 冷卻時間
XXDJ INT 3 可為NULL 學習等級

四.數據庫物理結構設計

根據以上邏輯分析所得到的表的關系,我們使用SQL語言設計得到數據庫和數據表,如下:
1.創建數據庫RPGdatabase
CREATE DATABASE RPGdatabase;

2.創建角色數據表
CREATE TABLE Players(
YHID INTEGER NOT NULL,
JSID INTEGER NOT NULL,
JSNC CHAR(8) NOT NULL,
PRIMARY KEY(JSID)
FOREIGN KEY(YHID) REFERENCES(Users)
)

3.創建角色屬性數據表
CREATE TABLE PAttributes(
ID INTEGER NOT NULL,
LL INTEGER NOT NULL,
ZL INTEGER NOT NULL,
MJ INTEGER NOT NULL,
JYZ INTEGER NOT NULL,
ZY CHAR(4) NOT NULL,
FOREIGN KEY(ID) REFERENCES(Players)
)

4.創建通用屬性數據表
CREATE TABLE PAttributes(
ID INTEGER NOT NULL,
SMZ INTEGER NOT NULL,
MFZ INTEGER NOT NULL,
GJL INTEGER NOT NULL,
HJZ INTEGER NOT NULL,
MKZ INTEGER NOT NULL,
FOREIGN KEY(ID) REFERENCES(Players)
)

5.創建怪物數據表
CREATE TABLE Monsters(
ID INTEGER NOT NULL,
PRIMARY KEY(ID)
)

6.創建NPC屬性數據表
CREATE TABLE NpcAttributes(
ID INTEGER NOT NULL,
CSDD CHAR(8) NOT NULL,
HDFF INTEGER NOT NULL,
GN CHAR(3),
FOREIGN KEY(ID) REFERENCES(Players)
)

7.創建用戶信息數據表
CREATE TABLE Users(
YHID INTEGER NOT NULL,
YHMM CHAR(8) NOT NULL,
YHYX CHAR(8) NOT NULL,
DLDZ CHAR(8),
DLSJ CHAR(8),
PRIMARY KEY(YHID)
)

8.創建裝備信息數據表
CREATE TABLE Equips(
ZBID INTEGER NOT NULL,
ZRID INTEGER NOT NULL,
ZBMC CHAR(8) NOT NULL,
ZBMS CHAR(8),
PRIMARY KEY(ZBID)
FOREIGN KEY(ZRID) REFERENCES(Players)
)

9.創建技能信息數據表
CREATE TABLE Skills(
ID INTEGER NOT NULL,
JCSS INTEGER NOT NULL,
JNMC CHAR(8) NOT NULL,
JCLX CHAR(2) NOT NULL,
JCBL INTEGER,
LQSJ INTEGER NOT NULL,
XXDJ INTEGER,
FOREIGN KEY(ID) REFERENCES(Players)
)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,619評論 6 539
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,155評論 3 425
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,635評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,539評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,255評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,646評論 1 326
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,655評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,838評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,399評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,146評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,338評論 1 372
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,893評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,565評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,983評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,257評論 1 292
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,059評論 3 397
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,296評論 2 376

推薦閱讀更多精彩內容

  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,731評論 18 399
  • MySQL 數據庫常用命令 1、MySQL常用命令 create database name; 創建數據庫 use...
    55lover閱讀 4,812評論 1 57
  • MySQL5.6從零開始學 第一章 初始mysql 1.1數據庫基礎 數據庫是由一批數據構成的有序的集合,這些數據...
    星期四晚八點閱讀 1,180評論 0 4
  • 應該是2003年吧,紅色性格的我那時候還在城南小學上著一年級,那時候學習成績還不錯,還是小組組長,每天上下學有接送...
    MrKang丶閱讀 288評論 0 1
  • 記不清是哪個傍晚,下班吃完飯回到辦公桌前坐著,夏天的夜晚總來得特別遲,六點窗外仍是亮堂堂的,我抬頭,看著頭頂的熒...
    無邪居閱讀 223評論 0 0