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')
相关推荐
jay神4 分钟前
基于 FastAPI + Vue 的宠物领养管理系统
前端·vue.js·python·毕业设计·fastapi·宠物
重生之后端学习9 分钟前
Java入门
java·开发语言·职场和发展
碧海蓝天202214 分钟前
C++法则24:在标准 C++ 中,没有任何可移植的方式判断指针 T* pt 指向的内存位置是否已经 构造了对象,程序员必须手动跟踪哪些元素已构造。
java·开发语言·c++
代码不加糖21 分钟前
Proxy能够监听到对象中的对象的引用吗?
开发语言·前端·javascript
charlie11451419128 分钟前
现代C++指南:Lambda,让我们用另一种方式持有函数
开发语言·c++
程序员小远33 分钟前
自动化测试基础知识总结
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
GEO优化小助手1 小时前
2026临沂GEO优化公司实测解析:3家本土机构适配性参考
大数据·人工智能·python
qq3621967051 小时前
阿里裁员新消息(2026最新动态汇总)
java·开发语言·前端
砚底藏山河1 小时前
沪深A股:如何获取基金持股数据
java·python·数据分析·maven
.千余1 小时前
【C++】模板进阶全解:非类型参数|全特化|偏特化|分离编译完全指南
开发语言·c++·笔记·学习·其他