原文連接:https://www.entityframeworktutorial.net/code-first/migration-in-code-first.aspxhtml
EF 6 Code-First系列文章目錄:數據庫
Entity Framework Code-First有不少不一樣的數據庫初始化策略,例如:CreateDatabaseIfNotExists【建立數據庫,若是不存在的話】、DropCreateDatabaseIfModelChanges【若是模型發生改變的話,就刪除重建數據庫】、DropCreateDatabaseAlways【老是刪除重建數據庫】。然而,對於這些數據庫初始化策略,有一些弊端。例如:數據庫中已經有數據(不是測試數據)或者已經存在了存儲過程,觸發器等,這些策略將會刪除數據庫,從新建立,因此你的數據和數據庫對象將會丟失。app
Entity Framework介紹了一個遷移工具,當你的模型發生改變的時候,自動更新數據庫對象,而不用丟失數據及數據庫對象。數據庫遷移技術使用的是一個新的數據庫初始化策略叫作--MigrateDatabaseToLatestVersion。工具
這裏有兩種類型的數據庫遷移:學習
1.自動遷移【Automated Migration】測試
2.基於代碼的遷移【Code-Based Migration】ui
後面一節,咱們先學習自動遷移。spa