zoukankan      html  css  js  c++  java
  • python多线程下连接SQL server

      在多线程下用pymssql连接sql server偶尔会出现连接失败的错误,所以考虑创建数据库连接池,主要通过python的DBUtils库实现,下载直接pip install dbutils.

    import pymssql
    from DBUtils.PooledDB import PooledDB
    
    
    class ConnSql(object):
    
        def __init__(self):
            self.pool = self.create_pool()
    
        def create_pool(self):
            """
            创建数据库连接池
            :return: 连接池
            """
            pool = PooledDB(creator=pymssql,
                            maxconnections=32,  # 连接池允许的最大连接数,0和None表示不限制连接数
                            mincached=15,  # 初始化时,链接池中至少创建的空闲的链接,0表示不创建
                            maxcached=0,  # 链接池中最多闲置的链接,0和None不限制
                            maxusage=None,  # 一个链接最多被重复使用的次数,None表示无限制
                            blocking=True,  # 连接池中如果没有可用连接后,是否阻塞等待。True,等待;False,不等待然后报错
                            host='127.0.0.1:1433',
                            user='MobileDB',
                            password='',
                            ping=0,
                            database='Test',
                            charset='utf8')
            return pool
    
        def test(self):
            conn = self.pool.connection()
            cursor = conn.cursor()
            print(conn)
            print(cursor)
    
    
    if __name__ == '__main__':
        ConnSql().test()
    
    
    #  <DBUtils.PooledDB.PooledDedicatedDBConnection object at 0x000001FE86B9A828>
    #  <DBUtils.SteadyDB.SteadyDBCursor object at 0x000001FE86E16A20>
    

      

  • 相关阅读:
    Android设置RadioButton在文字的右边
    如何创建启动界面Splash Screen
    sqlite3 数据类型 批量插入
    为PopupWindow设置弹出动画效果
    android activity生命周期
    Eclipse快捷键大全
    SQLite的使用
    创建窗口式Activity
    Android中实现按钮自动隐藏
    android技术片段
  • 原文地址:https://www.cnblogs.com/wangtaobiu/p/12843387.html
Copyright © 2011-2022 走看看