【发布时间】:2012-12-28 19:23:27
【问题描述】:
我正在使用 EF 迁移来跟踪对我们的 EF 代码优先数据库模型的更改。现在我需要为每次迁移生成一个 SQL 脚本,以便我可以将这组脚本传递给 DBA。
我能够使用Update-Database -Script ... 生成 SQL 脚本
但是,我想自动执行此操作。我希望 -Script 开关能够接受一个参数,该参数指定将 SQL 写入何处,但事实并非如此。此外,输出重定向不起作用,因为 SQL 脚本不是写入 STDOUT,而是写入临时文件。我认为无法从脚本中获取该临时文件。
任何想法如何自动化迁移 -> SQL 脚本生成?也许有一些我不知道的魔法 powershell 诡计?
编辑:顺便说一句,使用 migrate.exe 或任何其他“迁移感知”方法不是一种选择,必须提供 SQL 脚本。
【问题讨论】:
-
“现在我需要为每次迁移生成一个 SQL 脚本,以便我可以将这组脚本传递给 DBA。” - 这并不是说这回答了您的问题,但是包含所有必要迁移的单个脚本不足以满足您的 DBA 的需求吗?
-
不,它不会,因为我们需要支持生产系统的增量数据库更新。使用一个脚本,DBA 需要找出哪些更改适用于现有数据库。
标签: c# entity-framework powershell entity-framework-5 entity-framework-migrations