gpt4 book ai didi

php - 我应该使用多个mysql数据库表来存储php数组数据吗?

转载 作者:行者123 更新时间:2023-11-29 11:33:15 24 4
gpt4 key购买 nike

我有一个食品网站,厨师可以在其中从表单添加他们的产品详细信息。

表单字段名称如下:

  1. 姓名
  2. 描述
  3. 价格
  4. 菜单列表(用户可以添加更多)
    A。菜单名称
    b.菜单说明
    (添加更多+)
  5. 数据和时间(用户可以添加更多)
    (添加更多+)

根据这个表格,我正在使用以下表结构到 mysql 数据库:

表名称:产品

pid   name      des    price    menuname         menudes         datetime
--------------------------------------------------------------------------

1 chicken des 3 serialize data serialize data serialize data
2 chicken2 des 4 serialize data serialize data serialize data
3 chicken3 des 5 serialize data serialize data serialize data
4 chicken4 des 6 serialize data serialize data serialize data

因此,您会看到菜单列表数据和时间 字段可以是 3、4 或更多。因此,我使用 php 数组从这两个字段获取值并将其序列化,然后将其保存到数据库。

我的问题是:

1)我应该为菜单列表数据和时间字段使用另外2个表吗?如果是这样,为什么?
2)或者,我应该使用 php 序列化数据来存储这两个字段值,就像我目前正在做的那样?
3)如果我使用另外2个表来存储这2个字段数据我该如何更新值?

例如:下表,您会看到 pid 1 有 2 个日期时间值。因此,要更新 2 个值中的任何一个,我是否需要删除这 2 个日期时间并再次保存日期时间?

日期表:

id    pid    dat3_time
----------------------
1 1 1201245772
2 1 1201245772
3 2 1201245772
4 2 1201245772
5 3 1201245772

最佳答案

1.- 是的,您应该这样做,出于可扩展性的原因并保持结构一致,您应该存储与菜单相关的所有产品

2.- 这是一种可能性,但您将无法按产品搜索,并且在更新或删除与菜单相关的元素时将遇到困难。

3.- 这是 SQL 的基础知识,我建议您阅读有关连接和更新的内容。一个简单但不起作用的例子是。

UPDATE products_time SET available_time = $newtime 
JOIN products ON products.id = products_time.productId
WHERE product.id = $productId

关于php - 我应该使用多个mysql数据库表来存储php数组数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37044609/

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