首页 > 解决方案 > 如何在 Python 中存储多个用户的数据?

问题描述

我正在制作一个在 python 中运行经济类型系统的不和谐机器人。我想使用一个文本文件来存储用户数据,但我不太确定我会如何做到这一点。我的意思是,根据哪个用户执行 /balance 命令,它会搜索他们的特定数据并返回他们的余额。

标签: pythondatabasediscord.py

解决方案


如果您的建筑需要存储用户数据,例如账户余额、用户名、账户创建日期、交易历史等。

切勿将简单的文本文件用于此类实现

您应该使用 ACID 投诉的数据库,这意味着数据库应该是:

A - 原子性:即特定操作成功完成或完全失败(在转移资金或余额的情况下,您不希望余额从转移的账户中扣除,而不是转移到收款人的账户,您也不要'不希望转账失败,但当没有从转账账户中扣除任何费用时,信用会成功存入收款人的账户)

C - 一致性:仅应将遵循规则的有效数据添加到数据库中,并维护数据库的完整性。

I - 隔离:确保每个事务都是隔离的并且不受其他事务的影响。

D - 持久性:确保一旦提交事务,即使发生后续故障,数据也会保留在系统中。

有一个符合 ACID 的优秀数据库,它是一个 NoSQL 数据库,它被称为 MongoDB。

您可以使用 MongoDB 的 Python 驱动程序连接到 Mongo 服务器。 https://www.mongodb.com/languages/python

此外,MongoDB 在您选择如何构建要存储的数据方面非常灵活!


推荐阅读