Mysql 有两个表的简单数据库应该是什么样子?
我正在创建配方应用程序和从数据库中获取的所有配方。我正在使用phpMyAdmin 我以前很少上数据库方面的课,所以我知道如何将它用于简单的任务 现在我有两张表Mysql 有两个表的简单数据库应该是什么样子?,mysql,database,database-design,Mysql,Database,Database Design,我正在创建配方应用程序和从数据库中获取的所有配方。我正在使用phpMyAdmin 我以前很少上数据库方面的课,所以我知道如何将它用于简单的任务 现在我有两张表食谱和配料。我有两个简单的问题: 我应该创建单独的配方id还是使用自动分配的配方id? 我将在应用程序中搜索食谱,并从列表中选择我想要的结果 对于每个配方表,我应该如何连接配料表。 我想我应该在配料表和配方表中使用某种相同的ID(“Receip_ID”),以便以后在显示结果时连接它们 我认为标准配方id是可以接受的变体,因为我无法想象配方的
食谱
和配料
。我有两个简单的问题:
配方id
还是使用自动分配的配方id?
我将在应用程序中搜索食谱,并从列表中选择我想要的结果配方
表,我应该如何连接配料
表。
我想我应该在配料表
和配方表
中使用某种相同的ID(“Receip_ID”),以便以后在显示结果时连接它们我同意,但您应该在
recipes2ingrements
中添加更多属性,如金额
。例如,对于配方1,你需要一个洋葱(=配料),而对于配方2,你需要五个洋葱。非常感谢,你是对的。我确定答案。我很少做饭:)所以我不经常用食谱。不客气。我会做饭,这可能就是我想到的原因。除此之外,你的回答在我看来是合理的。你可以为配方
设想一个父表,比如组
(例如猪肉、面条、蔬菜等),但这不是OP的问题。我同意,但你应该为配方2成分
添加更多属性,比如数量
。例如,对于配方1,你需要一个洋葱(=配料),而对于配方2,你需要五个洋葱。非常感谢,你是对的。我确定答案。我很少做饭:)所以我不经常用食谱。不客气。我会做饭,这可能就是我想到的原因。除此之外,你的回答在我看来是合理的。你可以为食谱
设想一个父表,比如组
(例如猪肉、面条、蔬菜等),但这不是OP的问题。
CREATE TABLE Recipes (
id int,
name text,
PRIMARY KEY (`id`)
);
CREATE TABLE Ingredients(
id int,
name text,
PRIMARY KEY (`id`)
);
CREATE TABLE Recipes2Ingredients (
rec_id int,
ing_id int,
amount int,
-- and maybe some other needed fields
FOREIGN KEY (rec_id)
REFERENCES Recipes(id),
FOREIGN KEY (ing_id)
REFERENCES Ingredients(id)
);