python3.4用函数操作mysql5.7数据库

yipeiwu_com7年前Python基础

本文实例为大家分享了python3.4函数操作mysql数据库的具体代码,供大家参考,具体内容如下

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# __author__ = "blzhu"
"""
python study
Date:2017
"""
# -*- coding: utf-8 -*-
__author__ = 'djstava@gmail.com'

import logging
import pymysql


class MySQLCommand(object):
 def __init__(self, host, port, user, passwd, db, table, charset):
 self.host = host
 self.port = port
 self.user = user
 self.password = passwd
 self.db = db
 self.table = table
 self.charset = charset

 def connectMysql(self):
 try:
 self.conn = pymysql.connect(host=self.host, port=self.port, user=self.user, passwd=self.password,
   db=self.db, charset=self.charset)
 self.cursor = self.conn.cursor()
 print('connect ' + self.table + ' correctly!')
 except:
 print('connect mysql error.')

 def queryMysql(self):
 sql = "SELECT * FROM " + self.table

 try:
 print("query Mysql:")
 self.cursor.execute(sql)
 #row = self.cursor.fetchone()
 for d in self.cursor:
 print(str(d[0]), str(d[1]), str(d[2]))
 # print(row)

 except:
 print(sql + ' execute failed.')

 def insertMysql(self, id, name, sex):
 sql = "INSERT INTO " + self.table + " VALUES(" + id + "," + "'" + name + "'," + "'" + sex + "')"
 try:
 print("insert Mysql:")
 self.cursor.execute(sql)
 print(sql)
 except:
 print("insert failed.")

 def updateMysqlSN(self, name, sex):
 sql = "UPDATE " + self.table + " SET sex='" + sex + "'" + " WHERE name='" + name + "'"
 print("update sn:" + sql)

 try:
 self.cursor.execute(sql)
 self.conn.commit()
 except:
 self.conn.rollback()

 def deleteMysql(self, id): # 删除
 sql = "DELETE FROM %s WHERE id='%s'" % (self.table,id)
 #"delete from student where zid='%s'" % (id)
 try:
 self.cursor.execute(sql)
 print(sql)
 self.conn.commit()
 print("delete the " + id + "th row successfully!")
 except:
 print("delete failed!")
 self.conn.rollback()

 def closeMysql(self):
 self.conn.commit() # 不执行此句,所作的操作不会写入到数据库中
 self.cursor.close()
 self.conn.close()


if __name__ == '__main__':
 zblmysql = MySQLCommand(host='localhost', user='root', passwd='root', db='zbltest1', port=3306, table='student2',
  charset='utf8')
 zblmysql.connectMysql()
 zblmysql.queryMysql()
 zblmysql.insertMysql('5', 'zbl5', 'man')
 zblmysql.queryMysql()
 zblmysql.deleteMysql(id=2)
 zblmysql.queryMysql()
 zblmysql.updateMysqlSN(name='zbl5',sex='woman')
 zblmysql.queryMysql()
 zblmysql.closeMysql()

参考:python3操作mysql数据库的方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅谈Django的缓存机制

由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memc...

python 3.6.5 安装配置方法图文教程

python 3.6.5 安装配置方法图文教程

Windowns操作系统中安装Python,供大家参考,具体内容如下 一.下载Python 1.python 官网 下载安装包 2.选择版本 我这里用安装版(64位) 二...

Python 私有化操作实例分析

Python 私有化操作实例分析

本文实例讲述了Python 私有化操作。分享给大家供大家参考,具体如下: 私有化 xx: 公有变量 _x: 单前置下划线,私有化属性或方法,from somemodule import...

利用python写个下载teahour音频的小脚本

前言 最近空闲的时候看到了之前就关注的一个小站http://teahour.fm/,一直想把这里的音频都听一遍,可转眼间怎么着也有两年了,却什么也没做。有些伤感,于是就写了个脚本,抓了下...

Python正则表达式急速入门(小结)

Python正则表达式急速入门(小结)

正则表达式在程序开发中会经常用到,比如数据(格式)验证、替换字符内容以及提取字符串内容等等情况都会用到,但是目前许多开发人员对于正则表达式只是处于了解或者是基本会用的阶段。一旦遇到大批量...