zoukankan      html  css  js  c++  java
  • Alembic环境配置与基本操作

    alembic就好像是git一样,,每次修改数据库都会有个对应的版本号,可以通过版本号回滚到以前的版本。

    在上一篇文章中初始化了alembic,现在要修改一下配置文件

    1、在alembic文件夹里面的env.py里新增红框中的三行代码,其中flask_alembic_0426是主文件名;

    2、修改env.py里的target_metadata变量:

     

     3、修改alembic.ini:

    然后就可以切换数据库的版本了。

    1、在模型里修改了数据库的表,如:我在这张表里添加了一个字段“address”

    2、保存后,就可以新生成一个版本了:

      alembic revision --autogenerate -m "add address column"

     3、将数据库更新到刚才那个版本,也就是最新版本:

      alembic upgrade head

    查看数据库表,多了一列:

    4、查看当前的版本号: 

      alembic current

      fce5d4alebe4

    5、查看最新的版本号:

      alembic heads

     当前版本与最新版本号相同。

    6、查看版本历史:

      alembic history

     7、回滚到上个版本:从上图可得上个版本号为4b33fbbb8fc6

      alembic downgrade 4b33fbbb8fc6

     回滚成功:

    8、回到最新的版本,当在address字段加入nullable=False会怎么样?

    表已经建好了,而且里面有数据,没的都是NULL,此时改为非空?试试吧

    生成新版本没问题:7369f5

    但是能更新到新版本吗?

     报错了!说明这样做是不行的。

    只能删除掉模型中的nullable=False了,然后还要删除最新的版本文件:

  • 相关阅读:
    数组 例题解析
    第六章 数组
    循环控制 例题解析
    第五章 循环控制
    第四章 选择结构程序设计
    第三章 数据的输入与输出
    第一章 程序设计及C语言概述
    C 字符串类型例题讲解与实现字符串库函数
    0XX_javascript核心
    012品优购03
  • 原文地址:https://www.cnblogs.com/wangyi0419/p/12710007.html
Copyright © 2011-2022 走看看