집 >데이터 베이스 >MySQL 튜토리얼 >Python의 MySQL 저장 프로시저에서 결과 세트를 검색하는 방법은 무엇입니까?
Python을 사용하여 MySQL 저장 프로시저에서 결과 검색
Python을 통해 MySQL 저장 프로시저를 성공적으로 호출했지만 시도할 때 오류가 발생함 cursor.fetchall()을 사용하여 결과를 가져옵니다. 이 오류 메시지 "mysql.connector.errors.InterfaceError: No result set to fetch from"은 예상 결과 세트를 사용할 수 없음을 나타냅니다.
이 문제를 해결하려면 커서.stored_results() 사용을 고려하세요. 대신 방법. 이 메서드는 저장 프로시저에서 사용 가능한 결과 집합을 검색합니다. 이 경우 변수에 할당된 후 반복하여 원하는 데이터를 얻을 수 있는 결과 집합이 하나만 있어야 합니다.
다음은cursor.stored_results( ):
import mysql.connector cnx = mysql.connector.connect(user='root', host='127.0.0.1', database='mytestdb') cnx._open_connection() cursor = cnx.cursor() cursor.callproc("getperson", [1]) for result in cursor.stored_results(): people = result.fetchall() for person in people: print(person) cnx.close()
이 접근 방식은 저장 프로시저에서 결과를 성공적으로 검색하고 이를 반복하여 사람의 세부 정보를 표시합니다. 단일 쿼리만 실행하므로 cmd_query_iter 및 다중 인수는 필요하지 않습니다.
위 내용은 Python의 MySQL 저장 프로시저에서 결과 세트를 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!