数据迁移:
在程序包管理器控制台,执行语句。
初始化:
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 (回到初始状态)