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 链接和操作 memcache方法
Mar 04 Python
Django 导出 Excel 代码的实例详解
Aug 11 Python
python select.select模块通信全过程解析
Sep 20 Python
利用Python2下载单张图片与爬取网页图片实例代码
Dec 25 Python
pandas修改DataFrame列名的方法
Apr 08 Python
Pyinstaller打包.py生成.exe的方法和报错总结
Apr 02 Python
详解python3 + Scrapy爬虫学习之创建项目
Apr 12 Python
python matplotlib库绘制散点图例题解析
Aug 10 Python
基于YUV 数据格式详解及python实现方式
Dec 09 Python
Python如何实现Paramiko的二次封装
Jan 30 Python
Python操作Excel的学习笔记
Feb 18 Python
Python的这些库,你知道多少?
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
php实现微信公众号主动推送消息
2015/12/31 PHP
thinkphp制作404跳转页的简单实现方法
2016/09/22 PHP
JS location几个方法小姐
2008/07/09 Javascript
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
JavaScript中this的使用详解
2013/11/08 Javascript
javascript截取字符串小结
2015/04/28 Javascript
javascript将DOM节点添加到文档的方法实例分析
2015/08/04 Javascript
JavaScript+CSS实现的可折叠二级菜单实例
2016/02/29 Javascript
JavaScript html5利用FileReader实现上传功能
2020/03/27 Javascript
原生JS实现的多个彩色小球跟随鼠标移动动画效果示例
2018/02/01 Javascript
postman+json+springmvc测试批量添加实例
2018/03/31 Javascript
JavaScript常用事件介绍
2019/01/21 Javascript
一百行JS代码实现一个校验工具
2019/04/30 Javascript
详解Node.JS模块 process
2020/08/31 Javascript
[01:19:11]Ti4 循环赛第二日 NaVi.us vs iG
2014/07/11 DOTA
python实现的重启关机程序实例
2014/08/21 Python
用Python代码来绘制彭罗斯点阵的教程
2015/04/03 Python
python RabbitMQ 使用详细介绍(小结)
2018/11/08 Python
python实现多层感知器
2019/01/18 Python
利用python实现对web服务器的目录探测的方法
2019/02/26 Python
python数据挖掘需要学的内容
2019/06/23 Python
python实现TCP文件传输
2020/03/20 Python
Python CategoricalDtype自定义排序实现原理解析
2020/09/11 Python
CSS3中的弹性布局em运用入门详解 1em等于多少像素
2021/02/08 HTML / CSS
Booking.com荷兰:全球酒店网上预订
2017/08/22 全球购物
美国宠物用品网站:Value Pet Supplies
2018/03/17 全球购物
Vivo俄罗斯官方在线商店:中国智能手机品牌
2019/10/04 全球购物
贸易跟单员英文求职信
2014/04/19 职场文书
旅游专业毕业生自荐书
2014/06/30 职场文书
年会主持人开场白台词
2015/05/29 职场文书
周末问候语大全
2015/11/10 职场文书
如何理解PHP核心特性命名空间
2021/05/28 PHP
试了下Golang实现try catch的方法
2021/07/01 Golang
MySQL8.0的WITH查询详情
2021/08/30 MySQL
详解Python中的for循环
2022/04/30 Python
修改Nginx配置返回指定content-type的方法
2022/09/23 Servers