gpt4 book ai didi

mysql - 使用网站和产品数据库架构帮助的许可

转载 作者:行者123 更新时间:2023-11-29 02:05:59 25 4
gpt4 key购买 nike

我正在建立一个网站,我会向使用它的客户收费。我正在考虑有 6 个月度或年度许可选项,并且会有一些不同的许可变体可用,每个许可授予不同类型的网站访问权限。

此外,我还会提供一些可选的附加功能,您可以在购买他们的许可证时添加这些附加功能。这些将是一次性购买,更像是产品而不是许可证。它们是网站的更多附加组件,可启用更多功能。一旦购买,您就可以保留它。所以一切都基于网站,无需担心运输。

这将以某种购物车方式显示,他们可以在其中选择他们想要的东西,然后发送到 Paypal 进行处理。

只是想知道如何在我的数据库中正确建模?到目前为止,我想出了:

Database schema

基本上,我尝试将许可证和产品放在同一个表中,并使用标志列 (licence_or_product) 来区分两者。这将有助于在网站上显示它是产品还是许可证。

许可证 *offering_start_date* 和 *offering_end_date* 字段是否值得?我正在尝试获取它,以便在我想以不同的价格提供新的许可证时可以使该产品过期。这样,已经以该价格购买许可证的客户将始终保持该价格。如果我想更改价格,我会将产品结束日期设置为今天,然后创建一个新的 licence_products 行,价格较低但结束日期在未来。这是正确的方法吗?还是直接编辑商品的价格?我只是在想,如果价格发生变化,那么客户希望获得该许可证的退款,您如何跟踪他们为该许可证支付了多少费用? amount_paid 字段会告诉我整个订单的成本是多少,但不会告诉我现在已经更改的许可证的原始价格。我需要所有产品价格变化的历史记录吗?

其他我不知道该怎么做的事情,假设他们已经购买了使用该网站一年的许可证。我如何提取最新的许可证?比方说,我已经开始使用 30 天的试用许可证,然后他们购买了年度许可证。我是否立即使试用许可证失效?我想我一次只想要一个有效的许可证。因此,如果他们在旧许可证到期之前购买了另一个许可证,我不确定我的程序应该如何处理。

非常感谢任何帮助。谢谢!

附言如果您想稍微修改一下,这里是 SQLyog 数据库模式和 SQL。

sql db extract

SQLyog schema

最佳答案

我认为您应该创建以下 3 个表:
1. customer(客户或任何对你有意义的东西),
2.许可证和
3. customer_license.

我建议为 customer_license 表添加以下字段:

  • id(一些 int auto_increment)
  • customer_id(一些整数)FK
  • license_id(一些整数)FK
  • price_offered decimal(7,2)(具有您需要的精度)
  • 到期日期
  • 活跃的 tinyint(1)
  • 创建日期时间
  • updated_at 日期时间

这样您就可以使用您提供给他们的许可来跟踪客户的所有详细信息:您提供了什么?你什么时候提供的?什么时候过期?报价?许可证有效?

祝你好运

关于mysql - 使用网站和产品数据库架构帮助的许可,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5937571/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com