系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > 数据库 > Mysql > 详细页面

pymysql的简单封装代码实例

时间:2020-01-09来源:系统城作者:电脑系统城

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


 
  1. #coding=utf-8
  2. #!/usr/bin/python
  3.  
  4. import pymysql
  5.  
  6.  
  7. class MYSQL:
  8. """
  9. 对pymysql的简单封装
  10. """
  11. def __init__(self,host,user,pwd,db):
  12. self.host = host
  13. self.user = user
  14. self.pwd = pwd
  15. self.db = db
  16.  
  17. def __GetConnect(self):
  18. """
  19. 得到连接信息
  20. 返回: conn.cursor()
  21. """
  22. if not self.db:
  23. raise(NameError,"没有设置数据库信息")
  24. self.conn =pymysql.connect(host=self.host,user=self.user,password=self.pwd,database=self.db,charset="utf8")
  25. cur = self.conn.cursor()
  26. if not cur:
  27. raise(NameError,"连接数据库失败")
  28. else:
  29. return cur
  30.  
  31. def ExecQuery(self,sql):
  32. """
  33. 执行查询语句
  34. 返回的是一个包含tuple的list,list的元素是记录行,tuple的元素是每行记录的字段
  35.  
  36. 调用示例:
  37. ms = MYSQL(host="localhost",user="sa",pwd="123456",db="PythonWeiboStatistics")
  38. resList = ms.ExecQuery("SELECT id,NickName FROM WeiBoUser")
  39. for (id,NickName) in resList:
  40. print str(id),NickName
  41. """
  42. cur = self.__GetConnect()
  43. cur.execute(sql)
  44. resList = cur.fetchall()
  45.  
  46. #查询完毕后必须关闭连接
  47. self.conn.close()
  48. return resList
  49.  
  50. def ExecNonQuery(self,sql):
  51. """
  52. 执行非查询语句
  53.  
  54. 调用示例:
  55. cur = self.__GetConnect()
  56. cur.execute(sql)
  57. self.conn.commit()
  58. self.conn.close()
  59. """
  60. cur = self.__GetConnect()
  61. cur.execute(sql)
  62. self.conn.commit()
  63. self.conn.close()
  64.  
  65. def main():
  66.  
  67. mysql =MYSQL(host="192.168.163.36",user="wisdomhr",pwd="wisdomhr",db="WISDOMHR")
  68. resList = mysql.ExecQuery("SELECT CITY FROM RES_SCHOOL")
  69. for inst in resList:
  70. print(inst)
  71. if __name__ == '__main__':
  72. main()

用法如下:


 
  1. #!/usr/bin/python
  2. #version 3.4
  3. import wispymysql
  4. mysql =wispymysql.MYSQL(host="192.168.163.36",user="wisdomhr",pwd="wisdomhr",db="WISDOMHR")
  5. selectsql = "SELECT ID, CITY FROM RES_SCHOOL WHERE CITY LIKE '%\r\n%'"
  6. result = mysql.ExecQuery(selectsql)
  7.  
  8. for (dbid, city) in result:
  9. rightcity = city.replace('\r\n','')
  10. updatesql= "UPDATE RES_SCHOOL SET CITY = '" + rightcity + "' WHERE ID = " + str(dbid)
  11. print(updatesql)
  12. mysql.ExecNonQuery(updatesql)

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

分享到:

相关信息

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载