You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用json.dumps将MySQL导出数据输出为仅含单个对象的JSON记录

解决方案

问题根源:你当前的代码逻辑是每遍历一行MySQL数据就新建一个独立的OrderedDict对象,将单个键值对存入后就追加到json_data数组,最终数组里自然就是多个单键的JSON对象。

修改方案

把OrderedDict的初始化移到遍历数据库行的循环外部,所有键值对都存入同一个字典对象,遍历完成后再把这个字典追加到数组里即可。

修改后的代码示例:

import collections
import json

# 字典初始化放在循环外,全局只保留一个OrderedDict存储所有参数
d = collections.OrderedDict()
# 此处替换为你实际遍历MySQL查询结果的循环逻辑,比如 for i in cursor.fetchall():
for i in 查询结果集合:
    d[i["parameter_name"]] = i["parameter_value"]
# 遍历完成后,把完整的字典放到数组中
json_data = [d]
result_json = json.dumps(json_data)

补充说明

  • 如果你使用的是Python 3.7及以上版本,原生dict已经默认支持插入顺序保留,不需要额外导入collections.OrderedDict,直接用d = {}即可,代码更简洁。
  • 如果后续需要扩展支持多组参数导出,只需要在外层增加对应分组的循环,每组参数初始化一个字典追加到数组即可。

内容的提问来源于stack exchange,提问作者Faisal Niazi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 01:54:03