当前位置:  开发笔记 > 编程语言 > 正文

投注社区的数据库设计

如何解决《投注社区的数据库设计》经验,为你挑选了1个好方法。

我正在为我国的足球博彩游戏创建一个在线社区.我非常清楚整个系统应该如何工作但我在找出理想的数据库设计时遇到了一些麻烦,我需要一些帮助.

通常的工作流程应该是这样的:

    欢迎大家注册成为会员; 每个成员都应该有一个名字,电子邮件地址和密码.

    每周都会开设一个新的投注比赛,每个比赛都有一组固定的"问题"(在这种情况下,每个"问题"基本上都是"主队 - 访问团队"的形式).

    每个成员都可以自由地以"1 X 2"(1:Home Wins,X:Draw,2:Visiting Wins; 对于每个"问题")的形式对所有可用的公开竞赛以及一定数量的金额进行预测(见第5点).每次比赛只允许一次预测.

    在每周结束时,所有比赛都将结束,并根据所有个人投注和每个成员的表现进行实际投注(另请参阅此相关问题).已下注的赌注应公开供所有人查看.

    当所有比赛的结果都已知时,应该可以"附上"(抱歉,我错过了这个词)奖金的金额(当然,如果社区运气好的话).然后,奖金应按比例除以每个团队成员对赌注的金额.

    每个成员可以在任何给定时间存入或从其账户中提取可变数额的资金,还应该有一个交易页面,其中显示所有存款,奖品和提款.

奖金问题:由于我在"SEO友好"网址上仍然非常环保,我也有兴趣了解如何命名该系统中涉及的所有细分.

我非常感谢设计可以适应整个场景的数据库架构的任何帮助.

PS:我会为这个问题打开奖金,我目前在互联网连接上遇到了一些问题,所以我可能需要一些时间来阅读/评论你的答案.

提前致谢!



1> Damir Sudare..:

这是一项艰巨的任务,但这是我的尝试:

Members表存储成员数据; 包括PerformanceFactor根据一个人答案的正确性定期重新计算的内容.

Transactions表跟踪每个成员的存款和取款.该Type字段可以是1 =存款,2 =取款,3 =从奖金转移.

一个比赛可以有很多问题,一个问题只属于一个比赛.

一个成员可以放置许多成员投注,成员投注仅属于一个成员.放置UNIQUE约束MemberID, ContestID以防止成员为特定比赛下几个赌注

一个成员下注有几个答案,每个答案只属于一个成员下注; 每个答案都与一个问题有关.放置UNIQUE约束MemberBetID, QuestionID以防止成员为特定问题放置多个答案.

DerivedAnswers表格包含通过特定比赛的成员答案的"统计分析"获得的答案.放置UNIQUE约束ContestID, QuestionID以防止重复特定问题的答案.

community_bets_01


Visio PRO,还有其他 - 只需在这里浏览"数据库设计",很少有人建议使用其他工具.
另请查看mysql workbench.它输出的文件将与sqlite兼容(只需删除开头的mysql特定内容).另请注意,虽然接受,但sqlite不支持外键.为了创建FK关系,您必须使用触发器.有关如何完成此操作的示例,请参阅此页面(我知道有一个脚本可以在某处为您创建触发器)http://kobesearch.cpan.org/htdocs/Parse-Dia-SQL/Parse/Dia /SQL/Output/SQLite3.pm.html
推荐阅读
雨天是最美
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有