2017-03-05 75 views
1

外键和索引

$table->integer('user_id')->unsigned()->index(); 
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); 

$table->integer('user_id')->unsigned(); 
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); 

之间的任何差别对我来说是一样的,因为外键是一个指数,是吗?

回答

0

我发现我的答案是:

有些数据库默认情况下,把索引创建的所有外键自动。

雄辩只会做一个 - 创建外键 - 命令和MySQL自动添加索引。

由于Mittensoff从laracasts的答案;)

0

对这个question的引用,索引一个外键是很好的,但是数据库不会自动索引它。

所以上面的2个代码块是不同的。

我想你可以尝试打开你的数据库模式并检查它。

+0

当我创建没有任何索引外键,我看到在我的数据库外键是一个指标,那我为什么问这个问题。我不确切知道什么是雄辩的行为。 – Neabfi