我可以使用以下脚本从jupyter笔记本成功连接到SQL Server Management Studio:
from sqlalchemy import create_engine
import pyodbc
import csv
import time
import urllib
params = urllib.parse.quote_plus('''DRIVER={SQL Server Native Client 11.0};
SERVER=SV;
DATABASE=DB;
TRUSTED_CONNECTION=YES;''')
engine = create_engine("mssql+pyodbc:///?odbc_connect=%s" % params)
我设法执行了一些这样的SQL脚本:
engine.execute("delete from table_name_X")
但是,我无法执行存储过程。我从stored procedures with sqlAlchemy中看到的内容尝试了以下脚本。以下这些脚本的输出类似“ 0x173ed18e470处的sqlalchemy.engine.result.ResultProxy”,但是该过程实际上并未执行(什么也没有发生):
# test 1
engine.execute('stored_procedure_name')
# test 2
from sqlalchemy import func
from sqlalchemy.orm import sessionmaker
session = sessionmaker(bind=engine)()
session.execute(func.upper('stored_procedure_name'))
您能否给我正确的执行存储过程的方法?