python-51-MySQLdb查询返回dict格式

前言

在上一篇 python-49-pymysql使用 我们查询sql时没有返回dict格式,取值不是很方便

但是MySQLdb可以返回dict格式。看例子吧:

import MySQLdb


def send_sql(sql):
    # 建立连接
    conn = MySQLdb.connect(
        host='127.0.0.1',
        user='root',
        passwd='123456',
        db='demo',
        charset='utf8')

    # 建立游标时,加上"MySQLdb.cursors.DictCursor",让数据查询结果返回字典类型
    cur = conn.cursor(MySQLdb.cursors.DictCursor)

    # 对数据进行操作
    cur.execute(sql)        # 执行sql语句
    data = cur.fetchone()   # 读取数据
    # 关闭数据库连接
    cur.close()
    conn.close()
    return data


if __name__ == '__main__':
    sql = "select * from demo.JT_data as j where j.id=1;"  # 定义查询操作的sql语句
    result = send_sql(sql)
    print(result)
    print(result.get('id'))

返回数据:

{'id': '1', 'province_id': '110000', 'province': '北京', 'city_id': '110100', 'city': '北京市', 'county_id': '110101', 'county': '东城区'}
1

也是这两个方法:

cur.fetchone()   # 读取一条数据
cur.fetchall()   # 读取查询出的所有数据

注意:如果出现乱码,则需要将它加入连接参数中:charset='utf8'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

姚二龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值