首页 > TAG信息列表 > sqlacodegen
SQLAlchemy学习-3.(懒人专用)sqlacodegen自动同步数据库中表生成model 代码
前言 如果数据库中的表已经存在了,我们只想通过 SQLAlchemy 操作数据库表的数据,不需要建表。 这时可以不用一个个声明每个字段类型,可以用第三方包 sqlacodegen 自动生成 model 模型代码。 sqlacodegen 安装 使用pip安装对应包 pip install sqlacodegen==2.3.0 mysql 指定导出表命postgres数据库使用sqlacodegen将已存在的表生成对应的model
需要安装的包如下:greenlet==1.1.2importlib-metadata==4.12.0inflect==5.6.1psycopg2==2.9.3sqlacodegen==3.0.0rc1SQLAlchemy==1.4.39zipp==3.8.0代码如下: import os from tools.db import DB import threading def gen_table_model(tablename): os.system(f'sqlacodegenFlask从数据库已有表自动生成model
准备 我们需要提前准备两个包,分别是 flask-sqlacodegen 和 psycopg2 安装方式为 pip install flask-sqlacodegen pip install psycopg2 开始 我们直接使用命令开始生成 # 单张表 flask-sqlacodegen "postgresql://postgres:36o%*********2022@127.0.0.1:5432/situation" --ModuleNotFoundError: No module named 'MySQLdb'
在我们使用 flask-sqlacodegen 会出现ModuleNotFoundError: No module named 'MySQLdb' 这个原因就是因为我们的MySQL-python 不支持 Python3. 我常用的方法 新下载一个pymysql,用pip install pymysql 下载完之后把flask-sqlacodegen "mysql://root:123456@127.0.0.1/food_db" 更flask从数据库反向导入Model以及出现报错No module named sqlacodegen.main
使用flask的朋友肯定了解了flask_sqlalchemy,不了解的小伙伴也可以查看博文:Flask 操作Mysql数据库 - flask-sqlalchemy扩展 上面博文中讲解了如何将flask中的model转化成数据表,这里我们演示一下“如何通过已有数据库反向导出Model模型”,以及解决遇到的一些问题。 一、flask从数flask-sqlacodegen 自动生成model
flask-sqlacodegen 自动生成model 安装依赖 pip install pymssql pip install flask-sqlacodegen 自动生成model flask-sqlacodegen 是安装地址 mssql+pymssql://sa:123456@localhost:1433/test 是连接地址 E:\product\my_product\models.py 是保存model地址python SQLAlchemy反射生成models
1.安装SQLAcodegen pip install sqlacodegen 2、使用sqlacodegen生成案列 sqlacodegen mysql://root:123456@127.0.0.1:3306/test > models.py --tables指定数据表名称--outfile指定输出文件名称 3.如果python3 会报错 No module named 'MySQLdb' 这个时候安装pymysql。python 自动生成model 文件 案例分析
生成方式 Python中想要自动生成 model文件可以通过 sqlacodegen这个命令来生成对应的model文件 sqlacodegen 你可以通过pip去安装: pip install sqlacodegen 格式: sqlacodegen mysql+pymysql://username:password@host/database_name > model.py 说明: mysql+pymysql : 表示连接