zoukankan      html  css  js  c++  java
  • alembic使用

    前言

    alembic是SQLAlchemy作者编写的控制 model 版本的模块,配合SQLAlchemy使用更佳

    正文

    安装

    pip install alembic

    alembic是可以在DOS中执行的模块,因此如在Linux执行需要注意指定alembic的位置

    编写 model

    这个我在上一篇博客中有介绍

    初始化

    以 windows 为例,我们进入项目的根目录,输入

    alembic init alembic

    然后我们发现在根目录里多个几个文件

    文件夹打开后是

    连接数据库

    我们托管model需要连接数据库

    在 alembic.ini 文件中修改

    sqlalchemy.url = 数据库连接(直接粘贴SQLAlchemy中的即可)

    其他都不用改

    指定托管的 model

    修改 alembic 的 env.py 文件

    target_metadata = None

    import sys                                             
    from os.path import abspath, dirname                   
    sys.path.append(dirname(dirname(abspath(__file__))))  # 将项目路径引入
    from config.config import mysql_Base
    target_metadata = [mysql_Base.metadata]

    初始化alembic

    alembic revision --autogenerate -m 'init'

    然后我们查看数据库发现多了一个 alembic 的表

    大功告成!

    提交model修改

    提交model的步骤是(每次)

    alembic revision --autogenerate -m '提交说明'
    alembic upgrade head

    然后我们发现数据库多了Model定义的表

    其他操作

    alembic支持数据库版本的回滚等,相当于 git

    但是我个人认为没什么必要

    另外,alembic的版本信息在 alembic 的 versions 文件夹中

  • 相关阅读:
    hive+mysql安装
    (转)hive sql 学习笔记(1)
    「CSPS 2020」动物园
    「CSPS 2019」Emiya 家今天的饭
    「CSPS 2020」儒略日
    「CSPS 2019」划分
    poj2251 Dungeon Master 搜索BFS
    poj1080 Human Gene Functions
    poj2349最小生成树prim算法
    hoj1356 Miller_Rabbin算法
  • 原文地址:https://www.cnblogs.com/chnmig/p/10446346.html
Copyright © 2011-2022 走看看