首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Mysql数据库设计

Mysql数据库设计
EN

Stack Overflow用户
提问于 2011-04-05 16:30:42
回答 4查看 87关注 0票数 0

目前,我正在从事一个项目,乍一看,它将需要一个数据库中的许多表。大多数表都相当简单,但是我确实有一个问题。其中一个表格将是一个网站的成员名单,如用户名,密码,联系方式,生物,教育等将包括在内。这是一个简单的设计,但是,每个成员也需要输入它们的可用性并存储在数据库中。可用性定义为日期和时间范围。类似于2011年4月5日从东部时间下午1点到下午6点,或者不在东部时间下午8点以后的每周五。对于单个用户来说,这可能是一个表本身,但对于许多用户来说,我不知道如何以一种可管理的方式组织数据。首先考虑的是为每个用户创建一个表的代码,但这可能意味着数据库中除了我为其他站点功能所拥有的少数表之外,还有很多表。从逻辑上讲,我可以使用附加到Avail_或表名(即: Avail_UserBob )的用户名,然后根据需要进行查询。但我很好奇是否有人能想到比在一个数据库中拥有数百个表的潜力更好的选择。

编辑这样一般的协议将是有一个表的成员,唯一的关键是ID,例如。然后有第二个可用表(日期、开始时间、结束时间、可用与否的布尔值以及适用于此的成员id )。Django可能听起来不错,工作也很好,但是我没有时间在这个项目中花时间学习另一个框架。2表方法似乎是可滥用的,但我担心的是,需要额外的编码功能,这些特性将利用A)构建一个像日历一样的页面来添加、编辑或删除输入的值,以及( B)与另一个列出游戏的表中的条目相匹配。虽然我可能有更多的编码,但我可以接受,只要数据库是健全的,功能的,并没有那么混乱。谢谢你们的意见。

EN

回答 4

Stack Overflow用户

发布于 2011-04-05 16:36:51

听起来不像一个巨魔,但你应该考虑使用一个web框架来为你构建大部分这些东西。我建议你看看Django。使用它,您可以定义希望存储的字段的类型(以及它们之间的关系),Django构建了所有的SQL语句。您可以免费获得一个很好的管理界面,这样工作人员就可以登录并添加/编辑/等。

您也不必担心构建登录/auth/更改密码等表单。所有的会话内容都由Django来处理。你可以专注于是什么让你的项目/应用程序变得独一无二。

它让你能够非常、非常快地构建你的项目。

djangoproject.org

我没有任何其他框架建议来满足你的需要。我真的..。但我想Django会符合要求的。

票数 1
EN

Stack Overflow用户

发布于 2011-04-05 16:34:45

创建一个表来存储用户。将其主键用作其他表中的外键。

票数 0
EN

Stack Overflow用户

发布于 2011-04-05 16:38:35

数据库是为了在一个表中容纳许多行而编写的。没有为创建表进行优化。因此,为每个用户创建一个新表并不是一个好主意。相反,给每个用户一个唯一的标识符,并将可用性放在一个单独的表中。提供一个附加标志,使条目有效或无效。

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

https://stackoverflow.com/questions/5555210

复制
相关文章

相似问题

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