2010-01-18 6 views
0

Tout d'abord, je comprends pourquoi il est recommandé de fermer les connexions à la base de données du serveur dès que possible.Laisser Win Formulaire Connexion DB locale ouverte?

Je suis en train de développer un programme qui contiendra une base de données locale (5 tables ~ 200 colonnes), il peut atteindre quelques milliers de lignes (donc il ne sera pas nécessaire d'en faire trop). Ma première pensée a été de garder la connexion db locale jusqu'à la fermeture du programme.

Pouvez-vous s'il vous plaît confirmer si ce sera ok ou souligner les raisons pour lesquelles je ne voudrais pas faire cela?

Répondre

0

Y a-t-il une raison particulière pour laquelle vous voulez garder la connexion ouverte? Qu'est-ce que vous voulez accomplir en faisant cela?

S'il s'agit d'une application mono-utilisateur, où la base de données servira une seule instance du programme, en théorie, je suppose que cela ne ferait pas de mal. Cependant, si votre application doit devenir une application utilisée par plusieurs personnes exécutées sur la même base de données, cela peut poser problème.

Je dirais; s'en tenir à la pratique recommandée, sauf si vous avez vraiment bonnes raisons de ne pas le faire.

1

ADO.NET, associé à la plupart des moteurs de base de données, permet la mise en pool automatique des connexions en arrière-plan par défaut. Il n'y a absolument pas besoin de garder la connexion ouverte car ADO.NET le fera de toute façon pour vous et le rendra quand vous le rouvrirez. Fermez-le, une chose de moins à s'inquiéter.

0

@Fredrik Oui, ce serait une connexion d'utilisateur unique à un localDB sur leur profil utilisateur. La seule raison pour laquelle je pensais à le garder ouvert serait d'éviter les exceptions possibles lors de la reconnexion, mais je pense que la réponse de regroupement de connexions le résume de sorte que je suis heureux d'aller de l'avant et de fermer une fois terminé.

@DrJokepu Cheers

Questions connexes