gpt4 book ai didi

php - 数据库规范化和数据输入(管理后端)

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

看看下面的items表,您可以看到该表没有标准化。名称应放在单独的表中以对其进行规范化。

mysql> select * from items;
+---------+--------+-----------+------+
| item_id | cat_id | name | cost |
+---------+--------+-----------+------+
| 1 | 102 | Mushroom | 5.00 |
| 2 | 2 | Mushroom | 5.40 |
| 3 | 173 | Pepperoni | 4.00 |
| 4 | 109 | Chips | 1.00 |
| 5 | 35 | Chips | 1.00 |
+---------+--------+-----------+------+

此表未标准化,因为在后端管理站点上,工作人员只需选择一个类别并输入项目名称即可快速添加数据。速度非常快。有数百个相同的项目名称,但成本并不总是相同。

如果我将此表标准化为如下所示:

mysql> select * from items;
+---------+--------+--------------+------+
| item_id | cat_id | item_name_id | cost |
+---------+--------+--------------+------+
| 1 | 102 | 1 | 5.00 |
| 2 | 2 | 1 | 5.40 |
| 3 | 173 | 2 | 4.00 |
| 4 | 109 | 3 | 1.00 |
| 5 | 35 | 3 | 1.00 |
+---------+--------+--------------+------+
mysql> select * from item_name;
+--------------+-----------+
| item_name_id | name |
+--------------+-----------+
| 1 | Mushroom |
| 2 | Pepperoni |
| 3 | Chips |
+--------------+-----------+

现在我如何在管理后端(从数据输入角度)添加项目(数据),因为该表已标准化?我不想像下拉菜单一样选择项目名称 - 将会有数千个不同的项目名称 - 查找项目名称然后输入成本将花费大量时间。

需要有一种方法来尽可能快速地添加项目/数据。解决这个问题的办法是什么?我用 PHP 开发了后端。

另外,编辑项目名称的解决方案是什么?工作人员可能会完全重命名商品名称,例如:鱼串改为鸡肉串,这会影响所有类别,而不会意识到这一点。会有一些拼写错误可能需要纠正,比如 F1sh Kebab 应该是 Fish Kebab(这在表格标准化时很有用,我会看到每个类别的项目名称都更新了)。

最佳答案

I don't want like a dropdown to select item name - there will be thousands of different item name - it will take a lot of of time to find the item name and then type in the cost.

除了下拉框之外,还有用于选择现有项目的选项。您可以使用自动完成功能,并且只接受已知值。我只是想澄清一下,有一些用户界面友好的方法可以实现您的目标。

至于要不要这样做,那是你的事了。如果产品名称略有不同,会有问题吗?像这样的小数据完整性问题是否可以通过批处理作业或类似的问题来纠正?

根据系统的设计,首先决定您的数据应该是什么样子。做出决定后,请考虑构建 UI 的最佳方式。就像我说的,无论您的数据结构如何,都有可用的方法来设计 UI。

关于php - 数据库规范化和数据输入(管理后端),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7298647/

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