MySQL数据库中的网站事务

时间:2011-05-04 11:25:19

标签: mysql database database-design database-schema

美好的一天,

我正在为我的网站设计数据库结构。我只是在一方面需要社区援助,因为我从未做过类似的事情。

网站将包含三种类型的付款:

  1. 内部付款(托管类付款)。用户可以将付款发送给其他用户。
  2. 矿床。用户为他们的帐户添加资金。
  3. 提款。用户可以请求提款。资金将被发送到他们的银行/ PayPal帐户。
  4. 基本上,我需要一些技巧来获得最佳设计。

    以下是我的想法:
    deposits - 此表将存储有关存款的信息 deposits_data - 此表将存储有关存款交易的信息(例如,PayPal IPN返回的数据)
    payments - 存储内部付款的表格 withdrawals - 用于存储有关提款请求的信息的表格 transactions - 用于存储有关所有交易的信息的表(使用名为类型的ENUM()字段,可能包含以下值:内部,存款,取款)

    请注意,我已经有一个表logs来存储每个用户操作。

    不幸的是,我觉得我的设计方法在这方面并不是最好的。你能分享一些想法/提示吗?

    PS。我可以使用名称“托管”进行内部付款,还是应该选择不同的名称?

    修改
    DEPOSITSPAYMENTSWITHDRAWALS表存储特定的交易详情。 TRANSACTIONS表只存储有限的信息 - 它是一种日志表 - 带有details字段(其中包含要在用户日志部分显示的文本,例如:“用户1向您发送了付款” )/

    当然我有用户表等。

1 个答案:

答案 0 :(得分:0)

  

我可以在内部使用名称“托管”吗?   付款或我应该选择不同的   命名

托管具有特定的财务/法律含义,这与您的意思不同:“向第三方交付或由合同的一方信托的书面协议(或财产或金钱)满足某些条件后返回“(source

所以选择一个不同的名字似乎是一个好主意。

至于设计,DEPOSITS,PAYMENTS和WITHDRAWALS会存储哪些数据会交易哪些交易?此外,您需要一个ACCOUNTS表。或者你打算只使用你现有的USERS表(我猜你有这样的东西)?您可能应该为外部各方提供一些东西,即使您打算暂时支持PayPal。