0

我正在做这个项目,它基本上是使用 PHP/MySQL(codeigniter 框架)的 ERP 中的几个模块。

我不确定我应该如何集成下订单机制(和其他多表相关)功能。例如。客户的订单由两个 MySQL 表(Order 和 Order-Detail)管理。订单表存储一般订单信息,而 Order-Detail 存储订购的产品信息(数量等),因为一个订单可以订购多个产品。

所以,我的问题是:

  • 这东西基本是怎么实现的(背后的逻辑)?

  • 在行业术语中如何称呼它(所以我可以在谷歌上搜索现成的 JavaScript/AJAX 或 PHP 库或代码片段)?

4

1 回答 1

1

这个术语是关系数据库

您可以使用 mysql 本身使用“innoDB”驱动表来构建关系数据库。

它背后的逻辑如下(在你的情况下)

您有 3 个表: - 用户(带有用户 ID、用户名、用户密码等) - PlacedOrders(带有订单 ID、用户 ID、产品 ID) - 订单详细信息(带有订单 ID、产品 ID、订单日期、数量等) - 产品(带有产品 ID、产品名称) , productweith 等)

这里所有的 '...id' 名称都是主键

对于用户,主要 id 是 userid 对于下达订单,主要 id 是 orderid 等。

但有些表还有另一个“..id”,它是另一个表的主 ID。就像表中的 userid,orders 是用户的主要 id 这些 id 被称为 foreignID

这些foreignID 是相互链接的。

它背后的逻辑是,对于放置的订单,您不必包含用户名或密码之类的东西。

当您有大量数据时,这可以防止冗余并提高数据库效率。

关于如何在网站中使用它的另一个提示:用户首先使用表 users 中的数据登录。然后他进入产品页面并选择产品和他想要订购的数量。

现在下订单时,将在 orderdetails 中下订单,并且所有变量(orderid、productid 和 userid)都将组合在所放置的订单中

现在对于用户来说,这不是一个改进。

但对你(或商店)来说是这样。这种方式可以查看谁订购了仅使用来自放置订单表的数据

通过这种方式,您可以创建一个(搜索)页面,只需单击一下即可查看用户数据、产品详细信息和订单详细信息。

现在,通过一些方便的脚本,您可以轻松地从产品、用户和订单中获取适当的数据,并将它们放在一个页面上,而您没有将所有内容都放在一个混乱的大数据库中

于 2011-03-21T21:42:27.190 回答