MySQL PHP动态数据选择/写入

时间:2015-10-25 23:34:11

标签: php mysql

这是一个设计问题,最好的方法就是这样做。

我正在尝试在我的项目中构建一个“清点”应用程序。我需要允许人们添加无限量的子数据。

现在我无法确定能够将数据存储为可搜索的最佳方式(所以我认为blob已经用完)。我在BLOB中动态存储他们称之为param1->param2->param3->param4的内容,例如Box Row Section,因为每个用户只有一个模式。

我将数据存储在需要搜索的位置,所以如果我需要查找param1=1,param2=2,param3=3,我可以轻松找到它。我目前可以搜索将其存储为LIKE或REGEX的纯文本数组的列,这是最好的方法吗?

示例:

User 1 - Box 1
User 2 - Box 1 Row 3
User 3 - Box 1 Row 3 Section 4
User 4 - Box 1 Row 3 Section 4 Cell 7
User 5 - Warehouse 42 Isle 4 Shelf 4 Position 13

这是我到目前为止所做的:

- inventory (TABLE)
id INT(10)
itemid MEDIUMINT(7)
userid INT(10)
inventorylocation INT(10)
amount INT(10)
- inventorylabels (TABLE)
id INT(10)
userid INT(10)
schema BLOB(65535)
- inventorylocation (TABLE)
id INT(10)
location MEDIUMTEXT(16777215)

MySQL Fiddle

1 个答案:

答案 0 :(得分:2)

我会像这样设置表格:

| id | user_id | param | sequence |

按顺序放置参数的顺序(所以只计数1,2,3等)然后对每个参数执行递归查询。