【无标题】

python的dbpoolpy库连接多个数据库

介绍

python使用此库可以方便的操作数据库数据,主要是用在关系型数据库,可以支持SQLite3, MySQL, PostgreSQL

安装教程
pip install dbpoolpy
特点
  • 和数据库交互方便,不需要写sql语句
  • 支持三种数据库类型:SQLite3, MySQL, PostgreSQL
  • 可同时连接多个数据库
使用说明

connect_db可以返回连接池的一个连接,在with语句中执行多步数据库操作,期间不会释放连接,
with语句执行完后,会自动把数据库连接放回到连接池里。

连接多个数据库

dbpoolpy可以同时多个数据库,支持SQLite3, MySQL, PostgreSQL,并自动创建和管理多个数据库连接池, 参考如下代码:

import pymysql
import sqlite3
import psycopg2

DATABASE = {
    'dbcon1':  {
        'engine': pymysql,         # 取数据库所使用的插件
        'database': 'imlf1',       # 默认连接的数据库
        'host': '127.0.0.1',       # 数据库地址
        'port': 51000,             # 数据库端口
        'user': 'atpdev',          # 数据库用户名
        'password': '',            # 数据库的密码
        'charset': 'utf8',         # 字符集类型
        'mincached': 0,            # 初始化连接数
        'maxconnections': 10       # 数据库连接池的最大连接数
    },
    'dbcon2':  {
        'engine': sqlite3,         # 取数据库所使用的插件
        'dbtype': 'sqlite3',       # 数据库类型, 默认是mysql
        'database': 'test_db.db',  # sqlite3数据库路径
        'maxconnections': 10       # 数据库连接池的最大连接数
    },
    'dbcon3':  {
        'engine': psycopg2,        # 取数据库所使用的插件
        'dbtype': 'postgresql',    # 数据库类型, 默认是mysql
        'database': 'dev1',        # 默认连接的数据库
        'host': '127.0.0.1',       # 数据库地址
        'port': 52000,             # 数据库端口
        'user': 'atpdev',          # 数据库用户名
        'password': '',            # 数据库的密码
        'mincached': 0,            # 初始化连接数
        'maxconnections': 10       # 数据库连接池的最大连接数
    },
}
init_pool(DATABASE)
from dbpoolpy import Select

# mysql
datas1 = Select("dbcon1", "table_name1").where(field1='152901').all()
# sqlite3
datas1 = Select("dbcon2", "table_name2").where(field1='152902').all()
# postgresql
datas1 = Select("dbcon3", "table_name3").where(field1='152903').all()

代码非常的简洁, 可以实现增删改查的操作。

参考地址:https://gitee.com/zsq_tee/dbpoolpy

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值