2017-03-05 69 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