博客
关于我
丛林战争游戏数据库设计
阅读量:90 次
发布时间:2019-02-26

本文共 1997 字,大约阅读时间需要 6 分钟。

目前游戏的数据库设计较为简单,包含两个表

用户信息表User

用来存放玩家数据

  1. username 玩家用户名
  2. password 用户密码
  3. id 主键,自动增长

客户端登录时,验证用户名和密码是否存在于数据库,存在说明用户存在,允许登录,返回登录成功,不能存则返回失败。

CREATE TABLE `Game`.`user`  (  `id` int(10) NOT NULL AUTO_INCREMENT,  `username` varchar(50) NOT NULL,  `password` varchar(50) NOT NULL,  PRIMARY KEY (`id`),  UNIQUE INDEX `unique_username`(`username`));

数据表Result

用来存放玩家的战绩

  1. id 主键
  2. userid 外键 表示战绩属于哪个用户的
  3. totalCount总场数
  4. winCount胜利局数
CREATE TABLE `Game`.`result`  (  `id` int(10) NOT NULL AUTO_INCREMENT,  `userid` int(10) NOT NULL COMMENT '表示战绩属于哪个玩家',  `totalcount` int NULL DEFAULT 0 COMMENT '一共游戏局数,默认为0',  `wincount` int NOT NULL DEFAULT 0 COMMENT '游戏胜利局数',  PRIMARY KEY (`id`),  CONSTRAINT `fk_userid` FOREIGN KEY (`userid`) REFERENCES `Game`.`user` (`id`));

sql文件Game.sql

/* Navicat Premium Data Transfer Source Server         : JungleWars Source Server Type    : MySQL Source Server Version : 80018 Source Host           : localhost:3306 Source Schema         : Game Target Server Type    : MySQL Target Server Version : 80018 File Encoding         : 65001 Date: 11/07/2020 01:42:07*/SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for result-- ----------------------------DROP TABLE IF EXISTS `result`;CREATE TABLE `result` (  `id` int(10) NOT NULL AUTO_INCREMENT,  `userid` int(10) NOT NULL COMMENT '表示战绩属于哪个玩家',  `totalcount` int(11) DEFAULT '0' COMMENT '一共游戏局数,默认为0',  `wincount` int(11) NOT NULL DEFAULT '0' COMMENT '游戏胜利局数',  PRIMARY KEY (`id`),  KEY `fk_userid` (`userid`),  CONSTRAINT `fk_userid` FOREIGN KEY (`userid`) REFERENCES `user` (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;-- ------------------------------ Table structure for user-- ----------------------------DROP TABLE IF EXISTS `user`;CREATE TABLE `user` (  `id` int(10) NOT NULL AUTO_INCREMENT,  `username` varchar(50) NOT NULL,  `password` varchar(50) NOT NULL,  PRIMARY KEY (`id`),  UNIQUE KEY `unique_username` (`username`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;SET FOREIGN_KEY_CHECKS = 1;

转载地址:http://xdok.baihongyu.com/

你可能感兴趣的文章
MySQL、HBase 和 Elasticsearch:特点与区别详解
查看>>
MySQL、Redis高频面试题汇总
查看>>
MYSQL、SQL Server、Oracle数据库排序空值null问题及其解决办法
查看>>
mysql一个字段为空时使用另一个字段排序
查看>>
MySQL一个表A中多个字段关联了表B的ID,如何关联查询?
查看>>
MYSQL一直显示正在启动
查看>>
MySQL一站到底!华为首发MySQL进阶宝典,基础+优化+源码+架构+实战五飞
查看>>
MySQL万字总结!超详细!
查看>>
Mysql下载以及安装(新手入门,超详细)
查看>>
MySQL不会性能调优?看看这份清华架构师编写的MySQL性能优化手册吧
查看>>
MySQL不同字符集及排序规则详解:业务场景下的最佳选
查看>>
Mysql不同官方版本对比
查看>>
MySQL与Informix数据库中的同义表创建:深入解析与比较
查看>>
mysql与mem_细说 MySQL 之 MEM_ROOT
查看>>
MySQL与Oracle的数据迁移注意事项,另附转换工具链接
查看>>
mysql丢失更新问题
查看>>
MySQL两千万数据优化&迁移
查看>>
MySql中 delimiter 详解
查看>>
MYSQL中 find_in_set() 函数用法详解
查看>>
MySQL中auto_increment有什么作用?(IT枫斗者)
查看>>