您现在的位置是:首页 > 正文

EFCore-5 Migration操作

2024-04-01 00:28:10阅读 2

migration相关说明:

  • 使用迁移脚本,可以对当前连接的数据库执行编号更高的迁移,这个操作叫做“向上迁移”(Up),也可以执行把数据库回退到旧版本的迁移,这个操作叫做“向下迁移”(Down)。
  • 除非有特殊需要,否则不要删除migration文件夹下的代码。包括数据库自动生成的__EFMigrationsHistory表中的数据。如果人为删除可能会引发数据库版本混乱的情况。

常用命令说明:

1.add-migration XXX

根据最新实体,生成数据库更新脚本。

2.update-database XXX

把数据库更新到XXX的状态,迁移脚本不动。

示例:

如上图所示,目前最新的状态为fluent_api,那么要想更新数据库到bird状态,就可以执行update-database bird,就可以将数据库更新到bird状态。要想从bird状态再更新到其他状态,也是如此。

3.remove-migration

删除最后一次迁移的脚本,此命令用于已经使用add-migration xxx后生成了最新的数据库更新脚本后,对该脚本的删除操作。

4.script-migration

生成迁移SQL的代码,此脚本生成的代码是可以直接拿到数据库执行的。不同于add-migration生成的脚本只能由EF Core执行。该命令主要用于开发完成后生成脚本,将脚本放到生产环境中执行。因为生产环境不方便执行update-database这样的更新命令,主要是不安全。

生成版本D到版本F的SQL脚本: script-migration D F

生成版本D到最新版本的SQL脚本: script-migration D

网站文章

  • k8s基础篇-服务发布入门

    k8s基础篇-服务发布入门

    该示例为 my-service:80 即可访问到具有 app=myapp 标签的 Pod 的 80 端口上。需要注意的是,Service 能够将一个接收端口映射到任意的 targetPort,如果 t...

    2024-04-01 00:28:04
  • 深入理解Java内存模型

      深入理解Java内存模型(一)——基础深入理解Java内存模型(二)——重排序深入理解Java内存模型(三)——顺序一致性深入理解Java内存模型(四)——volatile深入理解Java内存模型(五)——锁深入理解Java内存模型(六)——final深入理解Java内存模型(七)——总结...

    2024-04-01 00:27:57
  • Python中的内置装饰器之property

    装饰器是Python中很重要的一个概念,但是这篇文档不介绍装饰器的实现,我们只需要知道装饰器可以实现一些功能; Python中也包含一些自带的装饰器,这次就说一下属性装饰器property 装饰器是P...

    2024-04-01 00:27:30
  • TextMeshPro使用说明 热门推荐

    TextMeshPro使用说明 热门推荐

    TextMeshPro使用说明创建字体所以对于中文环境建议Font Creator窗口属性注意要包含空格字符,除非确定你不需要它设置全局默认字体第一种方法第二种方法精灵字体动态字体扩展原理使用方法组件...

    2024-04-01 00:27:20
  • 大数据中的hbase是什么?有哪些特点?

    大数据中的hbase是什么?有哪些特点?

    与2018年夏季天气同样火爆的就属大数据了,作为一个可以敢和太阳肩并肩的新事物,大数据火爆、受人关注,在各个领域都有实际的应用。如今,无论是企业、商家还是个人对于大数据的关注都丝毫没有降低,那么对于大数据这个新兴高科技产物,你对hbase的了解有多少呢? 首先,我们从概念上了解什么是hbase HBase其实一个缩写,是Hadoop Database的简称,从问世之初,就为了解决用大量廉价...

    2024-04-01 00:26:56
  • 代码随想录训练营第III期--038--python

    代码随想录训练营第III期--038--python

    2024-04-01 00:26:49
  • 大厂程序员都在用VS Code远程开发工具,手把手教你配置,工作效率提高十倍

    大厂程序员都在用VS Code远程开发工具,手把手教你配置,工作效率提高十倍

    文章每周持续更新,原创不易,「三连」让更多人看到是对我最大的肯定。可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇)今天和大家分享远程开发工具,分享一下我平常是如何用 VS...

    2024-04-01 00:26:42
  • 【2023.11 | github学生认证 | 解决没有proof type选项问题】

    【2023.11 | github学生认证 | 解决没有proof type选项问题】

    可能因为bug问题,根本找不到proof type选项。

    2024-04-01 00:26:17
  • 招人,我们是认真的 ——“阿里云-ECS/神龙计算平台” 急招开发

    招人,我们是认真的 ——“阿里云-ECS/神龙计算平台” 急招开发

    点击上方蓝色字体,关注我 ——一个在阿里云打工的清华学渣!图 by: 石头@阿里云北京办公场所前言招人,我们真的是认真的,看下面两篇“阿里云” 公众号的文章,虽有好几万的阅读,却并没收...

    2024-04-01 00:26:09
  • 计算出1+2+3+..+100的结果。可以使用多种方法解答。

    计算出1+2+3+..+100的结果。可以使用多种方法解答。

    计算1+2+3+...+100的结果。以下使用多种办法: 方法1:for...do...done的数值处理 方法1:for…do…done 的数值处理 sum=0 for ((i=1;i<=100;i++)) do ((sum+=$i)) done 其余各种方法,个人比较推荐第五种算法 1 方法2:for…do…done (固定回圈) 2...

    2024-04-01 00:26:03