我認為這是一個Python MySQL錯誤,但我無法理解這種情況。內部錯誤:發現未讀結果
P粉193307465
P粉193307465 2023-09-10 22:20:52
0
1
359

這是我的 Flask API 程式碼

from flask import request
from flask_restful import Resource
from mysql.connector import Error
from flask_jwt_extended import jwt_required, get_jwt_identity

from mysql_connection import get_connection

class OrderListResource(Resource):

    # 내 주문내역 조회 API
    @jwt_required()
    def get(self):

        userId = get_jwt_identity()
        offset = request.args.get('offset')
        limit = request.args.get('limit')

         # 기본값
        if not offset:
            offset = 0
        if not limit:
            limit = 20

        try:
            connection = get_connection()
            # 주문한 시간이 늦은 순으로 정렬
            query = '''
                    select *
                    from orders
                    where userId = %s
                    order by createdAt desc;
                    limit '''+offset+''', '''+limit+''';
                    '''
            record = (userId, )
            cursor = connection.cursor(dictionary=True, buffered=True)
            cursor.execute(query, record)
            result_list = cursor.fetchall()

            for row in result_list:
                row['reservTime'] = row['reservTime'].isoformat()
                row['createdAt'] = row['createdAt'].isoformat()
            
            cursor.close()
            connection.close()
        
        except Error as e:
            print(e)
            cursor.close()
            connection.close()
            return {'error' : str(e)}, 500

        return {'result' : 'success',
                'items' : result_list,
                'count' : len(result_list)}, 200

我使用 AWS lambda 部署了它,並使用 Postman 進行了測試。 在本機狀態下運作正常,但伺服器出現「Internal Server Error」。 當地的 AWS lambda

因此我查看了 CloudWatch 日誌並收到以下錯誤訊息:

[ERROR] InternalError: Unread result found

奇怪的是,在我部署的所有 API 中,只有這個 API 給我帶來了錯誤。 Other APIs work fine both 當地的 and on the server. 所以我不知道問題出在哪裡。

我在cursor()中放入bufferd=True,這是搜尋「發現未讀結果」錯誤時的解決方案,但沒有效果。

P粉193307465
P粉193307465

全部回覆(1)
P粉982054449

我解決了這個問題!原因是;在查詢中使用了兩次。這是一個簡單的問題,但在本地狀態下運行正常,所以我找不到原因。對不起。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!