zoukankan      html  css  js  c++  java
  • 数据库封装函数

    # 数据库/表说明
    import pymysql
    import redis
    from DBUtils.PooledDB import PooledDB
    from elasticsearch import Elasticsearch
    
    pool = redis.ConnectionPool(host='xxx.xx.xxx.xxx', port=3306)
    redis_con = redis.Redis(connection_pool=pool)
    es_con = Elasticsearch([{'host': 'xxx.xx.xxx.xxx', 'port': 9200}])
    con_mysql = PooledDB(pymysql, 10, host='xxx.xx.xxx.xxx',
                         port=3306,
                         user='root',
                         passwd='123456',
                         db='xxxx',
                         charset='utf8')
    
    
    def mysql_func(sql_str, *args):
        """
        :param sql_str: sql语句
        :param args: sql的参数
        :return:
        """
        cursor_connect = con_mysql.connection()
        cursor = cursor_connect.cursor()
        if args:
    
            cursor.execute(sql_str, args)
        else:
            cursor.execute(sql_str)
        data = cursor.fetchall()
        # 关闭游标和数据库的连接
        cursor.close()
        cursor_connect.commit()
        cursor_connect.close()
        return data
    
    
    def redis_set_func(key_data, dict_data):
        """
        插入数据到redis
        :param key_data:  哈希的key
        :param dict_data: 字典格式,哈希的字段和值
        :return: 插入后的状态
        """
        # 插入数据到redis
        return_status = redis_con.hmset(key_data, dict_data)
        return return_status
    
    
    def redis_get_func(hs_key):
        """
        读取redis数据,获取哈希的数据
        :param hs_key: 哈希的key
        :return:
        """
        return_data = redis_con.hgetall(hs_key)
    
        return return_data
    
    
    def redis_delete_func(hs_key, *args):
        """
    
        :param hs_key: 哈希的key
        :param args: 配置参数
        :return: 返回状态
        """
        return_status = redis_con.hdel(hs_key, *args)
        return return_status
    
    
    if __name__ == '__main__':
        sql_str = "desc order_list"
        print(mysql_func(sql_str))
    
    
    
  • 相关阅读:
    Unity NGUI 3.0.4版本 制作网络版斗地主
    unity3D与网页的交互---做项目的一点总结
    Cross-platform Tools
    Win7下Qt5的安装及使用
    VS Installer教程
    C++ & MFC
    论文模板的定制
    批处理文件
    MFC六大关键技术
    C/C++常用预处理指令
  • 原文地址:https://www.cnblogs.com/geoffreygao/p/13529797.html
Copyright © 2011-2022 走看看