在光滑表模式中使用index或foreignKey有什么好处吗?

时间:2018-02-15 10:18:52

标签: postgresql scala slick

我应该在光滑的架构表中使用索引和foreignKey吗?是否有性能或查询规划器等好处? 我们正在使用Flyway数据库迁移工具,因此我们不会将此模式与schema.create

一起使用

2 个答案:

答案 0 :(得分:1)

光滑模式表中的外键可以在两种情况下帮助您

首先来自slick doc

  

...外键可用于通过连接导航到引用的数据。为此,它的行为与手动定义的实用程序方法相同,用于查找已连接的数据...

如果使用光滑生成数据库模式(例如,在测试中)

答案 1 :(得分:-1)

设置索引可以帮助您加快搜索(数据检索),但会降低插入速度。所以你需要根据你的要求决定你想要什么。如果有更多的搜索和数据库中的数据很大,你应该去索引。

另一方面,外键用于维护用于在关系数据库中连接的不同表之间的关系。添加外键不会对性能产生任何影响。

您可以在此处获得有关索引的更多信息 - > Indexing, 而对于外键这里 - > Foreign Key