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设计】。

相关文章

Python网络编程之使用TCP方式传输文件操作示例

Python网络编程之使用TCP方式传输文件操作示例

本文实例讲述了Python网络编程之使用TCP方式传输文件操作。分享给大家供大家参考,具体如下: TCP文件下载器 客户端 需求:输入要下载的文件名,从服务器端将文件拷贝到本地 步骤:...

pytorch动态网络以及权重共享实例

pytorch 动态网络+权值共享 pytorch以动态图著称,下面以一个栗子来实现动态网络和权值共享技术: # -*- coding: utf-8 -*- import rando...

Python绘制频率分布直方图的示例

Python绘制频率分布直方图的示例

项目中在前期经常要看下数据的分布情况,这对于探究数据规律非常有用。概率分布表示样本数据的模样,长的好不好看如果有图像展示出来就非常完美了,使用Python绘制频率分布直方图非常简洁,因为...

Django自定义用户登录认证示例代码

Django自定义用户登录认证示例代码

前言 有时候 Django 自带的用户登录认证不能满足我们的需求,比如我不想要用户名+密码登录,我想手机号+验证码登录,这样就需要我们去修改 Django 自带的认证了。 Django...

python与mysql数据库交互的实现

python与mysql数据库交互的实现

1、安装pymysql库 如果你想要使用python操作MySQL数据库,就必须先要安装pymysql库,这个库的安装很简单,直接使用pip install pymysql;进行安装。...