1

SFTP サイトからローカル フォルダーにファイルをダウンロードし、ダウンロードしたファイルを使用してストアド プロシージャを実行する Python スクリプトがあります。最初の側面は問題なく動作します。しかし、ストアド プロシージャを実行すると、SQL サーバー上の他のテーブルがロックされ、「タイムアウトの期限が切れました」というエラーが返されます。手順は1時間半実行されています。

これは、誰かが疑問に思っている場合に備えて、ストアド プロシージャの実行に使用した構文です。

conn = pyodbc.connect('DRIVER={SQLServer};SERVER=localhost;DATABASE=Db;UID=myid;PWD=mypwd')
cursor = conn.cursor()

cursor.execute("""exec SP_Upsert_Y ?""",sfile)
cursor.commit()
4

1 に答える 1

1

autocommit=True私は同じ問題を抱えていましたが、接続文字列にパラメーターを追加して解決しました

于 2021-05-12T17:53:18.417 に答える