【发布时间】:2023-03-03 18:30:01
【问题描述】:
我在迁移中使用Sql 方法在实体框架中创建SQL 过程。例如在 Up() 我正在做的事情
Sql(@"SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION dbo.MyFunction
...
GO");
现在我的问题在于GOs:如果我希望能够编写我的迁移脚本(用于在实时服务器上使用),我需要在生成的脚本中使用GOs,否则它不起作用.但是,如果在没有 -script 选项的情况下运行 Update-Database(用于开发时使用),它会对 GOs 感到不安。
我找到了一些部分答案:
How to add code to initialize sql database
Bart 的回答提供了一种调用方法,将语句分成多个Sql 调用。这样做的问题是它在使用-script 选项运行时会影响生成的脚本,所以回到方块1。
How can I override SQL scripts generated by MigratorScriptingDecorator 看起来也很有用。
因此,我的问题是:有没有办法知道您是否使用 -script 选项运行迁移,或者有更好的方法在迁移中编写我的 SQL 过程脚本?
【问题讨论】:
标签: sql stored-procedures powershell entity-framework-5