在Python中调用存储过程通常涉及以下步骤:
数据库连接:
使用Python的数据库连接库(如`pymysql`或`pyodbc`)连接到数据库。
创建游标:
调用存储过程:
使用游标的`callproc`方法调用存储过程,传递必要的参数。
处理结果:
如果存储过程返回结果集,使用`fetchall`或`fetchone`等方法获取结果。
关闭连接:
执行完毕后关闭数据库连接。
import pymysql
连接数据库
conn = pymysql.connect(
host='127.0.0.1',
user='root',
password='root',
database='fruitdb',
charset='utf8'
)
创建游标
cur = conn.cursor()
调用存储过程,假设存储过程名为'searchAllFruit'
cur.callproc('searchAllFruit')
提交事务
conn.commit()
获取存储过程返回的结果集
result = cur.fetchall()
打印结果
for row in result:
name = row
price = row
count = row
total = row
print('{} {} {} {}'.format(name, price, count, total))
关闭游标和连接
cur.close()
conn.close()
请注意,当使用`callproc`方法时,存储过程名需要用引号括起来,参数应以元组的形式传递。
如果你使用的是其他数据库(如SQL Server),连接和调用存储过程的方式可能略有不同,但基本步骤类似。