我目前拥有对存储在SQL Server数据库中的数据执行查询的代码,如下所示:
import pyodbc
conn = pyodbc.connect(
r'DRIVER={SQL Server};'
r'SERVER=SQL2SRVR;'
r'DATABASE=DBO732;'
r'Trusted_Connection=yes;'
)
sqlstr = '''
SELECT Company, Street_Address, City, State
FROM F556
WHERE [assume complicated criteria statement here]
'''
crsr = conn.cursor()
for row in crsr.execute(sqlstr):
print(row.Company, row.Street_Address, row.City, row.State)
我无法在线找到有关pyodbc是否可以(或默认情况下)在SQL Server上运行我的查询(作为直通查询),或者(如果pyodbc无法做到的话)是否还有另一种方法(也许是sqlalchemy或类似?)。有见识吗?
或者是否有直接从熊猫执行直通查询的方法?
如果使用熊猫和SQL Server,则应该已经创建了一个SQLAlchemy Engine
对象(通常命名为engine
)。要执行原始DML语句,您可以使用以下结构:
with engine.begin() as conn:
conn.execute("UPDATE table_name SET column_name ...")
print("table updated")