mysql - 基于列表的数据库设计

标签 mysql database database-design

有人可以帮我根据以下标准设计数据库/表吗?

需要一个电子商务网站,允许访问者浏览、搜索和购买电影。应用以下业务逻辑:

  1. 每部电影都可以以 DVD 或蓝光格式提供,并具有不同的库存代码和价格。网站管理员将来可能会添加其他格式。
  2. 电影应包含标题、说明、发行年份以及存储的“星级评定”(满分 10 级)。
  3. 电影不与任何 Actor 或多个 Actor 关联, Actor 也可以不与任何电影或多个电影关联,因为某些电影可能是纪录片(没有 Actor )。
  4. 电影可以与一种或多种类型相关联(例如 Action 片、冒险片、科幻片等)。
  5. 流派和 Actor 的数量可能会发生变化,因此网站管理员需要能够随着时间的推移添加/编辑任意数量的流派和 Actor 。
  6. 网站访问者应该能够通过按 Actor 或流派浏览来查找电影。当他们这样做时,他们应该能够看到与他们选择的 Actor /类型相关的所有电影的列表。
  7. 为了从网站上购物,访问者必须注册其详细信息才能成为用户。
  8. 用户将有一个或多个与其帐户关联的地址。当他们将来登录系统时,他们之前输入的所有地址都应该可供他们选择最新的订单。他们还应该能够随时向其帐户添加新地址。
  9. 订购时,用户将从可用电影(特定格式)中选择一个或多个项目。他们需要从之前输入的地址中选择一个帐单和送货地址,并通过信用卡支付订单。
  10. 由于产品价格可能会随着时间的推移而变化,系统应记录订单中每件商品在购买时的价格以及整个订单的总价。
  11. 不需要跟踪库存水平 - 可以假设所有产品始终都有库存。

最佳答案

如果这是家庭作业或类项目,那么您确实需要开始学习标准化。看看wikipedia上的文章或者这个introduction在 MySQL 网站上

如果这是一个专业项目,那么您需要专业帮助来设计/开发您的电子商务网站。

关于mysql - 基于列表的数据库设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5272672/

相关文章:

mysql - 使用 ElasticSearch JDBC river 从表中获取更改

mysql - 将三个电话号码之一存储为数据库中的主号码

sql - 如何选择某列中具有相等值的记录?

Mysql像其他表一样创建表

java - 在Java中插入和读取字符串数组

sql - 创建一个数据库来存储模块名称及其 parent_module_id

mysql - 混合多态关联和层次结构的最佳方式?

ruby - 您将如何在 MongoDB 中有效地实现这些查询?

sql - 更新 SQL 'relationship' 表的有效方法

php - echo <a> 标签内的变量