क्या आपने परिणामों में से किसी एक को चुनने का प्रयास किया है?
for result in cursor.stored_results():
people = result.fetchall()
यह हो सकता है कि यह एकाधिक परिणामों के लिए आवंटित कर रहा हो, भले ही आपके पास केवल एक SELECT
हो एसएमटी मुझे पता है कि PHP की MySQLi संग्रहीत कार्यविधियाँ INOUT और OUT वैरिएबल रिटर्न की अनुमति देने के लिए ऐसा करती हैं (जो फिर से, आपके पास कोई नहीं है, लेकिन शायद यह वैसे भी आवंटित कर रहा है)।
मैं जो पूरा कोड इस्तेमाल कर रहा हूं (जो काम कर रहा है) है:
import mysql.connector
cnx = mysql.connector.connect(user='me',password='pw',host='localhost',database='mydb')
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()