繁体   English   中英

我应该如何处理配料数据库中的计量单位?

How should I handle units of measure in an ingredient database?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我刚刚开始用MySQL / MariaDB学习SQL,我认为一个好的项目是为我(实际)当地的比萨饼店建立一个营养和价格信息数据库。 我的整体概念:

  1. 一个表格提供有关成分营养信息的信息。

  2. 一张成分价格信息表。

  3. 一份食谱表,显示每个披萨中每种成分的含量。

我有几个问题:

  1. 营养信息的不同成分和方面通常使用不同的单位:每杯盐的毫克钠,每液体盎司酱的毫克钠,每磅面粉的蛋白质克数,每磅面粉的卡路里等。我该如何处理? 理论上,最干净的方法是测量除卡路里以毫克为单位的所有营养素,以及所有成分(千克),但之后我需要一张密度表(并不总是随时可用)以及一些方法来隔离用户那个烂摊子。 并且卡路里仍然是偏执的。

  2. 披萨,面团和酱汁的两个关键方面,作为(几乎)各种比萨饼的“子食谱”。 处理这个问题的正确方法是什么?

1 个回复

由于问题是征求意见,所以很难给你并“回答”这个问题,但我的意见是:

  1. 在您的成分表上保留一个“单位”类型的字段,如果您需要汇总配方的内容,则可能需要另一个表格,用于从一个单位到另一个单位的转换比率。
 ---------------------------------------------- | id | item | quantity | unit | ----------------------------------------------- 1 flour 2 kg 2 eggs 4 count 3 paste 3 g ============================ | unit1 | unit2 | convt | ----------------------------- g kg 0.01 

我没有在这里完成,但你有一个单位表,并在转换表中使用他们的ID。 某些单位类型(如count)将无法转换,因此转换表中未找到的任何单位都不允许进行转换。 同样的方法可用于营养元素。

  1. 对于食谱中的食谱,您需要一个设置,这意味着食谱也可以是一种成分,因此,假设您有一个食谱表指向一组成分,它还需要能够参考食谱键(可能是单位)也可以用于此)。 也许是这样的:
  Recipes ------------------------- | id | name | ------------------------- | 1 | dough | | 2 | sauce | | 3 | pizza | Recipe Ingredients --------------------------------------------------------- | recipe | ingredient | quantity | unit | key ref | --------------------------------------------------------- | 1 | flour | 400 | g | NULL | | 1 | egg | 3 | count | NULL | | 1 | water | 5 | foz | NULL | | 2 | tomatoes | 1 | kg | NULL | | 2 | onions | 3 | count | NULL | | 3 | dough | 1 | recipe| 1 | | 3 | sauce | 1 | recipe| 2 | 

现在,您的应用程序代码需要捕获recipe条目并循环回来以获取其“真实”成分并继续这样做,直到没有更多的recipe条目。 你必须小心确保你的应用程序防止无限循环的可能性,就像一个自己的配方。

有些人会争辩说我在这里使用单位列来保存不是“单位”的数据(记住这实际上只是指向你的单位表的ID)但我认为这是一个没有实际意义的点,可能会争辩说食谱是一个有效的'单位',但嘿。

我不是说这是最好的设计,只是一些想法让你开始提出你提出的两点。

1 处理计量单位

每个国家/地区都使用自己的测量单位,例如美国的人在F中测量温度,而加拿大和C中的大多数欧洲国家/地区。测量重量,距离等同样适用。 我在应用程序中将测量单位定义为 对于默认语言环境,然后对于法国,我定义类似 到目前为止,到目前为止还算不错,但是要为每个考虑大量重复数据的国家/地区 ...

2014-02-16 06:21:50 2 604   android
2 如何在食品服务CMS中正确存储和处理不同计量单位的配料?

我有一个用于餐厅和食品服务的后端系统。 在前端,人们使用各种各样的计量单位来制作食谱等(公斤,杯子,加仑,品脱,小汤匙,大汤匙,少许盐,少许胡椒粉等)。 但是我需要将所有这些都转换为小型且不可分割的内容,以进行计算,报告和分析以及后端。 但是,为了向用户显示一些信息和报告,我必须将所有内容 ...

3 计量单位转换库

基于用户首选的度量单位设置,在客户端中提取度量单位转换的最佳/最优雅的方法是什么? 例如,假设用户 A 的首选度量单位是“公制”,而用户 B 的首选度量单位是“英制”。 现在假设我已经计算了某物的面积(以平方米为单位)。 当我去显示值时,我需要为每个用户使用不同的转换系数(例如,“1 米 = 1 ...

6 F#中的计量单位“类型”

我正在为F#中的测量单位编写转换函数。 有关值的信息来自ASP.NET Web应用程序。 我创建的函数定义如下: 我遇到的第一个问题涉及toType:字符串定义。 有没有什么方法可以定义它来接受float<_>类型...特别是来自Web应用程序? (我知道它是基于 ...

2010-12-07 19:30:21 2 599   c#/ f#
7 owl和rdf中的计量单位

我正在创建材料及其物理属性的链接数据,而我在为某些属性设置单位时遇到问题。 我的个人材料:AlMg3具有一些机械性能,如: 如何为这些值设置单位? 我的第一个想法是创建新的数据类型,例如: 然后像这样使用它们: 然后我想把这些单位联系起来: 这可能吗? 单位 ...

8 什么是计量单位

我正在构建一个应用程序,该应用程序分析佩戴传感器的人员的脚步,但我没有在API或示例应用程序中找到并提及测量单位(线性加速度和角速度)的内容。 我相信timestamp是毫秒(如果我写错了,请改正我),但是其他timestamp是什么? 谢谢! ...

9 蝗虫的计量单位

有人知道蝗虫的时间单位是什么吗? 我在他们的网站上找不到。 我的猜测是毫秒,但想确认。 http://locust.io/ ...

2016-11-23 05:56:57 1 202   locust
10 计量单位如何表示?

我刚刚开始使用F#,我想知道测量单位: 我知道它们只出现在编译时,并且Reflector确认了这一点:创建一个不是别名的度量单位创建一个具有MeasureAttribute属性的类,但MeasureAttribute , float<km/h>表示为普通的System.Doub ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM