返回介绍

02. 娱乐化讲解表关系

发布于 2025-01-30 20:51:02 字数 2940 浏览 0 评论 0 收藏 0

上一章我们讲到了数据库的应用范围非常广泛。如果没有了数据库,可能我们未来寸步难行。

学计算机的男孩、女孩现在都挺多。特别是 80、90 后互联网原住民,很多人都特别爱玩游戏。我们通过游戏里面的用户装备信息讲解表的关系。

银行取钱、转账、发红包也是我们日常中最常用银行卡操作,我们还用银行卡的存取讲解表的关系。

游戏里装备和用户的关系

在游戏里面的某个人物有头盔、衣服、靴子、武器、项链。

并且,每一个不同的武器会增加上不同的攻防值。那我们就可以这么来模拟游戏的表设计。

注:以下仅为了让大家更加理解游戏里、用户和装备的关系。

用户表

用户编号用户名面具靴子武器
1骷髅王1 6
2混沌骑士4 2
3半人马 37

装备表

装备 ID装备名恢复血恢复魔防御
1死亡面具1035
2逃脱匕首2241
3速度之靴345
4艺人面具134
5法师斗篷563
6魔棒133232
7幽魂权杖113345

用户表中骷髅王带上了装备表中编号为 1(死亡面具)和使用了编号为 6(魔棒)的武器。

而用户 3(半人马),使用了装备表中编号为 3(的速度之靴)和 7(幽魂权杖)。

这样就实现了游戏中某些用户戴上了装备。如果用户的行和列数据里面没有这个选项的话,则没有这个数据。

通过装备的属性值,与用户等级属性值相加就实现了用户穿上装备好的回血、防御值增加等不同的效果。

银行开户、取现和转帐

我们在日常生活中经常进行的一个活动就是使用银行卡付钱,在银行的账单中,忠实的记录着我们每一笔交易。

我们来通过表格的方式来模拟:

银行卡 ID银行卡号密码是否冻结余额
16222 0202 0002 66014e10adc3949ba59abbe56e057f20f883e012345.00
25423 4321 4567 88895bd2026f128662763c532f2f4b6f2476145.58

上表中设计了用户的银行卡 ID、卡号、密码、是否冻结和余额。

场景模拟:

  1. 用户插入卡、输入密码正确后。则可以取钱
  2. 社会工程学中,人们喜欢用相同的密码。因此,用户的密码必须要进行再次加密,不可逆向解密。因为害怕看到了某个用户的密码后,用这个密码去尝试用户的其他银行卡。
  3. 我们自行规定:冻结状态可以设置为 0(未冻结) 和 1 (冻结了)。如果银行收到法院的通知。则将冻结状态设置为 1。有钱也不让取钱。(这块业务逻辑需要在程序中实现)。
  4. 用户若取钱了,或者存钱了将用户的余额增加或者减少。同时将记录,记录至交易流水中。

交易流水表

银行卡 ID操作地点
1-1000.00北京市百度大厦 ATM
1+34000.00上海外滩 xx 银行营业室
2-12.08淘宝网购

每当用户的余额发生变化的时候,我们都会忠实的记录到交易流水表中。让交易可查、可追述。

这样就模拟了银行的冻结、取现、存钱等流程。


注:密码必须使用 md5 等加密方式帮用户进行加密。用户输入原密码如:123456。我们使用 md5 将用户输入的 123456 加密后与数据库的密码进行对比。

一致则密码通过。不一致则用户将密码输入错误了。

这样就实现保证用户密码安全,防止内部人员泄漏用户密码的可能性。更多的密码知识,我们在下册和进阶项目中更多的为大家讲解。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文