python使用dataset快速使用SQLite

目录

一、官网地址

二、安装

[三、 快速使用](#三、 快速使用)


一、官网地址

GitHub - pudo/dataset: Easy-to-use data handling for SQL data stores with support for implicit table creation, bulk loading, and transactions.

二、安装

python 复制代码
 pip install dataset
如果是mysql,则多安装一个依赖:pip install mysqlclient

三、 快速使用

python 复制代码
import dataset

if __name__ == '__main__':
    """
    先天支持sqlite
    如果是mysql,则多安装一个依赖:pip install mysqlclient
    """
    db = dataset.connect('sqlite:///mydatabase.db')
    # 建表,如果表,则dataset会自动创建。
    table = db['user']
    # 新增
    table.insert(dict(name="张三丰", age=18, country='China'))
    # 新增
    table.insert(dict(name='Jane Doe', age=37, country='France', gender='female'))
    # 修改数据
    table.update(dict(name='张三丰', age=34), ['name'])  # 根据name值过滤进行修改
    # 快速事务,显式使用事务参考官网
    with dataset.connect('sqlite:///mydatabase.db') as tx:
        tx['user'].insert(dict(name='John Doe', age=46, country='China'))
    # 所有表
    tables = db.tables
    # 表字段
    columns = table.columns
    # 总行数
    count = len(table)
    # 所有数据
    users = table.all()
    # 搜索
    users_china = table.users_in(country='China')
    # 获取特定数据
    one = table.find_one(name='John Doe')
    # 查找多个
    users_in = table.find(id=[1, 3, 7])
    # 比较查找
    elderly_users1 = table.find(age={'>=': 70})
    possible_customers = table.find(age={'between': [21, 80]})
    elderly_users2 = table.find(table.table.columns.age >= 70)

    # 自定义SQL
    result = db.query('SELECT country, COUNT(*) c FROM user GROUP BY country')
相关推荐
NMBG225 分钟前
[JAVAEE] 面试题(四) - 多线程下使用ArrayList涉及到的线程安全问题及解决
java·开发语言·面试·java-ee·intellij-idea
Py小趴11 分钟前
Python自学之Colormaps指南
开发语言·python·数据可视化
晒足以百八十16 分钟前
基于Python 和 pyecharts 制作招聘数据可视化分析大屏
开发语言·python·信息可视化
敲代码不忘补水36 分钟前
生成式GPT商品推荐:精准满足用户需求
开发语言·python·gpt·产品运营·产品经理
孤客网络科技工作室41 分钟前
Python Plotly 库使用教程
python·信息可视化·plotly
悟解了41 分钟前
《数据可视化技术》上机报告
python·信息可视化·数据分析
机器学习之心1 小时前
时序预测 | 改进图卷积+informer时间序列预测,pytorch架构
人工智能·pytorch·python·时间序列预测·informer·改进图卷积
清风fu杨柳1 小时前
centos7 arm版本编译qt5.6.3详细说明
开发语言·arm开发·qt
醉颜凉1 小时前
【NOIP提高组】潜伏者
java·c语言·开发语言·c++·算法
糊涂君-Q1 小时前
Python小白学习教程从入门到入坑------第三十一课 迭代器(语法进阶)
python·学习·程序人生·考研·职场和发展·学习方法·改行学it