1

我正在尝试在数据库中记录一些信息。我的帖子是这样的:

  Array
(
[Action] => 1000

[Date_Stat] => 07/02/2013
[Date_Final] => 07/02/2013
[Product_Id] => Array
    (
        [0] => 2
        [1] => 6
        [2] => 1
    )

[Conversion] => Array
    (
        [0] => 1,20
        [1] => 1,00
        [2] => 2,03
    )

[ValueMin] => Array
    (
        [0] => 2,00
        [1] => 1,58
        [2] => 2,70
    )

[ValueMax] => Array
    (
        [0] => 2,50
        [1] => 1,98
        [2] => 2,90
    )

[ValueMedio] => Array
    (
        [0] => 2,20
        [1] => 1,68
        [2] => 2,80
    )

  )

如何以正确的方式将所有这些插入数据库?

我不确定设计表格和存储信息的最佳方式。我用它来制作一个包含开始日期、最终日期的价格表,并列出所有产品的价格。

我也在想什么是最好的方法。我认为有两种可能性

Date_Start | Date_End   |Product_Id | ValueMin | ValueMax | ValueMedio | Conversion
02-02-2013   02-03-2013  1            1.00       2.00       3.00         4.00
02-02-2013   02-03-2013  2            1.00       2.00       3.00         4.20
02-02-2013   02-03-2013  3            1.00       2.00       2.00         4.40   

或(使用 implode 并将所有值放在同一行)

Date_Start  | Date_End   |Product_Id | ValueMin | ValueMax | ValueMedio | Conversion
02-02-2013    02-03-2013  1,2,3        1,1,1      2, 2,2     3,3,2        4, 4.3, 4.4

非常感谢!

4

2 回答 2

1

选择首先提到的选项。如果你这样做,选择行会变得容易得多。

要插入记录,请使用简单的准备好的语句(PHP 手册)并使用 for 循环。

于 2013-02-07T22:23:45.563 回答
0

我建议对第一个选项进行一些调整。如果您创建一个单独的表(类似于“价格”的内容),如下所示:

id|DateStart|DateEnd|
1|02-02-2013|02-02-2013|

然后,在您建议的表中,您将替换 PriceId 的日期范围(此表的外键)。这样,您就可以更轻松地保持日期范围更改的一致性。

于 2013-02-07T22:28:51.450 回答