pymysql 模块 ---- 数据交互

  • 建立连接
  • 新建游标
  • 编写SQL
  • 执行SQL
  • 获取执行结果
  • 关闭游标
  • 关闭连接
#encoding=utf8
import pymysql
from pymysql.cursors import DictCursorclass DBHandler:
    # 设置游标,使查询结果以字典的形式返回  cursorclass=DictCursor
    def __init__(self, host, port, user, password, database, charset='utf8', cursorclass=DictCursor, **kwargs):
        # 1. 建立连接
        self.conn = pymysql.connect(host=host, port=port, user=user, password=password, database=database, charset=charset, cursorclass=cursorclass, **kwargs)
        # 2. 游标
        self.cursor = self.conn.cursor()
    def query(self, sql, args=None, one=True):
        # 3. 发送请求
        self.cursor.execute(sql, args)
        # 数据库中有数据发生变化时,需要同步
        # TODO:提交事务,相当于拍照
        self.conn.commit()
        # 4. 获取游标结果
        if one:
            return self.cursor.fetchone()
        else:
            return self.cursor.fetchall()

    def close(self):
        self.cursor.close()
        self.conn.close()


if __name__ == '__main__':
    host = ''
    port = ''
    user = ''
    password = ''
    database = ''

    db = DBHandler(host, port, user, password, database)
    sql = 'select * from invest LIMIT 1;'
    print(db.query(sql))

 

posted @ 2021-01-15 15:37  小幸运||  阅读(113)  评论(0)    收藏  举报