Python连接MySQL数据库按条件查询返回键值对格式

import mysql.connector
# MySQL数据库连接参数
config = {
    'user': '',
    'password': '',
    'host': '',
    'database': ''
}

def stock_info(request):
    try:
        code = request.GET.get('code')
        # 连接到MySQL数据库
        cnx = mysql.connector.connect(**config)
        # 创建cursor对象
        cursor = cnx.cursor()
        select_query = f"""SELECT * FROM stock_info WHERE code='{code}'"""
        # 执行SQL命令
        cursor.execute(select_query)
        # 获取查询结果
        results = cursor.fetchall()
        # 查询表中的列信息
        column_query = "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = '%s' AND TABLE_NAME = '%s';" % (config['database'], 'table_name')
        # 执行SQL命令
        cursor.execute(column_query)
        # 获取表头信息
        columns = cursor.fetchall()
        # 将查询结果转换为键值对格式
        results = common.results_to_json(columns, results)
        # 关闭cursor和cnx
        cursor.close()
        cnx.close()
        return common.res_ok(200, results, '')
    except mysql.connector.Error as err:
        print(err)

def results_to_json(columns, results):
    data = []
    keys = []
    for column in columns:
        keys.append(column[0])
    for row in results:
        key_value_pairs = {k: v for k, v in zip(keys, row)}
        data.append(key_value_pairs)
    return data

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值