2010-03-16 66 views
1

我正在考慮使用SQLite作爲「作業隊列容器」,並想知道如何使用自定義C#(使用ADO.NET)來操作數據庫。作爲應用程序隊列的SQLite,獨佔行鎖?

如果這是SQL Server,我會設置一個可序列化的事務,以確保父行和子行在我完成之前完全是我的。我不確定SQLite如何工作,任何人都可以提供任何幫助?

或者,如果有任何其他現有的SQLite消息隊列的實現,我會很感激在這個方向的任何指針。

謝謝!

回答

1

你可以在SQLite中使用MS SQL的經驗嗎? sqlite有很好的包裝,所以類是相同的,但是從Sqlite開始(像SqliteConnection)。它有一些差異,但它們很容易處理。

那麼使用sqlite作爲隊列有什麼問題?在隊列中插入行,在出隊列表中選擇具有最大值的行然後刪除。

6

SQLite鎖定整個文件用於寫入操作。在事務內執行寫操作,並且在事務完成之前,其他任何人都無法觸及數據庫中的任何表。