iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >Python 封装MySQL类
  • 567
分享到

Python 封装MySQL类

PythonMySQL 2023-01-31 07:01:54 567人浏览 薄情痞子
摘要

   以后再也不用每次都重新写啦!    import Mysqldb OperationalError = mysqldb.OperationalError class Mysql: def _

   以后再也不用每次都重新写啦!

   

import Mysqldb 
OperationalError = mysqldb.OperationalError
class Mysql: 
    def __init__(self,host,user,passWord,port=3306,charset="utf8"): 
        self.host=host 
        self.port=port
        self.user=user 
        self.password=password 
        self.charset=charset 
        try: 
            self.conn=MySQLdb.connect(host=self.host,port=self.port,user=self.user,passwd=self.password)
            self.conn.autocommit(False)
            self.conn.set_character_set(self.charset) 
            self.cur=self.conn.cursor() 
        except MySQLdb.Error as e: 
            print("Mysql Error %d: %s" % (e.args[0], e.args[1])) 
                    
    def __del__(self):
        self.close()
                         
    def selectDb(self,db): 
        try: 
            self.conn.select_db(db) 
        except MySQLdb.Error as e: 
            print("Mysql Error %d: %s" % (e.args[0], e.args[1])) 
                         
    def query(self,sql): 
        try: 
            n=self.cur.execute(sql) 
            return n 
        except MySQLdb.Error as e: 
            print("Mysql Error:%s\nSQL:%s" %(e,sql)) 
                         
    def fetchRow(self): 
        result = self.cur.fetchone() 
        return result 
                         
    def fetchAll(self): 
        result=self.cur.fetchall() 
        desc =self.cur.description 
        d = [] 
        for inv in result: 
            _d = {} 
            for i in range(0,len(inv)): 
                _d[desc[i][0]] = str(inv[i]) 
                d.append(_d) 
        return d 
                         
    def insert(self,table_name,data): 
        columns=data.keys()
        _prefix="".join(['INSERT INTO `',table_name,'`'])
        _fields=",".join(["".join(['`',column,'`']) for column in columns])
        _values=",".join(["%s" for i in range(len(columns))])
        _sql="".join([_prefix,"(",_fields,") VALUES (",_values,")"])
        _params=[data[key] for key in columns]
        return self.cur.execute(_sql,tuple(_params)) 
                       
    def update(self,tbname,data,condition):
        _fields=[]
        _prefix="".join(['UPDATE `',tbname,'`','SET'])
        for key in data.keys():
            _fields.append("%s = %s" % (key,data[key]))
        _sql="".join([_prefix ,_fields, "WHERE", condition ])
                           
        return self.cur.execute(_sql)
                       
    def delete(self,tbname,condition):
        _prefix="".join(['DELETE FROM  `',tbname,'`','WHERE'])
        _sql="".join([_prefix,condition])  
        return self.cur.execute(_sql)
                         
    def getLastInsertId(self): 
        return self.cur.lastrowid 
                         
    def rowcount(self): 
        return self.cur.rowcount 
                         
    def commit(self): 
        self.conn.commit() 
                       
    def rollback(self):
        self.conn.rollback()
                         
    def close(self): 
        self.cur.close() 
        self.conn.close()
                           
if __name__=='__main__':
    n=MySQL('127.0.0.1','root','123456',3306)
    n.selectDb('test')
    tbname='map'
    a=({'id':3,'x':3,'y':3},{'id':4,'x':4,'y':4},{'id':5,'x':5,'y':5})
    for d in a:
        n.insert(tbname,d)
    n.commit()


 一个重量级的MySQL-python 封装类:facebook Python mysql

您可能感兴趣的文档:

--结束END--

本文标题: Python 封装MySQL类

本文链接: https://www.lsjlt.com/news/191504.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python 封装MySQL类
       以后再也不用每次都重新写啦!    import MySQLdb OperationalError = MySQLdb.OperationalError class MySQL: def _...
    99+
    2023-01-31
    Python MySQL
  • Python 类的封装
    封装(Encapsulation)是对 object 的一种抽象,即将某些部分隐藏起来,在程序外部看不到,即无法调用(不是人用眼睛看不到那个代码,除非用某种加密或者混淆方法,造成现实上的困难,但这不是封装)。要了解封装,离不开“私有化”,就...
    99+
    2023-01-31
    Python
  • java封装类是如何封装的
    在Java中,封装是一种面向对象编程的概念,用于隐藏内部实现细节,并通过公共方法提供对数据的访问和操作。封装类是为了封装基本数据类型...
    99+
    2023-10-23
    java
  • python中类怎么定义与封装
    在Python中,可以使用class关键字来定义一个类。类的定义包括类名、类的属性和方法。类的封装是指将类的属性和方法封装起来,只允...
    99+
    2023-10-19
    python
  • python怎么把函数封装成类
    在python中将函数封装成类的方法封装一个阶乘类class JieChengCount(object):def __init__(self,n):self.n = n# 阶乘求积def jc(self,n):result = 1if n ...
    99+
    2022-10-19
  • 封装一个python的pymysql操作类
    最近使用pymysql写脚本的情况越来越多了,刚好整理,简单封装一个pymysql的操作类 import pymysql class MysqlDB: def __init__( self,...
    99+
    2022-12-25
    PyMySQL的使用方法 pymysql使用教程 pymysql模块的使用
  • C#封装DBHelper类
    DBHelper从字面上理解为“数据库帮助类”,由于持久层需要与数据库进行交互,因此每次交互的时候都会重复去加载驱动、填写数据库连接信息、建立(获取)数据库连...
    99+
    2022-11-13
  • python-mysql数据库操作封装
    前言:最近在学python,学到有关数据库的操作之时,想着把数据库的配置抽离出来,下面把代码贴出来~ db_config.py class mysql_config(): def get_config(self, n...
    99+
    2023-01-31
    操作 数据库 python
  • python自动化之pymysql库连接mysql数据库封装成类
    import pymysqlif __name__ == ‘__main__‘:host = "被访问数据库的ip地址或者域名"port = 端口号user = "连接数据库的用户名"password = "连接数据库的密码"sql = "...
    99+
    2014-08-04
    python自动化之pymysql库连接mysql数据库封装成类 数据库入门 数据库基础教程 数据库 mysql
  • python中的类怎么定义与封装
    在Python中,可以使用关键字`class`来定义一个类。类是一种抽象的数据类型,可用于封装数据和方法。下面是一个简单的类的定义与...
    99+
    2023-10-11
    python
  • 怎么在python中封装一个pyqt5类
    怎么在python中封装一个pyqt5类?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、WEB前端开...
    99+
    2023-06-14
  • python自己封装的类如何调用
    要调用自己封装的类,需要按照以下步骤进行操作:1. 在代码中导入自己封装的类。例如,如果你的类定义在一个名为`myclass.py`...
    99+
    2023-08-24
    python
  • Python操作mysql数据库(封装基
    新学Python,在这里分享操作mysql的全过程 1、安装MySQL-python-1.2.3.win-amd64-py2.7.exe,这是操作mysql数据库的python库,有32位和64位之分,看自机器下载 2、64位机器安装My...
    99+
    2023-01-31
    操作 数据库 Python
  • java如何封装类
    第一步我们首先需要了解java中的封装指的是什么,封装是一种将抽象性接口的实现细节都包装和隐藏起来的方法,它具有减少耦合,类内部结构可以修改,成员变量精准控制的优点,如下图所示: (...
    99+
    2014-05-30
    java教程 java
  • 封装JDBC工具类
    封装JDBC工具类 在实际JDBC的使用中,存在着大量的重复代码:例如连接数据库、关闭数据库等这些操作! 我们需要把传统的JDBC代码进行重构,抽取出通用的JDBC工具类!以后连接的任何数据库、释放资源都可以使用这个工具类 重用性...
    99+
    2017-12-18
    封装JDBC工具类 数据库入门 数据库基础教程
  • Python面向对象编程之类的封装
    目录1、封装的理解2、私有类属性、公开类属性、私有实例属性和公开实例属性2.1 公开类属性2.2 私有类属性2.3 公开实例属性2.4 私有实例属性2.5 私有属性不一定真的私有3、...
    99+
    2022-11-12
  • 如何封装一个python的pymysql操作类
    这篇“如何封装一个python的pymysql操作类”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“如何封装一个python的...
    99+
    2023-07-04
  • Python 操作MySql数据库(封装、优雅)
    Python 记录操作MySql数据库(封装)——优雅 前言封装代码进行测试结果展示 前言 学了pymysql第三方库(pip install pymysql)来操作MySql数据库后,浅记一下对MySql进行 《关于我的M...
    99+
    2023-08-24
    数据库 mysql python
  • java封装Mongodb3.2.1工具类
           由于最近项目要使用mongodb来处理一些日志,提前学习了一下mongodb的一些基本用法,大概写了一些常用的。     ...
    99+
    2022-10-18
  • 类的封装和包(JAVA)
    目录 封装 在同一个包中: 包 自定义包 在不同包中: 封装 所有的OOP语言都会有三个特征: 封装继承(点击可跳转)多态(点击可跳转) 本篇文章会为大家带来有关封装的知识。 在我们日常生活中可以看到电视就只有那么几个按键(开关...
    99+
    2023-09-01
    java 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作