Fonctionnalité de base de données avec l'application WPF: SQLite, SQL CE, autre? [fermé]

StackOverflow https://stackoverflow.com/questions/67127

  •  09-06-2019
  •  | 
  •  

Question

Je souhaite étendre une application WPF avec des fonctionnalités de base de données. Quel moteur de base de données suggéreriez-vous et pourquoi? SQLite, SQL CE, autre?

Était-ce utile?

La solution

En fonction de l'utilisation des applications, je recommanderais d'utiliser SQL Lite , car il ne nécessite l'installation d'aucun autre logiciel (SQL CE ou Express, etc., nécessite généralement une installation séparée).

Liste des principaux avantages de SQL Lite depuis le lien fournisseur situé au bas de cet article:

  

SQLite est une petite bibliothèque C qui   met en œuvre un autonome,   SQL incorporable, zéro configuration   moteur de base de données. Les caractéristiques incluent:

     
      
  • Zéro-configuration - pas de configuration ou   administration nécessaire.
  •   
  • Implémente la majeure partie de SQL92. (Caractéristiques   non pris en charge)
  •   
  • Une base de données complète est stockée dans un   fichier de disque unique.
  •   
  • Les fichiers de base de données peuvent être librement partagés   entre machines avec octet différent   commandes.
  •   
  • Prend en charge les bases de données jusqu'à 2 téraoctets   (2 ^ 41 octets) en taille.
  •   
  • Faible empreinte de code: moins de 30 Ko   lignes de code C, moins de 250 Ko   espace de code (gcc sur i486)
  •   
  • Plus rapide qu'un client / serveur populaire   moteurs de base de données pour les plus courants   opérations.
  •   
  • API simple et facile à utiliser.
  •   
  • Autonome: pas d’extérieur   dépendances.
  •   
  • Les sources sont dans le domaine public.   Utilisez pour n'importe quel but.
  •   

Puisque vous utilisez WPF, je peux supposer que vous utilisez au moins .NET 3.0. Je recommanderais ensuite d’utiliser .NET 3.5 SP1 (même taille que .NET 3.5, mais avec une série d’améliorations des performances) comprenant LINQ.

Lorsque vous utilisez SQLite, vous voudriez utiliser le fournisseur SQLite suivant, qui devrait fournir un support LINQ: Un ADO open source Fournisseur .NET pour le moteur de base de données SQLite

Autres conseils

J'ai utilisé SQL Compact Edition avec mon application WPF et je suis satisfait de ma décision. Tout fonctionne parfaitement (puisque WPF et SQLCE sont tous deux MS, ils jouent bien ensemble) et l’installation du moteur d’exécution est suffisamment petite et souple pour répondre à mes besoins. J'ai créé et modifié la base de données via Visual Studio.

Juste pour émettre un avis différent, nous utilisons SQL Compact Edition depuis un an et nous en sommes généralement satisfaits. La configuration est un gâteau et il se comporte très semblable à une base de données MS SQL normale. Il manque des éléments, tels que les déclencheurs et les procédures stockées, mais SQL 3.5 CE contient pratiquement tout ce dont nous aurions besoin. Il faut environ 2 Mo de fichiers .dll à installer. Il offre un cryptage de base de données, des transactions et supporte le concepteur de jeu de données typé de VS (3.1 posait quelques problèmes, mais CE 3.5 est génial!).

Les DLL SQL CE peuvent être intégrées à votre propre application et ne nécessitent pas d'installation séparée. Mais MS fournit un paquet d’installation par défaut, si vous ne voulez pas en savoir plus sur la configuration, etc., etc.

Plus précisément, SQL CE prend en charge le déploiement privé.

SQLite est un très bon produit, même si certaines fonctionnalités de PostgreSQL me manquent. Il existe d’autres bases de données, notamment non SQL, que vous pouvez envisager, telles que Berkeley DB.

/ Allan

Je conviens que SQLite est la solution. Subsonic 2.1 inclut désormais également le support SQLite.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top