广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python使用FlaskMigrate模块迁移数据库
  • 354
分享到

Python使用FlaskMigrate模块迁移数据库

2024-04-02 19:04:59 354人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录前言安装初始化项目结构三大命令前言 本篇文章,阐述一下flask中数据库的迁移 为什么要说数据库迁移呢? 比如我们以前有一个数据库,里面的信息有 id, name现在我想再加一个

前言

本篇文章,阐述一下flask数据库的迁移

为什么要说数据库迁移呢?

比如我们以前有一个数据库,里面的信息有 id, name现在我想再加一个gender属性,应该怎么办呢?不可能直接把数据库删除掉吧。然后重新创建一个,因此本文介绍一种,通过数据库迁移的方法,可以保留原始的数据,并完成添加新的一列的方法。

安装

直接使用pip install flask-migrate即可

初始化

项目结构

# exts.py
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()

老样子,我们还是在exts.py中,初始我们的数据库,这里时放Flask扩展的地方。

# models.py
from exts import db
class User(db.Model):
	id = db.Column(db.Integer,primary_key=True)
	username = db.Column(db.String(80),unique=True)
	def __repr__(self):
		return '<User %s>' % self.username

models.py是放模型的地方。

# app.py
from flask import Flask
from exts import db
from flask_migrate import Migrate
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = "sqlite:///foo.db"
# !!!绑定app和数据库
db.init_app(app)
migrate = Migrate(app,db)
if __name__ == '__main__':
    app.run()

主程序,我们在!!!进行初始化数据库迁移的migrate 对象。初始化之后我们可以执行下面的三大命令去创建我们的数据库。就不需要db.create_all()命令啦。

三大命令

# (1)初始化
flask db init
# 把当前的模型添加到迁移文件
flask db migrate
# 将映射文件真正的映射到数据库中
flask db upgrade

(1)新建一个名字为migrations的文件夹,并且记录一个数据库版本号

其他问题:

如果报错[flask_migrate] Error: Can‘t locate revision identified by '409392ed6301'

答:db revision --rev-id 409392ed6301 409392ed6301是问题的版本号

Error: While importing ‘app’, an ImportError was raised.

答:请先去运行一下app.py,确保app.py可以运行

Error: Could not locate a Flask application. You did not provide the “FLASK_APP” environment variable, and a “wsgi.py” or “app.py” module was not found in the current directory. 答:请确保执行命令时的文件夹中有app.py文件

到此这篇关于python使用Flask Migrate模块迁移数据库的文章就介绍到这了,更多相关Python Flask Migrate内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python使用FlaskMigrate模块迁移数据库

本文链接: https://www.lsjlt.com/news/119700.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python使用FlaskMigrate模块迁移数据库
    目录前言安装初始化项目结构三大命令前言 本篇文章,阐述一下Flask中数据库的迁移 为什么要说数据库迁移呢? 比如我们以前有一个数据库,里面的信息有 id, name现在我想再加一个...
    99+
    2022-11-11
  • 使用EFCORE迁移数据库
    一、迁移需要的依赖 Install-Package Microsoft.EntityFrameworkCore.SqlServer -version 3.1.1 Install-Pa...
    99+
    2022-11-13
  • 如何使用DataPump迁移Oracle数据库
    这篇文章主要介绍如何使用DataPump迁移Oracle数据库,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!之前测试过使用RMAN迁移Oracle数据库(Oracle11.2.0.1...
    99+
    2022-10-18
  • 如何使用数据库迁移神器Flyway
    本篇内容介绍了“如何使用数据库迁移神器Flyway”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!数据迁移前...
    99+
    2022-10-18
  • Python 安装mysql数据库模块
    方法一:命令行安装mysql模块 先找到Python安装目录下的Script文件 当前路径下进入cmd命令窗口,输入pip3 install pymysql  3.如上图所示就是安装成功  方法二:PyCharm下安装...
    99+
    2023-09-09
    数据库 python mysql
  • Python中的pandas表格模块、文件模块和数据库模块
    目录一、Series数据结构1、Series的创建2、Series属性2、Series缺失数据处理二、DataFrame数据结构1、DataFrame的创建2、DataFrame属性...
    99+
    2022-11-11
  • 【数据库迁移系列】使用pgloader将数据从MySQL迁移到openGauss的最佳实践
    数据库迁移是实际工作中经常遇到的问题,比如由于磁盘空间、业务性能、项目改造等等原因,有从甲服务器迁移到乙服务器,从A种数据库迁移到B种数据库,从源路径迁移到另一个目标路径、同一个机器下从一个用户迁移到...
    99+
    2023-08-31
    mysql 数据库 云原生 docker
  • 【RMAN】Oracle11g使用rman迁移升级数据库(win_to_linux)
    前言:在迁移Oracle数据库的过程中,我们会遇到很多种情况,例如32位操作系统下的数据库迁移到64位,不同操作系统平台之间的迁移,那么怎么选择迁移工具呢,首先我们需要确认迁移源端和目标端的环境,再次停...
    99+
    2022-10-18
  • mysql使用mysqldump 与 mysqlimport进行数据库迁移
    ...
    99+
    2022-10-18
  • 如何使用RMAN实现Oracle数据库迁移
    这篇文章主要介绍了如何使用RMAN实现Oracle数据库迁移,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.打开RMAN[oracle@E...
    99+
    2022-10-19
  • 如何使用PHP数据库迁移工具Phinx
    这篇文章给大家分享的是有关如何使用PHP数据库迁移工具Phinx的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.安装composer require nhzex/think-phinx2.执...
    99+
    2023-06-29
  • ORACLE使用冷备份数据库迁移的方法
    实验对象:两台linux单机的oracle 12C 数据库(大版本和小版本都一致),数据迁移采取冷备份的方式。目标机器的路径跟源库不一致,需要重建controlfile。迁移步骤首先关闭监听,和kill掉连...
    99+
    2022-10-18
  • 达梦数据库迁移工具DTS使用手册
    《 达梦数据库迁移工具DTS使用手册》 1. 打开 DM 数据迁移工具 DTS 2. 点击新建工程 3. 输入工程名 输入工程名,工程名可自定义,输入后点击确定。 4. 新建迁移...
    99+
    2022-10-18
  • Oracle11g数据库迁移到Oracle12C的PDB(使用impdp/expdp)
    Oracle11g数据库迁移到Oracle12C的PDB(使用impdp/expdp)alter pluggable database hrdb close immediate;DROP PLUGG...
    99+
    2022-10-18
  • Python模块对Redis数据库的连接与使用讲解
    下面看看Python模块对Redis数据库的连接与使用: ​ 1.Python连接Redis数据库方法: import redis res = redis.Redis( ho...
    99+
    2022-06-02
    Python Redis连接与使用 Python Redis数据库
  • 怎么在python中使用pymysql模块连接mysql数据库
    本篇文章给大家分享的是有关怎么在python中使用pymysql模块连接mysql数据库,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。安装py...
    99+
    2022-10-18
  • 利用DBMS_FILE_TRANSFER迁移数据库从AIX至Linux
    环境描述源端目标端操作系统AIX 6100-03-10-1119RHEL6.5 x64集群Oracle RAC+ASMOracle RAC+ASM数据库版本11.2.0.3.011.2.0.4.01、初始化...
    99+
    2022-10-18
  • 使用Navicat Premium工具将oracle数据库迁移到MySQL
    1、安装数据库图形界面工具Navicat Premium,以及本地Oracle客户端; 2、打开Navicat Premium界面,新建oracle连接,输入Or...
    99+
    2022-11-12
  • 使用DataSync迁移数据到Gaussdb T
    原文链接: https://www.modb.pro/db/22926cyn 一、DataSync迁移数据简介 DataSync支持GaussDB 100(GaussDB T)在线迁移和Sybase、Or...
    99+
    2022-10-18
  • MySQL数据迁移使用MySQLdump命令
    该方案优点是简单,容易手上;缺点是停机时间较长。 因此它适用于数据量不大,或者允许停机的时间较长,并且在这个时间范围内能够完成。 以下是MySQLdump命令的一些用法: 1.将整个数据库的数据及建表文件导...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作