sqlalchemy 呼叫stored procedure - jenhaoyang/backend_blog GitHub Wiki
import pandas as pd
from sqlalchemy import create_engine
# set your parameters for the database
user = "user"
password = "password"
host = "abc.efg.hij.rds.amazonaws.com"
port = 3306
schema = "db_schema"
# Connect to the database
conn_str = 'mysql+pymysql://{0}:{1}@{2}:{3}/{4}?charset=utf8mb4'.format(
user, password, host, port, schema)
db = create_engine(conn_str, encoding='utf8')
connection = db.raw_connection()
# define parameters to be passed in and out
parameterIn = 1
parameterOut = "@parameterOut"
try:
cursor = connection.cursor()
cursor.callproc("storedProcedure", [parameterIn, parameterOut])
# fetch result parameters
results = list(cursor.fetchall())
cursor.close()
connection.commit()
finally:
connection.close()
參考:
https://justinmatters.co.uk/wp/using-sqlalchemy-to-run-sql-procedures/