pymysql的简单封装代码实例


Posted in Python onJanuary 08, 2020

这篇文章主要介绍了pymysql的简单封装代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

#coding=utf-8 
#!/usr/bin/python

import pymysql


class MYSQL:
  """
  对pymysql的简单封装
  """
  def __init__(self,host,user,pwd,db):
    self.host = host
    self.user = user
    self.pwd = pwd
    self.db = db

  def __GetConnect(self):
    """
    得到连接信息
    返回: conn.cursor()
    """
    if not self.db:
      raise(NameError,"没有设置数据库信息")
    self.conn = pymysql.connect(host=self.host,user=self.user,password=self.pwd,database=self.db,charset="utf8")
    cur = self.conn.cursor()
    if not cur:
      raise(NameError,"连接数据库失败")
    else:
      return cur

  def ExecQuery(self,sql):
    """
    执行查询语句
    返回的是一个包含tuple的list,list的元素是记录行,tuple的元素是每行记录的字段

    调用示例:
        ms = MYSQL(host="localhost",user="sa",pwd="123456",db="PythonWeiboStatistics")
        resList = ms.ExecQuery("SELECT id,NickName FROM WeiBoUser")
        for (id,NickName) in resList:
          print str(id),NickName
    """
    cur = self.__GetConnect()
    cur.execute(sql)
    resList = cur.fetchall()

    #查询完毕后必须关闭连接
    self.conn.close()
    return resList

  def ExecNonQuery(self,sql):
    """
    执行非查询语句

    调用示例:
      cur = self.__GetConnect()
      cur.execute(sql)
      self.conn.commit()
      self.conn.close()
    """
    cur = self.__GetConnect()
    cur.execute(sql)
    self.conn.commit()
    self.conn.close()

def main():

  mysql = MYSQL(host="192.168.163.36",user="wisdomhr",pwd="wisdomhr",db="WISDOMHR")
  resList = mysql.ExecQuery("SELECT CITY FROM RES_SCHOOL")
  for inst in resList:
    print(inst)
if __name__ == '__main__':
  main()

用法如下:

#!/usr/bin/python
#version 3.4
import wispymysql
mysql = wispymysql.MYSQL(host="192.168.163.36",user="wisdomhr",pwd="wisdomhr",db="WISDOMHR")
selectsql = "SELECT ID, CITY FROM RES_SCHOOL WHERE CITY LIKE '%\r\n%'"
result = mysql.ExecQuery(selectsql)

for (dbid, city) in result:
  rightcity = city.replace('\r\n','')
  updatesql= "UPDATE RES_SCHOOL SET CITY = '" + rightcity + "' WHERE ID = " + str(dbid)
  print(updatesql)
  mysql.ExecNonQuery(updatesql)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 判断一个进程是否存在
Apr 09 Python
Python操作Mysql实例代码教程在线版(查询手册)
Feb 18 Python
python实现分析apache和nginx日志文件并输出访客ip列表的方法
Apr 04 Python
详解Python设计模式编程中观察者模式与策略模式的运用
Mar 02 Python
python 把数据 json格式输出的实例代码
Oct 31 Python
python3实现磁盘空间监控
Jun 21 Python
pycham查看程序执行的时间方法
Nov 29 Python
利用python实现汉字转拼音的2种方法
Aug 12 Python
Python谱减法语音降噪实例
Dec 18 Python
PyTorch加载自己的数据集实例详解
Mar 18 Python
Django media static外部访问Django中的图片设置教程
Apr 07 Python
OpenCV-Python使用cv2实现傅里叶变换
Jun 09 Python
pytorch使用 to 进行类型转换方式
Jan 08 #Python
Pycharm 2020年最新激活码(亲测有效)
Sep 18 #Python
Pytorch to(device)用法
Jan 08 #Python
pycharm 2019 最新激活方式(pycharm破解、激活)
Sep 22 #Python
Python语言异常处理测试过程解析
Jan 08 #Python
Pytorch在NLP中的简单应用详解
Jan 08 #Python
解析PyCharm Python运行权限问题
Jan 08 #Python
You might like
模拟OICQ的实现思路和核心程序(二)
2006/10/09 PHP
php 论坛采集程序 模拟登陆,抓取页面 实现代码
2009/07/09 PHP
php smarty截取中文字符乱码问题?gb2312/utf-8
2011/11/07 PHP
使用Zookeeper分布式部署PHP应用程序
2019/03/15 PHP
validator验证控件使用代码
2010/11/23 Javascript
javascript算法学习(直接插入排序)
2011/04/12 Javascript
原生js实现改变随意改变div属性style的名称和值的结果
2013/09/26 Javascript
加载列表时jquery获取ul中第一个li的属性
2014/11/02 Javascript
jQuery检测输入的字符串包含的中英文的数量
2015/04/17 Javascript
iscroll.js的上拉下拉刷新时无法回弹的解决方法
2016/02/18 Javascript
Bootstrapvalidator校验、校验清除重置的实现代码(推荐)
2016/09/28 Javascript
JavaScript中${pageContext.request.contextPath}取值问题及解决方案
2016/12/08 Javascript
javascript设计模式之Adapter模式【适配器模式】实现方法示例
2017/01/13 Javascript
webpack+vue中使用别名路径引用静态图片地址
2017/11/20 Javascript
利用js-cookie实现前端设置缓存数据定时失效
2019/06/18 Javascript
JS利用prototype给类添加方法操作详解
2019/06/21 Javascript
Vue中 axios delete请求参数操作
2020/08/25 Javascript
微信小程序入门之指南针
2020/10/22 Javascript
python通过yield实现数组全排列的方法
2015/03/18 Python
Python实现的本地文件搜索功能示例【测试可用】
2018/05/30 Python
Python调用服务接口的实例
2019/01/03 Python
python实现对输入的密文加密
2019/03/20 Python
Python定义一个Actor任务
2020/07/29 Python
python判断变量是否为列表的方法
2020/09/17 Python
详解java调用python的几种用法(看这篇就够了)
2020/12/10 Python
在python3.9下如何安装scrapy的方法
2021/02/03 Python
中国跨境在线时尚零售商:Bellelily
2018/04/06 全球购物
新闻记者个人求职的自我评价
2013/11/28 职场文书
区域销售经理职责
2013/12/22 职场文书
工作自我评价怎么写
2014/01/29 职场文书
优秀干部获奖感言
2014/01/31 职场文书
三年级班级文化建设方案
2014/05/04 职场文书
敬业奉献模范事迹材料
2014/12/24 职场文书
从严治党主题教育活动总结
2015/05/07 职场文书
严以用权专题学习研讨会发言材料
2015/11/09 职场文书
Redis实现一个账号只能登录一个设备
2022/04/19 Redis