ajs*_*sie 10 mysql database foreign-keys primary-key
我想创建一个包含3个表的数据库.一个用于帖子,一个用于标签,一个用于将帖子链接到标签,其中post_id和tag_id用作外键引用.
你能解释一下这个场景中的索引是什么吗?它与外键有什么不同以及它对我的数据库设计有何影响?
您将在第三张表中具有外键。索引不是必需的,如果您有大量数据想要快速通过ID查找内容,则需要索引。也许您需要在帖子主键上建立索引,但是DBMS可能会自动创建它。
索引是一种冗余的数据结构,可以加快某些查询的速度。出于实际考虑,外键是一种确保表中各行之间没有无效指针的方法(在这种情况下,从关系表到帖子和标签)
添加索引是为了快速查找表中的数据。索引可以有约束,因为用于创建索引的一列或多列可能必须是唯一的(唯一:该索引只返回数据库中的一行,或者不唯一:可以返回多行) . 表的主键是唯一索引,通常只有一列。
外键是表中引用另一个表中唯一索引的值。它用作将表关联在一起的一种方式。例如,子表可以通过其作为父表中唯一索引的列来查找一个父行。