memoryerror当我尝试将postgres结果查询转换为json时

2024-09-29 06:31:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将结果转换为postgres数据库的json,它可以工作!但是没有完成,它会触发一个错误

第984288行

 try:

        cur = conn.cursor()
        cur.execute("select * from daily")
        row_headers = [x[0] for x in cur.description]
        rows = cur.fetchall()
        json_data = []
        for result in rows:
            json_data.append(dict(zip(row_headers,result)))
        # rows = [dict((cur.description[i][0], value) \
        #           for i, value in enumerate(row)) for row in cur.fetchall()]
        print("the number of parts: ", cur.rowcount)
        conn.close()
    except (Exception, psycopg2.DatabaseError) as error:
        print(error)
    finally:
        if conn is not None:
            conn.close()

    return json.dumps(json_data)

调试:

enter image description here

错误:

查询结果的内存不足

127.0.0.1--[03/Aug/2020 02:12:18]“GET/pruebas HTTP/1.1”500-

处理来自('127.0.0.1',59545'的请求时发生异常 回溯(最近一次呼叫最后一次): 文件“C:\Users\iscca.virtualenvs\covid-uabc-ydkkgge3-\lib\site packages\werkzeug\debug\uem>init\uuu.py”,第304行,在debug\u应用程序中 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\flask\app.py”,第2464行,在call wsgi_应用程序中的文件“C:\Users\iscca.virtualenvs\covid-uabc-ydkkkge3-\lib\site packages\flask\app.py”,第2450行 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\flask\app.py”,第1867行,在句柄中 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\flask\u compat.py”,第39行,重新登录 增值 wsgi_应用程序中的文件“C:\Users\iscca.virtualenvs\covid-uabc-ydkkkge3-\lib\site packages\flask\app.py”,第2447行 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\flask\app.py”,第1952行,完整发送请求 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\flask\app.py”,第1821行,在句柄用户异常中 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\flask\u compat.py”,第39行,重新登录 增值 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\flask\app.py”,第1950行,完整发送请求 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\flask\app.py”,第1936行,在调度请求中 文件“C:\Users\iscca\PycharmProjects\covid uabc\main.py”,第114行,在pruebas中 cosa=Prueba() 文件“C:\Users\iscca\PycharmProjects\covid uabc\pruebas.py”,第14行,在init self.rows=self.enstar(conn) 文件“C:\Users\iscca\PycharmProjects\covid uabc\pruebas.py”,第38行,在登记表中 返回json.dumps(json_数据) UnboundLocalError:赋值前引用的局部变量“json_data”

在处理上述异常期间,发生了另一个异常:

回溯(最近一次呼叫最后一次): 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\serving.py”,第323行,在run\u wsgi中 文件“C:\Users\iscca.virtualenvs\covid-uabc-ydkkkge3-\lib\site packages\werkzeug\serving.py”,执行中第314行 对于iter应用程序中的数据: 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\uem>init\uu.py”,第344行,在debug\u应用程序中 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第344行,完整呈现 “摘要”:自我呈现摘要(包括标题=假), 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第314行,呈现摘要 frames=[group.render(mark_lib=mark_lib)表示self.groups中的组] 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第314行,在 frames=[group.render(mark_lib=mark_lib)表示self.groups中的组] 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第435行,在渲染中 frame.render(mark_lib=mark_lib), 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第485行,在渲染中 “行”:self.render_line_context(), 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第504行,在渲染行上下文中 before、current、after=self.get_context_lines() 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第611行,在get\U上下文\u行中 before=self.sourcelines[self.lineno-context-1:self.lineno-1] 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\utils.py“,第90行,在get 值=自函数(obj) 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第608行,在sourcelines中 返回source.decode(字符集,“replace”).splitlines() 记忆者

在处理上述异常期间,发生了另一个异常:

回溯(最近一次呼叫最后一次): 文件“C:\Users\iscca\AppData\Local\Programs\Python\Python37-32\Lib\socketserver.py”,第650行,进程中\u请求\u线程 自我完成请求(请求、客户地址) 文件“C:\Users\iscca\AppData\Local\Programs\Python\Python37-32\Lib\socketserver.py”,第360行,在finish\u请求中 self.RequestHandlerClass(请求、客户端地址、self) 文件“C:\Users\iscca\AppData\Local\Programs\Python\Python37-32\Lib\socketserver.py”,第720行,位于init self.handle() 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\serving.py”,第345行,在句柄中 文件“C:\Users\iscca\AppData\Local\Programs\Python\Python37-32\Lib\http\server.py”,第426行,位于句柄中 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\serving.py”,第379行,在handle\u one\u请求中 返回self.run_wsgi() 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\serving.py”,第340行,在run\u wsgi中 self.server.log(“错误”,“请求时出错:\n%s”,回溯.明文) 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\utils.py”,第90行,在get 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第353行,纯文本 返回u“\n”.join([group.render\u text()用于self.groups中的组]) 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第353行,在 返回u“\n”.join([group.render\u text()用于self.groups中的组]) 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第446行,呈现文本 out.append(frame.render\u text()) 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第500行,呈现文本 自当前线带(), 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第618行,当前\u行 返回self.sourcelines[self.lineno-1] 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\utils.py”,第90行,在get 值=自函数(obj) 文件“C:\Users\iscca.virtualenvs\covid-uabc-YDkkGE3-\lib\site packages\werkzeug\debug\tbtools.py”,第579行,位于源代码行中 source=f.read() 记忆者


Tags: 文件pydebugselflibpackagessitevirtualenvs