在MySQL数据库中有很多空值可以吗?

Cha*_* S. 6 php mysql

我不确定如何完美地说出来,但让我试一试.我正在建立一个库存控制应用程序,用于与许多不同的客户一起做任何事情,从检查他们自己的物品库存,获得价格,订购产品等.前端是Flex(Flash Builder),后面结束是MySQL和PHP.所以 - 这是我猜的真正问题.当客户订购产品时,我不确定他们订购了多少产品,但我需要将所有商品保存到一张"门票"上.(示例:一个订单可能是2个苹果,3个橙子,一个香蕉和一个奇异果 - 下一个可能只是订购一个苹果.)因此,在我的"门票"数据库中,我有最多20个项目的空间(ticketItem1, ticketItem2等...) - 这里明显的缺点是,如果客户只订购一个产品,我剩下19个空格.

什么类型的问题(如果有的话)通常与数据库中有很多NULL值有关?有没有办法帮助防止它们发生?是否有任何建议可以帮助解决这个问题?

最后 - 订购的每件商品(让我们再次使用苹果)都有自己的UNIQUE条形码.因此,一个苹果可能编号为0001,另一个可能是4524 ...

感谢您提供的任何帮助.

-CS

phi*_*hag 7

而不是有20列ticketItem1, ticketItem2, ...,引入一个表order_item,如下所示:

顺序:

id customer
1  42
2  23
Run Code Online (Sandbox Code Playgroud)

项目:

id name
1  banana
2  kiwi
3  apple
4  oranges
Run Code Online (Sandbox Code Playgroud)

order_item:

order_id item_id multiplicity
1        1       1             # 1 banana
1        2       1             # 1 kiwi
1        3       2             # 2 apples
1        4       3             # 3 oranges
2        3       1             # 1 apple in the second order
Run Code Online (Sandbox Code Playgroud)

然后,在表上加入以获取订单中的所有订购商品.