阅读量:0
在Python中调用SQL存储过程的方法有以下几种:
- 使用SQLAlchemy库:SQLAlchemy是一个Python SQL工具包和ORM框架,它可以与多种数据库进行交互。通过SQLAlchemy,可以使用session.execute()方法执行存储过程。
from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker engine = create_engine('mysql://user:password@localhost/dbname') Session = sessionmaker(bind=engine) session = Session() result = session.execute("CALL stored_procedure_name()")
- 使用pyodbc库:pyodbc是一个Python的ODBC数据库接口库,通过它可以连接到各种数据库。可以使用pyodbc库中的execute()方法执行存储过程。
import pyodbc conn = pyodbc.connect('DSN=DataSourceName;UID=user;PWD=password') cursor = conn.cursor() cursor.execute("{CALL stored_procedure_name()}") conn.commit() rows = cursor.fetchall()
- 使用pymysql库:pymysql是一个Python对MySQL数据库进行操作的库,可以使用它执行存储过程。
import pymysql conn = pymysql.connect(host='localhost', user='user', password='password', db='dbname') cursor = conn.cursor() cursor.callproc('stored_procedure_name', args=()) conn.commit() result = cursor.fetchall()