如何调用直接看__main__函数里如何调用此工具类就阔以啦!

 # encoding=utf-8
import pymysql # 导入所有Mysql配置常量,请自行指定文件
from conf.settings import * class MysqlConnection(object):
"""
mysql操作类,对mysql数据库进行增删改查
""" def __init__(self, config):
# Connect to the database
self.connection = pymysql.connect(**config)
self.connection.autocommit(True)
self.cursor = self.connection.cursor() def QueryAll(self, sql):
"""
查询所有数据
:param sql:
:return:
"""
# 数据库若断开即重连
self.reConnect() self.cursor.execute(sql)
return self.cursor.fetchall() def QueryMany(self, sql, n):
"""
查询某几条数据数据
:param sql:
:return:
"""
# 数据库若断开即重连
self.reConnect() self.cursor.execute(sql)
return self.cursor.fetchmany(n) def QueryOne(self, sql):
"""
查询某几条数据数据
:param sql:
:return:
"""
# 数据库若断开即重连
self.reConnect() self.cursor.execute(sql)
return self.cursor.fetchone() # return self.cursor.fetchone() def reConnect(self):
"""
重连机制
:return:
"""
try:
self.connection.ping()
except:
self.connection() def Operate(self, sql, params=None, DML=True):
"""
数据库操作:增删改查
DML: insert / update / delete
DDL: CREATE TABLE/VIEW/INDEX/SYN/CLUSTER
"""
try:
# 数据库若断开即重连
self.reConnect() with self.connection.cursor() as cursor:
cursor.execute(sql, params) self.connection.commit() except Exception as e:
if DML:
# 涉及DML操作时,若抛异常需要回滚
self.connection.rollback()
print(e) def __del__(self):
"""
MysqlConnection实例对象被释放时调用此方法,用于关闭cursor和connection连接
"""
self.cursor.close()
self.connection.close() if __name__ == "__main__":
# 初始化MysqlConnection实例对象需要传Mysql配置信息的字典
config = {'host': MYSQL_HOST, 'charset': CHARSET, 'db': DB, 'user': USER, 'port': MYSQL_PORT, 'password': PASSWORD}
msc = MysqlConnection(config)
sql = "delete from users where username ='%s'" % "" print(msc.Operate(sql))

Python工具类(一)—— 操作Mysql数据库的更多相关文章

  1. Python MySQLdb模块连接操作mysql数据库实例_python

    mysql是一个优秀的开源数据库,它现在的应用非常的广泛,因此很有必要简单的介绍一下用python操作mysql数据库的方法.python操作数据库需要安装一个第三方的模块,在http://mysql ...

  2. python学习笔记之——操作mysql数据库

    Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口. Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库: ...

  3. python 通过 pymysql模块 操作 mysql 数据库

    Python 中操作 MySQL 步骤 安装模块 pip install pymysql 引入模块 在py文件中引入pymysql模块 from pymysql import * Connection ...

  4. python 3.6 +pyMysql 操作mysql数据库

    版本信息:python:3.6 mysql:5.7 pyMysql:0.7.11 ########################################################### ...

  5. python【第十二篇下】操作MySQL数据库以及ORM之 sqlalchemy

    内容一览: 1.Python操作MySQL数据库 2.ORM sqlalchemy学习 1.Python操作MySQL数据库 2. ORM sqlachemy 2.1 ORM简介 对象关系映射(英语: ...

  6. 使用python操作mysql数据库

    这是我之前使用mysql时用到的一些库及开发的工具,这里记录下,也方便我查阅. python版本: 2.7.13 mysql版本: 5.5.36 几个python库 1.mysql-connector ...

  7. python操作mysql数据库增删改查的dbutils实例

    python操作mysql数据库增删改查的dbutils实例 # 数据库配置文件 # cat gconf.py #encoding=utf-8 import json # json里面的字典不能用单引 ...

  8. 【Python】使用python操作mysql数据库

    这是我之前使用mysql时用到的一些库及开发的工具,这里记录下,也方便我查阅. python版本: 2.7.13 mysql版本: 5.5.36 几个python库 1.mysql-connector ...

  9. python + docker, 实现天气数据 从FTP获取以及持久化(二)-- python操作MySQL数据库

    前言 在这一节中,我们主要介绍如何使用python操作MySQL数据库. 准备 MySQL数据库使用的是上一节中的docker容器 “test-mysql”. Python 操作 MySQL 我们使用 ...

随机推荐

  1. java 标准流

    标准输入流:  System.in   默认表示的是键盘录入    标准输出流:  System.out  默认表示的是屏幕输出 Eg: package june6D; import java.io. ...

  2. laravel5数据库配置及其注意事项

    今天分享一个Laravel5数据库配置上的坑. Laravel5作为一套简洁.优雅的PHP Web开发框架(笑),唯一不足的一点就是中文手册或者说是资料比较少,虽然现在很多大神也开始普及这些东西,但是 ...

  3. H3C DHCP系统组成

  4. 转 最近5年183个Java面试问题列表及答案[最全]

    Java 面试随着时间的改变而改变.在过去的日子里,当你知道 String 和 StringBuilder 的区别(String 类型和 StringBuffer 类型的主要性能区别其实在于 Stri ...

  5. vue-learning:12-1- HTML5的<template>内容模板元素

    HTML5的<template>内容模板元素 HTML内容模板<template>元素将它其中的内容存储在页面文档中,以供后续使用,该内容的DOM结构在加载页面时会被解析器处理 ...

  6. CodeForces 375D Tree and Queries

    传送门:https://codeforces.com/problemset/problem/375/D 题意: 给你一颗有根树,树上每个节点都有其对应的颜色,有m次询问,每次问你以点v为父节点的子树内 ...

  7. CS224n: Natural Language Processing学习准备

    cs224n 斯坦福网址,里面包含讲课视频,ppt,代码,学习完后做一个问答系统 http://web.stanford.edu/class/cs224n/index.html 下载anaconda, ...

  8. ELK学习实验008:Kibana的介绍

    一 简介 Kiana是一款开源的数据分析和可视化平台,它是 Elastic Stack成员之一,设计用于和 Elasticsearch协作.您可以使用 Kiana对 Elasticsearch索引中的 ...

  9. 使用SonarQube+Eclipse来分析python代码

    背景 最近在项目中推广集成测试的理念以及相关工具,在jenkins中集成sonar去分析项目的java代码的时候,意外的发现,sonarqube上还有对应python的插件,而自己写的测试工具大部分都 ...

  10. Analysis of Two-Channel Generalized Sidelobe Canceller (GSC) With Post-Filtering

    作者:凌逆战 地址:https://www.cnblogs.com/LXP-Never/p/12071748.html 题目:带后置滤波的双通道广义旁瓣相消器(GSC)的分析 作者:Israel Co ...