Utiliseriez-vous Sql Server Compact pour une application de bureau? [fermé]

Est-il logique d'utiliser SQL Server Compact pour une application de bureau?

  • Combien de données peut-il gérer?
  • Est-il possible de l'utiliser avec plusieurs utilisateurs? Quelles sont les contraintes?
  • Que se passe-t-il lorsque des fichiers de base de données sont cassés? Est-il possible de récupérer par programmation ou serait-il facile de résoudre le problème à distance?
22
demandé sur ctacke 2009-01-06 17:22:23

3 réponses

Je voudrais certainement (et faire). SQL Compact (SQLCE) a un avantage distinct dans certains scénarios. Maintenant, il n'est en aucun cas destiné à remplacer SQL Server. Il ne s'adapte pas, il n'est pas fait pour exécuter des milliers de connexions simultanées, il n'est pas conçu pour les services de reporting, etc.

Mais il a une empreinteminuscule . L'installation est une question de simplement copier sur des dll. La sauvegarde est une simple copie de fichier. Et il peut être méchant rapide pour le stockage et la récupération si vous utilisez tableau direct ou BCP. Oh, et c'est gratuit. Si vous avez juste besoin d'un magasin de données local pour une application, SQL Server est difficile à déployer et à configurer. SQLCE est simple. De plus, il peut jouer dans le même bac à sable qu'un serveur SQL complet en tant qu'abonné de réplication (ce que la plupart des autres petits DB ne peuvent pas faire).

Edit: J'ai oublié de répondre à vos questions spécifiques:

  • Combien de données peut-il gérer? En termes de quoi? Taille DB? Débit? La taille de la Table? Taille de la ligne? Mon expérience est que j'ai exécuté la DB à quelques uns cent MB sans problème. Je pense qu'il peut contenir 4GB (à partir de 4.0). Le débit est directement lié à la façon dont vous insérez ou retirez les données. Nous l'utilisons dans une solution où nous capturons 1K lignes par seconde sans problème. Vous pouvez avoir 1024 colonnes et une taille de ligne maximale de 8k.
  • Plusieurs utilisateurs? Eh bien, il peut gérer plusieurs connexions simulataneous (à partir de 3.5), donc oui, cela devrait fonctionner. J'ai utilisé plusieurs connexions d'un utilisateur, jamais de plusieurs.
  • cassé les bases de données? Définir "cassé". Le moteur a une méthode "compacte et de réparation". C'est un fichier comme tout autre - comment réparez-vous un exécutable cassé? Je n'ai pas vu de corruption sur le terrain, si c'est ce que vous demandez (Eh bien nous l'avons fait sur un appareil CE qui avait une mauvaise carte de stockage, mais ce n'est pas la faute du moteur).
32
répondu ctacke 2012-10-31 12:10:05

Si vous voulez une petite base de données, utilisez quelque chose comme SQLLite.

Mais voici un article sur l'utilisation de compact edition sur un serveur

0
répondu Richard L 2009-01-06 14:28:38

Je l'ai utilisé pour une application et cela a bien fonctionné. Le seul problème que j'ai eu est que, pour une raison quelconque, SQL Server 2005 Management Studio ne prend pas en charge toutes les fonctionnalités du concepteur pour la dernière version de SQL Server CE (par exemple, vous ne pouvez pas modifier les tables, par exemple). Vous devez utiliser la version 2008 je pense.

C'est assez rapide, mais je l'ai certes utilisé pour de petits ensembles de données.

0
répondu Dario Solera 2009-01-06 14:32:10