Python编程:peewee的pwiz将已有数据库转为Model

举报
彭世瑜 发表于 2021/08/14 01:22:58 2021/08/14
【摘要】 peewee可以用Model直接在数据库中创建表 反过来也可以,用数据库中已经存在的表创建Model 前提:已经安装peewee模块pip install peewee $ python -m pwiz -e mysql -H localhost -p 3306 -u root -P -t table_names database_name > model....

peewee可以用Model直接在数据库中创建表
反过来也可以,用数据库中已经存在的表创建Model

前提:已经安装peewee模块pip install peewee

$ python -m pwiz -e mysql -H localhost -p 3306 -u root -P  -t table_names database_name > model.py

  
 
  • 1

参数解释:

选项 解释 举例
-h help 显示帮助 -h
-e engine 数据库引擎 -e mysql
-H host 数据库地址 -H localhost
-p port 数据库端口 -p 3306
-u user 数据库用户名 -u root
-P password 数据库密码 -P
-s schema 模式 -s public
-t tables 指定生成来自表格 -t tweet,users,relationships
-v VIEWs 指定生成来自视图 -v
-i info 添加原信息 -i
-o order 保留表格列顺序 -o

engine支持的数据库:
sqlite
mysql
postgresql

举例

命令行语句

$ python -m pwiz -e mysql -H localhost -p 3306 -u root -P  -t names demo > names.py

  
 
  • 1

生成的names.pyModel文件

from peewee import *


database = MySQLDatabase('demo', **{'charset': 'utf8', 'use_unicode': True, 'host': 'localhost', 'port': 3306, 'user': 'root', 'password': '123456'})


class BaseModel(Model): class Meta: database = database

class Names(BaseModel): age = IntegerField(null=True) name = CharField(null=True, unique=True) class Meta: table_name = 'names'


  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

参考:
pwiz, a model generator

文章来源: pengshiyu.blog.csdn.net,作者:彭世瑜,版权归原作者所有,如需转载,请联系作者。

原文链接:pengshiyu.blog.csdn.net/article/details/83502547

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。