【问题标题】:How to get SQL Script using Entity Framework Core(code first)如何使用 Entity Framework Core 获取 SQL 脚本(代码优先)
【发布时间】:2017-02-24 03:57:24
【问题描述】:

我正在使用带有 EntityFramework 核心的 Asp.net 核心创建一个 Web 应用程序,但 Update-Database 命令不再具有“-Scr​​ipt”开关。如何获取 sql 脚本?谢谢。

【问题讨论】:

    标签: entity-framework ef-code-first


    【解决方案1】:

    运行此命令以生成 SQL 脚本

    > dotnet ef migrations script -o fileName.sql
    

    还有一个 powershell 命令:powershell#script-migration

    【讨论】:

    • 对我来说它不起作用。我得到一个只有IF OBJECT_ID(N'[__EFMigrationsHistory]') IS NULL BEGIN CREATE TABLE [__EFMigrationsHistory] ( [MigrationId] nvarchar(150) NOT NULL, [ProductVersion] nvarchar(32) NOT NULL, CONSTRAINT [PK___EFMigrationsHistory] PRIMARY KEY ([MigrationId]) ); END; GO 的文件。虽然我也有一些实体设置。也许你知道我可能会失踪?
    • 它也有fromto 参数。尝试明确指定它们。
    • 问题是在执行命令之前我必须首先生成迁移。
    【解决方案2】:

    我来这个问题是为了找到可以从 dbcontext 为所有表/db 对象生成脚本的命令。如果您看起来也一样,而不仅仅是迁移或更新,命令是:

    dotnet ef dbcontext script -o filename.sql 
    

    只需在存在实体框架的文件夹中打开命令提示符并运行它。这将在同一文件夹中创建 SQL 文件。

    只要确保您已安装 dotnet ef 工具(如果尚未使用)

    dotnet tool install --global dotnet-ef
    

    在上述上下文命令之前。

    【讨论】:

      猜你喜欢
      • 2020-04-29
      • 1970-01-01
      • 1970-01-01
      • 2021-02-06
      • 1970-01-01
      • 1970-01-01
      • 2016-09-28
      • 2021-05-04
      • 1970-01-01
      相关资源
      最近更新 更多