EF 数据迁移

数据迁移:

  在程序包管理器控制台,执行语句。

    初始化:

    1、Enable-Migrations -EnableAutomaticMigrations
    2、Add-Migration InitialCreate
    3、Update-Database -Verbose

    更新数据库:

    1、Add-Migration ChangeTable
    2、Update-Database -Verbose

    回滚到空数据库:

    Update-Database –TargetMigration: $InitialDatabase

生成迁移脚本:Update-DataBase –script

数据库已存在,只是新增了几个字段,目前是没有初始化数据库迁移这些的情况:

  1、初始化数据迁移

    命令: (1)、Enable-Migrations -EnableAutomaticMigrations

        (2)、Add-Migration InitialCreate

  2、在目录Migrations中 会生成的文件 201901230316301_ChangeTable.cs

    把 Up() 和 Down() 的方法体删除掉,只留个空方法

  3、查看数据库是否有 __MigrationHistory 这个表,有的话 就把表删除

  4、执行数据库迁移命令

    命令:Update-Database -Verbose

  5、如果在第4步出现错误

    如Error:名称已被一现有约束条件占用, 或者  名称已由现有对象使用

    那就执行命令,查看生成的SQL语句,然后再找错误的原因。

    命令:Update-DataBase –script

  

常用命令:

  原文地址:https://www.cnblogs.com/fighting2014/p/4153297.html

1.Enable-Migrations (创建迁移目录:Migrations,如果有多个数据上下文可以用 -ContextTypeName  命令迁移对应的数据上下文 )

2.Add-Migration (创建一个迁移文件)

3.update-database(启动迁移,生成数据库)

4.install-package entityframework(初始化配置包)

5. Update-Database -Script -SourceMigration:"  " -TargetMigration:" " (生成数据库版本之间的Sql脚本,正式区换版时有用)

6.Update-Database –TargetMigration:"  "  (进行数据库版本回溯)

7.Update-Database –TargetMigration: $InitialDatabase -Script (回到初始状态)

上一篇:关于浏览器解析html全过程详解


下一篇:Django2.0的path方法无法使用正则表达式的解决办法