ホームページ >データベース >mysql チュートリアル >Python で MySQL コネクタの「未読の結果が見つかりました」エラーを解決するにはどうすればよいですか?

Python で MySQL コネクタの「未読の結果が見つかりました」エラーを解決するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-29 04:32:09775ブラウズ

How to Resolve the MySQL Connector

MySQL コネクタ エラー: Python で「未読の結果が見つかりました」

Python コネクタを使用して MySQL データベースを操作する場合、「未読の結果が見つかりました」というエラーが発生する可能性があります。 。」この問題は通常、バッファリングされていないカーソルに関連しており、単一の接続で複数のクエリを実行するときに発生する可能性があります。

提供されたコードでは、次の行が原因でエラーが発生している可能性があります:

leg_no = cursor.fetchone()[0]

この行はクエリ結果から 1 行のみをフェッチし、残りの結果は未処理のままにします。同じカーソルを使用する後続のクエリは、「未読の結果が見つかりました」エラーで失敗します。

解決策:

この問題を解決するには、カーソルのバッファ属性を設定します。作成時に True に設定します。これにより、その後のクエリを実行する前に、コネクタが結果セット全体をバッファリングするようになります。

cursor = cnx.cursor(buffered=True)

さらに、後続のクエリを実行する前に、 fetchall() を使用してカーソルから残りの結果をすべて明示的にフェッチすることをお勧めします。これは、次のコードで実行できます:

try:
    cursor.fetchall()
except mysql.connector.errors.InterfaceError as ie:
    if ie.msg == 'No result set to fetch from.':
        pass
    else:
        raise

カーソルをバッファリングに設定し、すべての結果を明示的にフェッチすることで、「未読の結果が見つかりました」エラーを回避できます。

以上がPython で MySQL コネクタの「未読の結果が見つかりました」エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。