EF CodeFirst数据迁移与防数据库删除

1 开启migrations功能

enable-migrations -force

2 添加迁移版本

add-migration 名称后缀

我们每次修改实体后,都应该使用这个add-migration来升级历史版本

3 更新数据库

update-database

4生产迁移计划,即SQL语句

Update-Database -Script -SourceMigration: $InitialDatabase -TargetMigration:manage

  

原文地址:https://www.cnblogs.com/longyi/p/10207276.html

时间: 2024-11-08 17:47:29

EF CodeFirst数据迁移与防数据库删除的相关文章

EF架构~CodeFirst数据迁移与防数据库删除

回到目录 本文介绍两个概念,防数据库自动删除,这是由于在code first模式下,当数据实体发生变化时,会对原来数据库进行删除,并将新数据表添加进来,但这对于我们的运营环境数据库,是万万不能接受的,第二个问题是数据迁移问题,当你有新的实体建立后,如何响应到数据库,这成为一个问题,当然实现也很简单,我们直接使用migrations工具即可. 一 防数据库删除 将你的业务DbInitializer的基类改成CreateDatabaseIfNotExists即可解决这个问题,这是在数据初始化时需要做

【EF】EF Code-First数据迁移

Code-First数据迁移  首先要通过NuGet将EF升级至最新版本. 新建MVC 4项目MvcMigrationDemo 添加数据模型 Person 和 Department,定义如下: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.ComponentModel.DataAnnotations; 6 using Syste

EF Code-First数据迁移

Code-First数据迁移  首先要通过NuGet将EF升级至最新版本. 新建MVC 4项目MvcMigrationDemo 添加数据模型 Person 和 Department,定义如下: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.ComponentModel.DataAnnotations; 6 using Syste

asp.net core EF CodeFirst数据迁移

在我们用CodeFirst添加表或者表字段时,CodeFirst会在数据库添加一个表来记录表结构更改(通过migration更改).那么迁移时怎么实现的,这里由于装了.net core后,使用"程序包管理控制台"会报错,错误信息如下 那么,现在就要用命令行实现数据库的及时更新. "migrations add"命令告诉迁移框架(migration framework)检查当前的实体模型与当前数据库结构是否匹配,不匹配则创建必要的code来迁移,使实体类和数据库一致.

EF Code-First数据迁移的尝试

Code-First的方式虽然省去了大量的sql代码,但增加了迁移的操作.尝试如下: 1.首先要在“扩展管理器”里搜索并安装NuGet“库程序包管理器”,否则所有命令都不能识别,会报CommandNotFound之类的错误.如果是离线状态,就下载NuGet.Tools.vsix并安装.这样,工具->库程序包管理器->管理解决方案的NuGet程序包里能自动找到已安装的EF组件. 2.为DAL项目安装EF,联机时可以直接在nuget里选择默认项目,输入install-package EntityF

[EF Core]数据迁移(二)

摘要 在实际项目中,大多都需要对业务逻辑以及操作数据库的逻辑进行分成操作,这个时候该如何进行数据的迁移呢? 步骤 上篇文章:EF Core数据迁移操作 比如,我们将数据上下文放在了Data层. 看一下BlogContext内容如下: public class BlogContext : DbContext { public BlogContext(DbContextOptions options) : base(options) { } public DbSet<User> Users { s

EF CodeFirst,同项目多个数据库的迁移

EF应用CodeFirst模式,数据迁移的基本用法要点摘记 适用于多个模型的 EF6 Code First 迁移 准备 首先安装entity framework , Install-Package EntityFramework 接着创建两个我们自己的context, MyFirstContext.cs using System.Data.Entity; namespace Question.EntityFramework { public class MyFirstContext : DbCo

ASP.NET MVC 之CodeFirst 数据迁移

CodeFirst模式下如果 一个 类的属性 增加或者删除 那么 与其对应的 就是 数据库中所对应的 字段 增加或者删除 一个属性变化还好 ,我们直接可以到数据库中找到 ,所对应的表中,对其修改,那么 一次对多个类中的属性做修改,如果 手动 来操作是件很头疼的事情 那么数据迁移 很轻松的解决 问题 以下是 我建立的上下文 TestEF 用于测试 用的 班级类 老师类 namespace WebApplication2 { using System; using System.Collection

ef core数据迁移的一点小感悟

ef core在针对mysql数据迁移的时候,有些时候没法迁移...有两种情况没法迁移,一种是因为efcore的bug问题导致没法迁移,这个在github上有个问题集,另外一种是对数据表进行较大幅度的变更,导致外键导航之类的变更较多,无法正常迁移,并且涉及到该表的迁移有多条. 然后我就自己琢磨,在不删除所有迁移记录的情况下怎么顺利把数据表更改掉,然后摸索了一阵,确实成功了,步骤如下. 1.先把表备份后,删除这个表.2. 在migration记录表中,涉及到该表的迁移全部删除.3. 删除迁移记录中