我是数据库的新手,我想创建一个食谱数据库

时间:2017-04-26 16:16:11

标签: sqlite database-design database-connection

我有一个关于如何在每个表的Recipe数据库中实现主键和外键的问题。我也有兴趣知道是否可以接受许多与一个外国人相关联的表,因为我有这个表中的许多关系。

Here is my database desc

如何设计主键和外键。提前致谢

1 个答案:

答案 0 :(得分:0)

最好的办法是为主键使用标识列。通过这种方式,您将拥有并自动增加密钥,并且您不必担心表中的其他值。

CREATE TABLE table_name(
column1 INTEGER PRIMARY KEY AUTOINCREMENT,
column2 datatype,
column3 datatype,
.....
columnN datatype,
);

这样的东西会给你AUTOINCREMENT能力。

是的,您可以将多个表与一个外键相关联。

例如,让我们带一个大学和学生。

学生
学生证(主键)|名称
25 |玛丽
32 |乔

让我们说玛丽想采取生物学,乔想要化学


Class_ID(主键)| Student_ID(外键)| ClassName | ClassCode
65 | 25 |生物学| SCEN 1014
75 | 32 |化学| CHEM 1014

然后我们还要说玛丽想加入啦啦队,约伯希望成为一名体操运动员。

课外 Activity_ID(主键)| Student_ID(外键)| ActivityName
23 | 32 |体操 44 | 25 |欢呼

这个例子可能有点神秘,但学生表中的主键是类表和额外的课程表中的外键。我希望能回答你的问题。