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

100个免费推广网站下载优秀网站seo报价

100个免费推广网站下载,优秀网站seo报价,做展馆的公司有哪些,建筑公司网站新年贺词操作数据库封装SQL工具类的两种方式 为了更方便的实现基于连接池和pymysql 连接数据库,需开发一个sql工具类来让sql操作更简洁用两张方式来封装SQL工具类 1 )单例模式 封装 db.py 工具类 import pymysql from dbutils.pooled_db import PooledDBclas…

操作数据库封装SQL工具类的两种方式

  • 为了更方便的实现基于连接池和pymysql 连接数据库,需开发一个sql工具类来让sql操作更简洁
  • 用两张方式来封装SQL工具类

1 )单例模式

封装 db.py 工具类

import pymysql
from dbutils.pooled_db import PooledDBclass DBHelper(object):def __init__(self):self.pool = PooledDB(creator=pymysql,maxconnections=5,mincached=2,maxcached=3,blocking=True,setsession=[],ping=0,host='127.0.0.1',port=3306user='root',password='xxxxx',database='userdb',charset='utf8')def get_conn_cursor(self):conn = self.pool.connection()cursor=conn.cursor(pyymsql.cursors.DictCursor)return conn, cursordef close_conn_cursor(self, *args):for item in args:item.close()def exec(self, sql, **kwargs):conn, cursor = self.get_conn_cursor()cursor.execute(sql, kwargs)conn.commit()self.close_conn_cursor(conn, cursor)def fetch_one(self, sql, **kwargs):conn, cursor = self.get_conn_cursor()cursor.execute(sql, kwargs)result = cursor.fetchone()self.cloes_conn_cursor(conn, cursor)return resultdef fetch_all(self, sql, **kwarrgs):conn, cursor = self.get_conn_cursor()cursor.execute(sql, kwargs)result = cursor.fetchall()self.close_conn_cursor(conn, cursor)db = DBHelper()

xxx.py 调用示例

from db import dbv1 = db.fetch_one("select * from d1")
print(v1)v2 = db.fetch_one('select * from d1 where id=%(nid)s ', nid=3)
print(v2)

2 ) 上下文管理

基于 with 上下文管理

with 获取连接:执行sql (执行完毕后,自动将连接交还给连接池)

封装 db_context.py

import threading
import pymysql
from dbutils.pooled_db import PooledDBPOOL = PooledDB(creator=pymysql, # 使用连接数据库的模块maxconnections=5,mincached=2,maxcached=3,blocking=True,setssion=[],ping=0,host='127.0.0.1'port=3306,user='root',password='xxxx',database='userdb',charset='utf8'
)class Connect(object):def __init__(self):self.conn = conn = POOL.connection() # 连接self.cursor = conn.cursor(pymysql.cursors.DictCursor) # 游标def __enter__(self):return selfdef __exit__(self, exc_type, exc_val, exc_tb):self.cursor.close()self.conn.close()def exec(self, sql, **kwargs):self.cursor.execute(sql, kwargs)self.conn.commit()def fetch_one(self, sql, **kwargs):self.cursor.execute(sql, kwargs)result = self.cursor.fetchone()return resultdef fetch_all(self, sql, **kwargs):self.cursor.excute(sql, kwargs)result = self.cursor.fetchall()return result

yyy.py 调用示例

from db_context import Connect### 实例化 对象得到值
with Connect() as obj:ret = obj.fetch_one('select * from d1')print(ret)ret = obj.fetch_one("select * from d1 where id=%(id)s", id=3)print(ret)
http://www.yayakq.cn/news/861910/

相关文章:

  • 深圳专业网站设计哪家好西安市工程建设信息网
  • 实用网站的设计与实现斗鱼网站的实时视频是怎么做的
  • 聊城那里做网站弹簧机东莞网站建设
  • 深圳设计网站建设公司寓意前程似锦的工程公司名字
  • 医院门户网站设计登录免费注册网址
  • 网站设计网站制作c mvc网站开发
  • 网站建设与网页设计案例教程军事新闻最新消息11
  • 桂平市住房和城乡建设局门户网站广州安全教育平台官网
  • 福州网站建设找嘉艺网络搭建一个网站的步骤
  • 成都网站建设方案服务零基础自学python
  • flash网站设计作品wordpress更新服务ping
  • 网站建设维护推广合同为什么企业要上市
  • 龙华做棋牌网站建设哪家好下沙经济开发区建设局网站
  • 志丹网站建设上海网站建设 上海网站制作
  • 做英文网站哪家好南京网站制作公司电话
  • 任丘网站开发建设怎么选汉中市建设工程招投标信息网官网
  • 网站建设周期表国内永久免费crm系统软件高清完整版
  • dw网站模板免费下载网站建设要符合哪些标准
  • 西安淘宝网站建设公司企业的网站建设费账务处理
  • 打广告型的营销网站制作短视频的软件
  • 黄冈网站推广优化找哪家建设免费网站制作
  • 大兴安岭地网站seo信息查询
  • 做网站伊犁哈萨克自治州做芯片哪个网站推广
  • PK10如何自己做网站广州建设工程交易中心是干啥的
  • 帮别人做彩票网站犯法嘛网站如何做404
  • 注册网站模板厦门市住建局官网
  • wordpress 升级 无法创建目录医药类网站怎么做seo
  • 网站开发创意设计58创业加盟网
  • 个人做财经类网站网页设计实训总结和体会
  • 网站开发与维护实训总结设计本装修app