python操作MySQL数据库D23

本文介绍了如何在Python中通过pymysql库连接到MySQL数据库,使用DictCursor优化查询结果,并创建了一个MysqlHandler类进行数据库操作的封装,以提高代码可重用性。
摘要由CSDN通过智能技术生成
"""从mysql读取数据"""
import pymysql
from pymysql.cursors import DictCursor
# 建立连接
conn = pymysql.connect(
    host="8.129.91.152",
    port=3306,
    user="future",
    password="123456",
    charset="utf8",
    cursorclass=DictCursor
)
print(conn)

# 初始化游标
cursor = conn.cursor()
print(cursor)
# 执行sql语句
cursor.execute("SELECT * FROM futureloan.member LIMIT 10;")

# 得到查询数据
members = cursor.fetchall()
print(members)

# # 得到一条记录
# member = cursor.fetchone()
# print(member)

# 游标对象关闭
cursor.close()
# 连接对象关闭
conn.close()

# 游标和我们操作文件光标
# TODO:一个游标对象最好只获取一次,获取多次容易出问题

python连接MySQL数据库及查询数据封装: 

import pymysql
from pymysql.cursors import DictCursor


class MysqlHandler():
    def __init__(
            self,
            host=None,
            port=3306,
            user=None,
            password=None,
            charset="utf-8",
            cursorclass=DictCursor
    ):
        self.conn = pymysql.connect(
            host=host,
            port=port,
            user=user,
            password=password,
            charset=charset,
            cursorclass=cursorclass
        )
        self.cursor = self.conn.cursor()

    def query(self, sql, one=True):
        self.conn.commit()
        self.cursor.execute(sql)
        if one:
            return self.cursor.fetchone()
        return self.cursor.fetchall()

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


if __name__ == '__main__':
    db = MysqlHandler(
        host="10.10.4.230",
        port=3311,
        user="root",
        password="ADWA6@dgjftd",
        charset='utf8',
        cursorclass=DictCursor
    )
    DATA = db.query("SELECT * FROM brigade.bri_train_travel LIMIT 10;")
    print(DATA)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值