繁体   English   中英

食品数据库的数据库结构

[英]Database structure for food database

我写了一个网站供用户登录并将食物添加到他们自己的食物数据库中,以后可以将其称为“现有食物”列表

每个用户都有以下选项:

  1. 向他们的数据库添加新食物
  2. 在他们的每日摄入量中添加新食物(来自每个用户唯一的现有食物数据库)
  3. 修改其设置页面(设置每日卡路里是目前的唯一选项)

到目前为止(理论上),我有:

users
=====
UID (primary key)
username
password

food
====
FID
name
description
calories
carbs
protein
fat

settings
========
SID
dailyCalories

如何将它们链接在一起,以便每个用户都有特定的食物和设置数据库数据库?

我也不确定如何处理每日摄入量。 我正在考虑手动添加“开始日期”和“结束日期”按钮以重置每日跟踪周期,这似乎是目前的最佳解决方案。

添加一个将包含UIDFID的新表,并在settingsUID添加一个字段,其中将包含每个用户的设置。

您添加将每个3链接在一起的第四张表

我会建议

settings
=========
SID - PK - you dont really need it 
UID
setName
setValues

这样,您无需在每次弹出新设置时更改表架构

我也会添加表格

group - so user can specify food for different days/meals etc
=========
GID - PK
UID 
name 
desc 

groupFood
=========
GID - PK
FID - PK

----如果您只是想简单地加入食物和用户使用

userFood
========
UID - PK 
FID - PK

仅鉴于您上面描述的内容,我可能会使用下表。 但我重申我的意见:模式取决于数据的用途。

Users
    UName (PKey)
    Password

Foods
    UName (FKey)
    FName 
    OtherColumsYouHave
    Primary Key: UName, FName

Settings
    UName
    FName
    DailyIntake
    Primary Key: UName, FName
    Foreign Key: Uname, FName => Foods(UName, FName)

暂无
暂无

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

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