반환 된 행에서 행 삽입을 실행하려고합니다. SQL Server에서 컴파일 된 sql을 직접 테스트했는데 쿼리가 올바르게 작동하고 올바르게 행을 반환합니다.sqlalchemy 및 pyodbc를 사용하여 MS SQL Server에서 반환 된 행을 가져 오는 중
문제는 쿼리에서 반환 된 행을 가져올 수 없습니다. 여기에 내 코드가 있고 Windows에서 pyodbc 드라이버를 사용하고 있습니다.
sql = """
INSERT INTO mytable (id, name)
OUTPUT Inserted.id, Inserted.name
VALUES (...)
"""
result = db.execute(sql).fetchall()
이
나는 오류 얻고있다 :ERROR: Failed to save events: (Error) ('HY010', '[HY010] [Microsoft][ODBC SQL Server Driver]Function sequence error (0) (SQLFetch)') None None
Traceback (most recent call last):
File "...\site-packages\sqlalchemy\engine\result.py", line 782, in fetchall
l = self.process_rows(self._fetchall_impl())
File "...\site-packages\sqlalchemy\engine\result.py", line 749, in _fetchall_impl
return self.cursor.fetchall()
pyodbc.Error: ('HY010', '[HY010] [Microsoft][ODBC SQL Server Driver]Function sequence error (0) (SQLFetch)')
어떤 생각을? 미리 감사드립니다!
sqlalchemy를 사용하지 않고 SQL Server Native Client 11.0 및 pyodbc 3.0.7을 사용하여 Windows x64에서 재현 할 수 없습니다. sqlalchemy가 혼합에서 제거되면 비슷한 동작을 보입니까? – Bryan