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

(编辑:jimmy 日期: 2024/10/1 浏览:2)

本文实例为大家分享了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数据库的方法

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

一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?