0

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

每个用户都有以下选项:

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

到目前为止,我所拥有的(理论上)是:

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

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

settings
========
SID
dailyCalories

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

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

4

4 回答 4

1

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

于 2012-12-24T10:41:51.423 回答
0

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

于 2012-12-24T10:29:04.283 回答
0

我会建议

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
于 2012-12-24T10:34:41.667 回答
0

仅根据您上面描述的内容,我可能会使用下表。但我重申我的评论:架构取决于数据的用途。

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)
于 2012-12-24T10:53:16.060 回答