在https://stackoverflow.com/questions/10356484/how-to-add-on-delete-cascade-constraints#=用户,kgrittn,评论说
但是我注意到你没有在引用列上创建索引...如果在这些表中有很多行,那么在没有这些列的情况下,引用表上的删除将花费很长时间。某些数据库会自动在引用列上创建索引; PostgreSQL由你决定,因为有些情况下它不值得。
我很难完全理解这一点。他是说主键不是用索引自动创建的,还是他说外键应该被索引(特别是那种情况)。我查看了PostgreSQL文档,从那里可以看到自动为主键创建索引。是否有可用于列出所有索引的命令?
由于
答案 0 :(得分:2)
主键是幕后特殊的一种独特索引。引用的引用,在列上创建索引可能是个好主意,其中主键用作外键。