在 Python 中调用 MySQL 存储过程的方法

2023-04-05 00:00:00 调用 方法 存储过程

在 Python 中调用 MySQL 存储过程的方法如下:

1、 安装 MySQL Python 驱动程序,例如使用 PyMySQL 驱动程序:

pip install PyMySQL

2、通过 PyMySQL 连接到 MySQL 数据库:

import pymysql
# 连接到 MySQL 数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='xxxx', database='test')

3、创建 cursor 对象并执行存储过程:

# 创建 cursor 对象
cursor = conn.cursor()
# 执行存储过程
cursor.callproc('存储过程名称', ('参数1', '参数2', ...))
# 提交事务
conn.commit()
# 关闭 cursor 对象和数据库连接
cursor.close()
conn.close()

完整的示例代码如下:

import pymysql
# 连接到 MySQL 数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='xxxx', database='test')
# 创建 cursor 对象
cursor = conn.cursor()
# 创建存储过程
create_proc_sql = '''
    CREATE PROCEDURE test_proc(IN param1 varchar(50), IN param2 varchar(50), OUT result varchar(50))
    BEGIN
        set result = CONCAT(param1, ' ', param2);
    END
'''
cursor.execute(create_proc_sql)
# 调用存储过程
params = ('pidancode.com', '皮蛋编程', '')
cursor.callproc('test_proc', params)
result = cursor.fetchone()[2]
print(result)
# 删除存储过程
drop_proc_sql = '''
    DROP PROCEDURE IF EXISTS test_proc
'''
cursor.execute(drop_proc_sql)
# 提交事务
conn.commit()
# 关闭 cursor 对象和数据库连接
cursor.close()
conn.close()

相关文章