2011-09-14 86 views
0

當我開始一個sqlite3基地事務並插入一些東西。當然,它會有一個鎖和一個相應的日誌文件。同時,可能有另一個C程序運行一些sqlite編譯指示integrity_check,但不是在「交易」的。檢測sqlite3事務

I 想要在做任何事情之前檢測交易。但我沒有做到。有做已在sqlite3的源代碼的東西inTransaction,但不幸的是它在一個不透明的結構....

所以,請幫我T_T

回答

1

我不知道如果我理解你的問題,正確的我如果我錯了。你想知道數據庫是否被鎖定?

我在python中使用SQLite,所以也許在C中你可以做更復雜的事情。我認爲SQLite在鎖定時返回SQL_BUSY。您可以爲這種情況定義自己的處理程序。

退房this page,也許this one

如果您獲得SQL_BUSY,您可以嘗試執行操作並重試或執行任何您想要的操作。

+0

感謝您的回覆,但那不是我正在尋找的......我沒有正確解釋它,並且我已經將其重新編輯。 – alwinlin

+0

不客氣,也許[這裏](http://stackoverflow.com/questions/4153091/sqlite-check-reader-writer-lock)你可以找到更好的答案,但也與數據庫鎖定有關。 –