您的位置:首页 > 编程语言 > Python开发

python中使用上下文管理器对数据库进行封装

2018-03-22 17:29 344 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 http://mp.blog.csdn.net/postedit/79656961
1、不用上下文管理器对数据库进行操作
from pymysql import  *
def option_db():
    # 1. 连接数据
    # 创建Connection连接
    conn = connect(host='localhost', port=3306, database='jing_dong', user='root', password='mysql', charset='utf8')
    # 获得Cursor对象
    cs1 = conn.cursor()
    # 2. 执行sql语句
    cs1.execute(""" select * from goods_brands; """);
    content = cs1.fetchall()
    # 3. 关闭
    cs1.close()

    conn.close()
    print(content)

option_db()
2、使用上下文管理器对数据库进行操作
from pymysql import  *

class DB(object):
    def __init__(self,databasename,password):
        # 1. 连接数据
        # 创建Connection连接
 self.conn = connect(host='localhost', port=3306, database=str(databasename), user='root', password=str(password), charset='utf8')
        # 获得Cursor对象
        self.cs1 = self.conn.cursor()
    def __enter__(self):
        return  self.cs1;

    def __exit__(self, exc_type, exc_val, exc_tb):
        self.cs1.close()
        self.conn.close()

with DB("jing_dong","mysql") as db:
    db.execute("select * from goods_brands; ")
    content = db.fetchall()

print(content)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息