首頁 >資料庫 >mysql教程 >如何在 Python 中從 MySQL 預存程序檢索結果?

如何在 Python 中從 MySQL 預存程序檢索結果?

Patricia Arquette
Patricia Arquette原創
2024-12-07 01:10:14671瀏覽

How to Retrieve Results from MySQL Stored Procedures in Python?

從Python 中的預存程序擷取結果

問題:

嘗試使用下列指令從MySQL 儲存程序擷取結果Python MySQL 連接器失敗並顯示錯誤「沒有要取得的結果集」來自。 」

預存程序:

CREATE PROCEDURE `mytestdb`.`getperson` (IN personid INT)
BEGIN
   select person.person_id,
          person.person_fname,
          person.person_mi,
          person.person_lname,
          person.persongender_id,
          person.personjob_id
     from person
    where person.person_id = personid;
END

Python 程式碼:

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])
people = cursor.fetchall()

for person in people:
    print(person)

cnx.close()

>MySQL連接器為下列物件指派多個結果集預存程序,即使傳回單一SELECT 語句結果也是如此。結果集中取得資料:

以上是如何在 Python 中從 MySQL 預存程序檢索結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn