집 >데이터 베이스 >MySQL 튜토리얼 >`fetchone()`으로 인해 Python의 MySQL 커넥터에서 \'읽지 않은 결과가 발견됨\'이 발생하는 이유는 무엇이며 버퍼링된 커서가 이 문제를 어떻게 해결할 수 있습니까?
Python MySQL 커넥터: fetchone을 사용할 때 읽지 않은 결과가 발견되었습니다.
이 질문은 fetchone을 사용하여 MySQL 데이터베이스에 JSON 데이터를 삽입하는 동안 발생하는 문제와 관련이 있습니다. Python MySQL 커넥터. 더 높은 수준의 세부 정보를 삽입하고 출발지 및 목적지 좌표와 time_stamp를 기준으로 낮은 수준의 정보를 상위 정보와 연결하려고 시도하면 "읽지 않은 결과가 발견되었습니다."라는 오류와 함께 코드가 실패합니다.
검색에 사용되는 쿼리 각 좌표 세트와 타임스탬프의 고유 구간 번호는 다음과 같습니다.
query = ('SELECT leg_no FROM leg_data WHERE travel_mode = %s AND Orig_lat = %s AND Orig_lng = %s AND Dest_lat = %s AND Dest_lng = %s AND time_stamp = %s')
처음에는 읽지 않은 항목을 삭제하려고 시도했습니다. 결과:
cursor.execute(query,(leg_travel_mode, leg_Orig_lat, leg_Orig_lng, leg_Dest_lat, leg_Dest_lng)) leg_no = cursor.fetchone()[0] try: cursor.fetchall() except mysql.connector.errors.InterfaceError as ie: if ie.msg == 'No result set to fetch from.': pass else: raise cursor.execute(query,(leg_travel_mode, leg_Orig_lat, leg_Orig_lng, leg_Dest_lat, leg_Dest_lng, time_stamp))
그러나 오류는 계속 발생했습니다.
추가 조사 결과 버퍼링된 커서를 지정하는 데 해결책이 있다는 사실이 밝혀졌습니다. 커서 초기화 줄에 buffered=True를 추가하면 문제가 해결되었습니다.
cursor = cnx.cursor(buffered=True)
이렇게 하면 모든 행을 백그라운드에서 가져와 오류 발생을 방지할 수 있습니다.
위 내용은 `fetchone()`으로 인해 Python의 MySQL 커넥터에서 \'읽지 않은 결과가 발견됨\'이 발생하는 이유는 무엇이며 버퍼링된 커서가 이 문제를 어떻게 해결할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!