簡體   English   中英

實體框架代碼第一次遷移:以編程方式獲取sql腳本

[英]Entity Framework Code First Migrations: get sql scripts programmatically

我正在為我的項目實現實體框架(v5)基於代碼的遷移。

來自我們客戶的數據庫管理員有時會有點偏執,並希望手動執行sql腳本。

由於我們已經有很多版本並且我們支持SqlServer和Oracle並行,我們不希望從所有可能的版本管理多個更新腳本xxxx到yyyy是否有可能以與我調用它相同的方式以編程方式獲取sql腳本在程序包管理器控制台中

Update-Database -Script

因此,客戶端將通過一個簡單的控制台應用程序,取決於他的數據庫系統和當前版本正確的sql腳本作為輸出。

  var configuration = new Configuration();
  var migrator = new DbMigrator(configuration);

  var scriptor = new MigratorScriptingDecorator(migrator);
  var script = scriptor.ScriptUpdate(sourceMigration: null, targetMigration: null);
  Console.WriteLine(script);

  migrator.Update();

  var pending = migrator.GetPendingMigrations();

更多信息: http//weblogs.asp.net/fredriknormen/archive/2012/02/15/using-entity-framework-4-3-database-migration-for-any-project.aspx


基本上你需要

DbMigrator db = new DbMigrator(HERE CONNECTION STRING);
db.Update(HERE TARGET VERSION);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM