Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在mysql单元中存储数据列表(如数组)?(但仍然可以搜索)_Php_Mysql_Actionscript 3_Amfphp - Fatal编程技术网

Php 如何在mysql单元中存储数据列表(如数组)?(但仍然可以搜索)

Php 如何在mysql单元中存储数据列表(如数组)?(但仍然可以搜索),php,mysql,actionscript-3,amfphp,Php,Mysql,Actionscript 3,Amfphp,我是mysql的新手,所以我可能只是不知道如何正确地设置这样的东西 基本上,我桌子上的每一排都是不同的食物。我有一些基本的专栏,比如描述 但是,我有一个“配料”数组和一个数组中的“多少”数组 基本上,在我这方面,我可以通过Radientsarray[0]显示多少[0]成分以及其中的多少成分 所以,我想把这两个数组都保存在一个单元格中,作为食物行 我听说我可以序列化数组并保存它。但我需要它是可搜索的 (另外,没有对配料数量的限制。所以我不喜欢每个配料都有一列,这就是我选择阵列路线的原因) 编辑:还

我是mysql的新手,所以我可能只是不知道如何正确地设置这样的东西

基本上,我桌子上的每一排都是不同的食物。我有一些基本的专栏,比如描述

但是,我有一个“配料”数组和一个数组中的“多少”数组

基本上,在我这方面,我可以通过Radientsarray[0]显示多少[0]成分以及其中的多少成分

所以,我想把这两个数组都保存在一个单元格中,作为食物行

我听说我可以序列化数组并保存它。但我需要它是可搜索的

(另外,没有对配料数量的限制。所以我不喜欢每个配料都有一列,这就是我选择阵列路线的原因)

编辑:还有一件事,如果这可能会有帮助的话……除了整数0 1 2 3 4 5 6 7 8 9之外,再也不会有其他东西了

最好的办法是什么


我正在用AS3编程,并使用AMFPHP连接到Mysql

最好有一个包含一列(food_id)的配料表,该列引用food表中记录的id,并包含配料名称和数量的列

YOUR_FOOD_TABLE
food_id (PK)
description
...

FOOD_INGREDIENTS
food_id (FK)
ingredient_id (FK)
quantity

INGREDIENTS
ingredient_id (PK)
ingredient_name

然后,您可以搜索配料表,并获得包含该特定配料的所有食品的id

最好有一个配料表,其中包含一列(food_id),该列引用了食品表中记录的id,以及用于配料名称和数量的列

YOUR_FOOD_TABLE
food_id (PK)
description
...

FOOD_INGREDIENTS
food_id (FK)
ingredient_id (FK)
quantity

INGREDIENTS
ingredient_id (PK)
ingredient_name

然后,您可以在配料表上搜索,并获得包含该特定配料的所有食品的ID。创建一个新的可能配料表。然后创建另一个表,将你的食物表和一堆配料联系起来

YOUR_FOOD_TABLE
food_id (PK)
description
...

FOOD_INGREDIENTS
food_id (FK)
ingredient_id (FK)
quantity

INGREDIENTS
ingredient_id (PK)
ingredient_name

创建一个包含可能成分的新表格。然后创建另一个表,将你的食物表和一堆配料联系起来

YOUR_FOOD_TABLE
food_id (PK)
description
...

FOOD_INGREDIENTS
food_id (FK)
ingredient_id (FK)
quantity

INGREDIENTS
ingredient_id (PK)
ingredient_name

序列化仍然可以进行文本搜索,但真正的解决方案是将成分分解到不同的表中,并将它们连接到包含数量的单独表中。

序列化仍然可以进行文本搜索,但真正的解决方案是将成分分解到不同的表中,并将它们连接到一个单独的表中,包括数量。

使用
mysql
在集合中查找

YOUR_FOOD_TABLE
food_id (PK)
description
...

FOOD_INGREDIENTS
food_id (FK)
ingredient_id (FK)
quantity

INGREDIENTS
ingredient_id (PK)
ingredient_name
请在创建此查询之前转义数组值

$insert_qry = 'INSERT INTO `table` (`ingredients`,`howmuch`) VALUES ("'.implode(',',$ingredientsArray).'", "'.implode(',',$howMuch).'")';

$search_qry = 'SELECT * FROM `table` WHERE FIND_IN_SET("bread",`ingredients`);';

使用
mysql
在集合中查找

请在创建此查询之前转义数组值

$insert_qry = 'INSERT INTO `table` (`ingredients`,`howmuch`) VALUES ("'.implode(',',$ingredientsArray).'", "'.implode(',',$howMuch).'")';

$search_qry = 'SELECT * FROM `table` WHERE FIND_IN_SET("bread",`ingredients`);';

在我的搜索查询中,它不是效率低下吗?例如,在食品表上,当我进行搜索时,我将在表
食品上执行搜索,然后必须像左键连接到配料表一样,然后我将搜索包含大量配料的表,但如果索引正确,它不会效率低下,它将比存储阵列更高效。搜索是数据库做得很好的地方。。。正确地使用它们,它们会让你的事情变得非常简单。。。。滥用它们,你会让事情变得非常困难。我的搜索查询不是效率低下吗,例如在食品表上搜索时,我将在表
食品
上执行搜索,然后必须像左键连接到配料表一样,然后我会搜索包含很多成分的表,虽然如果索引正确,效率不会很低,但比存储数组效率要高得多。搜索是数据库做得很好的地方。。。正确地使用它们,它们会让你的事情变得非常简单。。。。滥用它们,你会让事情变得非常困难。什么是PK和FK?另外,
FOOD\u components
table…是否以某种方式与
components
table链接?
PK
是主键,
FK
是外键。
食品配料
表通过使用
食品id
配料id
列以及存储关系的
数量
将两者链接在一起,PK和FK是什么?另外,
FOOD\u components
table…是否以某种方式与
components
table链接?
PK
是主键,
FK
是外键。
FOOD\u配料
表通过使用
FOOD\u id
FOOD\u id
列以及存储
数量
来将两者联系在一起。请记住,我同意其他人的看法,最好的解决方案是创建一个辅助表并使用
JOIN
请记住,我同意其他人的看法,最好的解决方案是创建一个辅助表并使用
JOIN