2010-03-16 51 views
1

我正在考虑使用SQLite作为“作业队列容器”,并想知道如何使用自定义C#(使用ADO.NET)来操作数据库。作为应用程序队列的SQLite,独占行锁?

如果这是SQL Server,我会设置一个可序列化的事务,以确保父行和子行在我完成之前完全是我的。我不确定SQLite如何工作,任何人都可以提供任何帮助?

或者,如果有任何其他现有的SQLite消息队列的实现,我会很感激在这个方向的任何指针。

谢谢!

回答

1

你可以在SQLite中使用MS SQL的经验吗? sqlite有很好的包装,所以类是相同的,但是从Sqlite开始(像SqliteConnection)。它有一些差异,但它们很容易处理。

那么使用sqlite作为队列有什么问题?在队列中插入行,在出队列表中选择具有最大值的行然后删除。

6

SQLite锁定整个文件用于写入操作。在事务内执行写操作,并且在事务完成之前,其他任何人都无法触及数据库中的任何表。