当前位置: 首页 > news >正文

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.

二、安装

 pip install dataset
如果是mysql,则多安装一个依赖:pip install mysqlclient

三、 快速使用

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')

http://www.dtcms.com/a/2608.html

相关文章:

  • 这应该是关于回归模型最全的总结了(附原理+代码)
  • mac jdk的环境变量路径,到底在哪里?
  • 智慧党建小程序源码系统+在线答题考试二合一 带完整的搭建教程
  • 基于堆优化优化的BP神经网络(分类应用) - 附代码
  • WebGL 世界坐标系和本地坐标系
  • “Linux免除系统交互操作方法、expect自动化交互工具” 及 “SSH批量修改主机密码脚本”
  • Python爬虫selenium安装谷歌驱动解决办法
  • 使用Filter AND Interceptor校验等录(全网独一份,机不可失)
  • CCF CSP认证 历年题目自练Day34
  • IDEA中创建Web工程流程
  • Java NIO三大核心组件
  • python和go执行字符串表达式
  • 苏轼在密州的四首千古名作
  • DIY私人图床:使用CFimagehost源码自建无需数据库支持的PHP图片托管服务
  • 【RTOS学习】优先级 | Tick | 任务状态 | 空闲任务 | 任务调度
  • javaweb:mybatis:mapper(sql映射+代理开发+配置文件之设置别名、多环境配置、顺序+注解开发)
  • 一图看懂CodeArts Governance 三大特性,带你玩转开源治理服务
  • OpenCV实现人脸关键点检测
  • pdf格式的简历中的照片太小,如何修改图片的大小
  • iOS 中,isa 指针
  • 小程序 | 小程序后端用什么语言开发比较好
  • 通讯网关软件024——利用CommGate X2Access实现Modbus TCP数据转储Access
  • ORACLE 19C PDB FOR MYSQL 5.7 部署ogg
  • 1.16.C++项目:仿muduo库实现并发服务器之HttpContext以及HttpServer模块的设计
  • 事务管理 vs. 锁控制:你真的分得清吗?何时使用何种并发控制策略?
  • EfficientDet: Scalable and Efficient Object Detection
  • 多架构环境下docker-compose部署rocketmq单机模式—— 筑梦之路
  • 力扣第39题 组合总和 c++ 回溯剪枝题
  • 需永远在线的游戏公司,如何在线替换开源存储?
  • Docker在边缘计算中的崭露头角:探索容器技术如何驱动边缘计算的新浪潮