2010-08-10 4 views
1

J'ai deux options différentes utilisant la base de données dans une application de bureau. Je préfère la base de données basée sur le service même localement. Mais dois-je utiliser la base de données locale à la place?Quelle base de données utiliser localement dans une application de bureau?

+0

dépend de quel système de base de données peut utiliser. SQL Server ou SQL Server CE. –

+0

J'ai Visual Studio 2010 pro, et MS SQL Server 2008. –

Répondre

3

Dépend d'autres exigences.

Basé sur serveur: MS-SQL Express. Est essentiellement le même moteur que les éditions plus grandes, cela évoluera bien quand vous en avez besoin plus grand. Notez qu'il existe un mode de fichier joint qui signifie que vous n'avez pas besoin d'enregistrer de façon permanente chaque base de données avec le serveur.

Local: SQL Compact Editon, solution intégrée de fichiers. Beaucoup plus facile à déployer mais pas 100% compatible. Fondamentalement, une solution mono-utilisateur (mais qui va changer avec v4)

+0

Merci de l'avoir clarifié. Je m'attendrais à quelque chose comme ça, mais je n'ai jamais vraiment su exactement les avantages et les inconvénients des différentes bases de données. BR - –

3

dépend généralement où il sera déployé. Si vous le déployez dans un environnement que vous contrôlez, j'utilise généralement un service basé sur le service, mais si vous devez l'envoyer aux clients, cela dépend du client. Les clients avec du personnel technique voudront probablement le service basé sur, mais si c'est un petit client sans personnel technique/connaissances qui veulent juste cliquer et exécuter, alors une base de données locale pourrait être la meilleure.

+0

C'est important. Parfois, on veut envoyer l'application à un client non-tech montrant simplement des capacités. Votre approche sur la réponse donne mon point de vue que je n'avais pas! BR - –

3

Pour une application de bureau, vous devriez envisager d'utiliser Sqlite, avec la bibliothèque de wrapper C# here, je l'ai utilisé dans un projet et ça marche très bien , facile à utiliser, rapide et tout va dans un seul fichier. Cependant, il n'est pas conçu pour un environnement à plusieurs utilisateurs, donc vous ne voudriez pas l'utiliser comme base de données pour un backend de service Web par exemple.

J'utilise aussi NHibernate et NHibernate.Linq d'interagir avec les données, vous pouvez obtenir une version de deux qui sont compatibles ici: http://www.dennisdoomen.net/2009/07/nhibernate-210-ga-with-linq-and-fluent.html

+0

Je connais sqlite dans les environnements Android et Python, mais je ne savais pas que cela fonctionnait aussi sur .NET. Merci d'avoir rendu cela clair pour moi. BR - –

+0

J'utilise aussi SQLITE db dans mon application C# windows et ça fonctionne très bien. –

2

Vous devez jeter un oeil à Firebird

+0

Merci! Je vérifierai! BR –

Questions connexes