亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python MySQL callproc調用數據庫存儲過程

發布時間:2020-09-23 14:59:30 來源:億速云 閱讀:227 作者:Leah 欄目:編程語言

Python MySQL callproc調用數據庫存儲過程?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

MySQL數據庫模塊為游標對象提供了一個非標準的 callproc(self, procname, args=()) 方法,該方法用于調用數據庫存儲過程。

callproc方法的procname參數代表存儲過程的名字,而 args 參數則用于為存儲過程傳入參數。

下面的 SQL 腳本可以在 MySQL 數據庫中創建一個簡單的存儲過程。打開 MySQL 的命令行客戶端,連接 python 數據庫之后,輸入如下 SQL 腳本來創建存儲過程:

delimiter //
create procedure add pro(a int, b int, out sum int)
begin
set sum = a + b;
end;
//

下面程序示范了使用 MySQL 數據庫模塊來調用存儲過程:

# 導入訪問MySQL的模塊
import mysql.connector

# ①、連接數據庫
conn = conn = mysql.connector.connect(user='root', password='32147',
    host='localhost', port='3306',
    database='python', use_unicode=True)
# ②、獲取游標
c = conn.cursor()
# ③、調用callproc()方法執行存儲過程
# 雖然add_pro存儲過程需要3個參數,但最后一個參數是傳出參數,
# 因此程序不會用它的值
result_args = c.callproc('add_pro', (5, 6, 0))
# 返回的result_args既包含了傳入參數的值,也包含了傳出參數的值
print(result_args)
# 如果只想訪問傳出參數的值,可直接訪問result_args的第3個元素,如下代碼
print(result_args[2])
# ④、關閉游標
c.close()
# ⑤、關閉連接
conn.close()

上面程序中,第 13 行代碼就是調用存儲過程的關鍵代碼。使用 MySQL 數據庫模塊調用存儲過程非常簡單,存儲過程需要幾個參數,程序通過 callproc() 方法調用存儲過程時就傳入一個包含幾個元素的元組;對于存儲過程的傳入參數,該參數對應的元組元素負責為傳入參數傳值;對于存儲過程的傳出參數,該參數對應的元組元素隨便定義即可。

運行上面的程序,可以看到如下輸出結果:

(5, 6, 11)
11

從上面的輸出結果來看,當程序使用 Python 調用存儲過程后,程序會返回傳入參數和傳出參數組成的元組,如第一行輸出結果所示。如果程序只需要獲取傳出參數的值,則通過返回的結果元組取出對應的值即可。

關于Python MySQL callproc調用數據庫存儲過程問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

襄汾县| 潼南县| 新龙县| 双牌县| 平谷区| 惠安县| 延寿县| 盱眙县| 安远县| 文水县| 华池县| 永顺县| 尼勒克县| 柳江县| 辽宁省| 乌拉特前旗| 农安县| 东方市| 五大连池市| 海淀区| 广丰县| 沐川县| 霍城县| 秦皇岛市| 漠河县| 昌邑市| 平安县| 依兰县| 集贤县| 屯留县| 仲巴县| 油尖旺区| 辽阳市| 盖州市| 湾仔区| 剑河县| 新兴县| 南阳市| 突泉县| 天水市| 青川县|