SQLite peut-il prendre en charge plusieurs utilisateurs?

J'essaie de développer une application Windows avec plusieurs utilisateurs accédant à la même base de données en même temps. SQLite peut-il prendre en charge plusieurs accès en même temps? SQLite est-il stable à cet égard? Qu'est-ce qui rend SQLite meilleur ou pire que MS SQL CE?

Merci.

36
demandé sur Nathan Smith 2011-02-24 11:19:20

3 réponses

Oui SQLite peut prendre en charge plusieurs utilisateurs à la fois. Il verrouille cependant toute la base de données lors de l'écriture, donc si vous avez beaucoup d'Écritures simultanées, ce n'est pas la base de données que vous voulez (généralement le temps que la base de données est verrouillée est de quelques millisecondes - donc pour la plupart des utilisations cela n'a pas d'importance). Mais il est très bien testé et très stable (et largement) donc vous pouvez lui faire confiance.

Vous pouvez lire ce court document pour savoir quand utiliser SQLite et non: http://www.sqlite.org/whentouse.html

48
répondu Anders Zommarin 2011-02-24 08:27:00

Si les Écritures simultanées sont un problème, vous pouvez regarder Berkeley DB . L'API SQL est complètement compatible SQLite. En fait, il intègre L'exécuteur SQLite en haut du moteur de stockage de Berkeley DB, quiprend en charge plusieurs opérations d'écriture simultanées.

8
répondu dsegleau 2011-02-25 07:26:06

Oui.
À partir de paragraphe n ° 5 dans SQLite FAQ:

Plusieurs processus peuvent avoir la même base de données en même temps. Plusieurs processus peuvent effectuer une sélection en même temps. Mais un seul processus peut apporter des modifications à la base de données à tout moment dans le temps, cependant.

8
répondu Voooza 2014-03-22 02:09:28