首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >静态数据和进度数据的数据库设计

静态数据和进度数据的数据库设计
EN

Stack Overflow用户
提问于 2013-07-17 23:04:35
回答 1查看 138关注 0票数 0

如果我有一些数据应该是静态的作为源

表人员A(静态)幸福感0

我需要一个表来存储用户的播放进度

表User_1_Person_A幸福感5

怎样才能设计出精巧的数据库呢?我唯一的想法是

表Person_A幸福5 User_id 1

但是两个表列将是相同的。这是一个糟糕的设计吗?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-17 23:35:07

我来猜猜你在问什么。

进展

如果您想跟踪进度,则需要一个带有时间戳的表。

下面是我如何定义您的表。

代码语言:javascript
复制
Person
------
Person ID
Person User ID
Person Name
...

Person ID是Person表的主要(聚类)键。它是一个自动递增的整数或长整型。

代码语言:javascript
复制
Skill
-----
Skill ID
Skill Name

技能ID是技能表的主要(聚类)关键字。它是一个自动递增的整数或长整型。

代码语言:javascript
复制
Progress
--------
Progress ID
Person ID
Skill ID
Progress Timestamp
Progress Level

进度ID是“进度”表的主要(聚类)关键字。它是一个自动递增的整数或长整型。

您可以在(人员ID、技能ID、进度时间戳降序)上创建另一个唯一索引。这使您可以选择任何技能的最新(最高)技能级别。

初始

您还需要一个表来设置任何技能的初始进度级别。

代码语言:javascript
复制
Initial
-------
Initial ID
Skill ID
Initial Level

初始ID是初始表的主(聚类)键。它是一个自动递增的整数或长整型。

摘要

将数据元素组织到数据库表中的过程称为normalization

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17703408

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档