python3中的mysql数据库操作

/

软硬件环境

  • OS X EI Capitan
  • Python 3.5.1
  • mysql 5.6

前言

在开发中经常涉及到数据库的使用,而python对于数据库也有多种解决方法。本文以python3中的mysql为例,介绍pymysql模块的使用。

准备数据库

创建一个mysql数据库,名字叫testdb,建立一张表叫testtable,它有3个字段,分别是id,数据类型是INT(11),设为主键、非空、UNSIGNED、AUTO INCREMENT,name,数据类型是VARCHAR(45),设为非空、唯一,sex,数据类型是VARCHAR(45),设为非空

python3 源码

  1. # -*- coding: utf-8 -*-
  2. __author__ = '[email protected]'
  3. import logging
  4. import pymysql
  5. class MySQLCommand(object):
  6. def __init__(self,host,port,user,passwd,db,table):
  7. self.host = host
  8. self.port = port
  9. self.user = user
  10. self.password = passwd
  11. self.db = db
  12. self.table = table
  13. def connectMysql(self):
  14. try:
  15. self.conn = pymysql.connect(host=self.host,port=self.port,user=self.user,passwd=self.password,db=self.db,charset='utf8')
  16. self.cursor = self.conn.cursor()
  17. except:
  18. print('connect mysql error.')
  19. def queryMysql(self):
  20. sql = "SELECT * FROM " + self.table
  21. try:
  22. self.cursor.execute(sql)
  23. row = self.cursor.fetchone()
  24. print(row)
  25. except:
  26. print(sql + ' execute failed.')
  27. def insertMysql(self,id,name,sex):
  28. sql = "INSERT INTO " + self.table + " VALUES(" + id + "," + "'" + name + "'," + "'" + sex + "')"
  29. try:
  30. self.cursor.execute(sql)
  31. except:
  32. print("insert failed.")
  33. def updateMysqlSN(self,name,sex):
  34. sql = "UPDATE " + self.table + " SET sex='" + sex + "'" + " WHERE name='" + name + "'"
  35. print("update sn:" + sql)
  36. try:
  37. self.cursor.execute(sql)
  38. self.conn.commit()
  39. except:
  40. self.conn.rollback()
  41. def closeMysql(self):
  42. self.cursor.close()
  43. self.conn.close()

转载请注明作者和出处,并添加本页链接。
原文链接: http://xugaoxiang.com/post/19

给我留言