2015-09-23 43 views
0

我正在嘗試使用名稱創建事務。稍後可能會回滾。pymssql使用名稱創建事務

pid = os.getpid() 
cursor.execute("BEGIN TRAN trans{0}".format(pid)) 
cursor.execute("ROLLBACK TRAN trans{0}".format(pid)) 

當我寫的代碼像上面,它提高了以下錯誤:

pymssql.OperationalError: (6401, 'Cannot roll back trans5713. 
No transaction or savepoint of that name was found.DB-Lib error 
message 20018, severity 16:\nGeneral SQL Server error: 
Check messages from the SQL Server\n') 

但是,當我刪除名稱部分tran{0},它不會引發任何錯誤。

  1. 我應該如何在pymssql中創建一個事務。我明白,當我建立聯繫時,它會處於交易狀態。但是,我希望交易被命名!
+0

你試過設置connection.autocommit()爲False? – frlan

+0

默認爲false – Surya

+0

是的,我在文檔中看到過它。由於你的例子很安靜,我想確保它真的是這樣。 – frlan

回答