zoukankan      html  css  js  c++  java
  • EF学习之CodeFirst(二)--数据迁移

    使用CodeFirst时,如果Model发生改变的话,例如我们给User类里面新加个Sex属性,运行时会出现如下错误:

     

    这时我们需要使用数据迁移来将model的改变同步更新到数据库中。

    1、启用数据迁移功能

      打开程序包管理控制台:选好要启动数据迁移的默认项目,输入enable-migrations,运行,出现下述情况即迁移成功。

      启用数据迁移成功后项目里面会多出一个文件夹,文件夹里包括两个文件):

      打开Configuration文件,将构造函数里面的AutomaticMigrationsEnabled改为True:

      至于出现错误的情况大家自行百度吧,一般是不会出现什么问题的。

    2、添加迁移记录

      在更新到数据库前,我们添加一份关于修改的Model的迁移记录。

      在程序包管理控制台输入:add-migration name(name可以自定义,一般是跟修改的类有关)

    添加完成后在Migrations文件夹中会多出一个文件,这个文件记载着相关类的变化,例如我们给User类里面新增一个sex属性,添加迁移记录后就出现如下文件:

    3、更新到数据库

    更新非常简单,在程序包管理器控制台输入:update-database -verbose,即可将修改信息更新到数据库中,如下图所示:

    然后我们可以去数据库里面看一下,sex字段就自动添加到userInfo表里面了。

    4、新增model时注意事项

    新增一个model后,需要对应的添加其map类,然后在数据库上下文中将该model加入即可。

     

  • 相关阅读:
    从 洛伦兹变换 的 讨论 想到
    量子力学 的 新架构
    python中requirements.txt文件的读写
    关于pip安装依赖包时发生的编码格式错误
    odoo 连接其他服务器上的PostgreSQL数据库
    odoo from视图操作记录
    Postgresql sq distinct() 函数的用法
    Postgresql sql查询结果添加序号列
    odoo pivot透视图 常用属性
    Postgresql 获取当前时间
  • 原文地址:https://www.cnblogs.com/rumeng/p/4563638.html
Copyright © 2011-2022 走看看