ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

EF数据库迁移工具migration的使用

2022-02-17 15:05:20  阅读:200  来源: 互联网

标签:XXX 创建 数据库 EF 添加 migration cs 迁移


1、在DbContext类所在项目中添加 EntityFramework引用,可使用nuget添加

 

2、打开程序包管理器控制台(如果看不到程序包管理器控制台,在菜单栏中“其他窗口”中可找到),默认项目要选择你的DbContext类所在项目,然后输入命令,启用数据迁移

enable-migrations

运行后的结果:

 

A、 启用迁移之前还没有创建数据库

a)       在项目根目录下创建了一个Migrations文件夹

b)       在Migrations文件夹下新建了一个Configuration.cs文件。

我们可以通过修改Configuration.cs来对Migration做一些配置(比如在Seed方法中加入一些预定义数据(角色、用户等)等,以在启动应用程序时自动将这些预定义的数据添加到数据库中)

u.Name == adminUser.Name) == null) { context.Users.Add(adminUser); context.SaveChanges(); } } " v:shapes="文本框_x0020_2">

B、 如果启用数据迁移之前已经创建了一个数据库

如果启用数据迁移之前已经自动创建了一个数据库,则会在Migrations文件夹下添加Configuration.cs、yyyyMMddHHmmsss_InitialCreate.cs两个文件,InitialCreate文件包含了现有数据库架构的创建和删除命令

3、在修改了实体数据后,输入以下命令,更新数据库

add-migration XXX

XXX 为迁移指定的名称 比如:InitialCreate 或 AddName

它会生成一个yyyyMMddHHmmsss_XXX.cs的文件

该命令将根据自创建上次迁移以来对模型所做的更改,为下一次迁移搭建基架

在此时可以对生成的代码做一些修改,比如添加唯一索引,不可空列等

 

update-database [-verbose] [-targetmigration:XXX]

将所有挂起的迁移应用于数据库

update-database:直接应用于数据库

-verbose标记,用于以便您能够看见迁移所运行的 SQL。

-targetmigration 可对数据库升级或降级到指定版本之后的状态,若要降级到空数据库,可使用 update-database -targetmigration: $InitialDatabase 命令。

 

标签:XXX,创建,数据库,EF,添加,migration,cs,迁移
来源: https://www.cnblogs.com/Robert-huge/p/15904616.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有