該博客是小帳本在前期開發階段針對用戶所進行的數據庫設計,經過ER圖,數據字典,數據流圖來對該軟件的數據庫開發進行設計,而且附上部分源代碼進行參考。數據庫
因爲該任務的小組成員表示目前的er圖已經漸漸往uml圖的趨勢發展,因此該er圖包含了一部分uml圖的特徵 數據結構
數據表的設計經過數據流圖和數據字典分別設計數據庫設計
字段名工具 |
中文名ui |
數據類型spa |
主鍵設計 |
外鍵code |
說明blog |
U_idip |
用戶id |
int |
PK |
不能爲空 |
|
Con_id |
配置id |
int |
FK1 |
不能爲空 |
|
U_number |
登陸帳號 |
varchar(20) |
FK2 |
不能爲空 |
|
U_name |
用戶名 |
varchar(50) |
用戶暱稱 |
||
U_gender |
性別 |
char(2) |
性別可爲空 |
||
U_phone |
電話 |
Char(11) |
字段名 |
中文名 |
數據類型 |
主鍵 |
外鍵 |
說明 |
C_id |
類別id |
int |
PK |
不能爲空 |
|
type |
類別 |
varchar(255) |
字段名 |
中文名 |
數據類型 |
主鍵 |
外鍵 |
說明 |
Con_id |
配置id |
int |
PK |
不能爲空 |
|
U_id |
用戶id |
int |
FK |
不能爲空 |
|
key_ |
配置信息 |
varchar(255) |
配置信息按照鍵值對的形式出現 ,類型是varchar(255) |
||
value |
配置信息的值 |
配置信息的值, 類型是 varchar(255) |
字段名 |
中文名 |
數據類型 |
主鍵 |
外鍵 |
說明 |
U_number |
帳號 |
varchar(20) |
PK |
不能爲空 |
|
U_id |
用戶id |
int |
FK |
不能爲空 |
|
U_password |
密碼 |
varchar(50) |
密碼要求保密性高 |
字段名 |
中文名 |
數據類型 |
主鍵 |
外鍵 |
說明 |
U_id |
用戶id |
int |
PK |
FK1 |
不能爲空 |
C_id |
類別id |
int |
PK |
FK2 |
不能爲空 |
spend |
消費金額 |
int |
|||
date |
日期 |
Date |
默認系統時間 |
||
Comment |
備註 |
varchar(255) |
字段名 |
中文名 |
數據類型 |
主鍵 |
外鍵 |
說明 |
U_id |
用戶id |
int |
PK |
FK1 |
不能爲空 |
C_id |
類別id |
int |
PK |
FK2 |
不能爲空 |
earn |
收入金額 |
int |
|||
date |
日期 |
Date |
默認系統時間 |
||
Comment |
備註 |
varchar(255) |
SET FOREIGN_KEY_CHECKS = 0; DROP TABLE IF EXISTS `user`; DROP TABLE IF EXISTS `property`; DROP TABLE IF EXISTS `operating`; DROP TABLE IF EXISTS `budget`; DROP TABLE IF EXISTS `wish`; SET FOREIGN_KEY_CHECKS = 1; CREATE TABLE `user` ( `id` char(12) NOT NULL, `username` char(20) NOT NULL, `descriptin` varchar NOT NULL, PRIMARY KEY (`id`) ); CREATE TABLE `property` ( `id` char(1) NOT NULL, `account` char(18) NOT NULL, `balance` float(8) NOT NULL, `uid` char(12) NOT NULL, PRIMARY KEY (`id`, `uid`) ); CREATE TABLE `operating` ( `id` char(12) NOT NULL, `type` bool NOT NULL, `account` float(8) NOT NULL, `uid` char(12) NOT NULL, `pid` char(1) NOT NULL, PRIMARY KEY (`id`, `uid`, `pid`) ); CREATE TABLE `budget` ( `id` char(12) NOT NULL, `schedule` float(8) NOT NULL, `uid` char(12) NOT NULL, PRIMARY KEY (`id`, `uid`) ); CREATE TABLE `wish` ( `id` char(12) NOT NULL, `description` varchar NOT NULL, `finishtime` date NOT NULL, `uid` char(12) NOT NULL, PRIMARY KEY (`id`, `uid`) ); ALTER TABLE `property` ADD FOREIGN KEY (`uid`) REFERENCES `user`(`id`); ALTER TABLE `operating` ADD FOREIGN KEY (`uid`) REFERENCES `user`(`id`); ALTER TABLE `operating` ADD FOREIGN KEY (`pid`) REFERENCES `property`(`id`); ALTER TABLE `budget` ADD FOREIGN KEY (`uid`) REFERENCES `user`(`id`); ALTER TABLE `wish` ADD FOREIGN KEY (`uid`) REFERENCES `user`(`id`);