数据分析师:2.0peewee读取数据库数据

ORM(Object-Relational Mapping) 对象关系映射
• 关系型数据库与Python代码之间做映射
• 不需要直接写SQL语句
• 通常以面向对象(Object-Oriented,OO)的形式对数据进行封装及交互

安装模块

pip install peewee 

查看数据库的表和字段
.get_tables() -> 获取数据库的表名称
.get_columns(表名) -> 获取某个表的各个字段名称

from peewee import SqliteDatabase  # 导入数据库

db = SqliteDatabase('douban_comment_data.db')  # 读取数据
print(db.get_tables())  # 获取数据库的表名称
print(db.get_columns('comment'))  # 获取某个表的各个字段名称

自动生成模型对应的类
在控制台/命令行中输入:
python -m pwiz -e sqlite douban_comment_data.db>my_models.py

用法: python -m pwiz-e 数据库类型数据库地址> 输出的模型文件

生成的my_models.py文件

from peewee import *

database = SqliteDatabase('douban_comment_data.db')

class UnknownField(object):
    def __init__(self, *_, **__): pass

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

class Comment(BaseModel):
    add_time = TextField(column_name='ADD_TIME')
    content = TextField(column_name='CONTENT')
    creator = TextField(column_name='CREATOR')
    id = AutoField(column_name='ID', null=True)
    movieid = TextField(column_name='MOVIEID')
    rating = IntegerField(column_name='RATING')
    time = TextField(column_name='TIME')

    class Meta:
        table_name = 'comment'

class Movie(BaseModel):
    add_time = TextField(
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值