Autor Beitrag
andyp17
Hält's aus hier
Beiträge: 10



BeitragVerfasst: Do 20.01.11 19:44 
Hallo Forum,
Bin neu hier im Forum und auch noch ein ziemlicher Anfänger in der DB-Programmierung. Ich habe da eine grundsätzliche Frage: Wie sollte man mit DC-Connections umgehen. Ich schreibe gerade ein Programm, dass laufend Daten aus eine DB liest und auch in diese schreibt. Soll man eine Connection beim Start des Programms öffnen und beim Beenden wieder schließen, oder für jede Aufgabe während das Programm läuft ein Con öffnen und danach gleich wieder schließen? Was ist besser?

Vielen Dank für eure Hilfe!

mfg
Andy
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4799
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 20.01.11 21:44 
Aufgrund des "Connection Pooling" ist es besser, jedesmal die Connection nur kurzzeitig vom Programm aus zu öffnen und nach der DB-Aktion wieder zu schließen.
s.a. Understanding Connection Pooling
bzw.
Establishing a Connection / Closing Connections
stendate
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 19
Erhaltene Danke: 1



BeitragVerfasst: Fr 21.01.11 00:02 
user profile iconTh69 hat folgendes geschrieben Zum zitierten Posting springen:
Aufgrund des "Connection Pooling" ist es besser, jedesmal die Connection nur kurzzeitig vom Programm aus zu öffnen und nach der DB-Aktion wieder zu schließen.


Wenn man denn immer eine offene Connection im Pool hat dann schon, sonst ehr nicht.

Weiterhin hängt es stark von der Datenbank ab, bei SQL-Servern ist z.B. das Öffnen bei Bedarf deutlich schmerzfreier als bei Access.
Hinzu kommen dann noch überlegungen bzgl. der Server-Belastung, die bei vielen (unnütz) offenen Verbindungen etwas höher ist.

Generell kann man bei diesem Thema eigentlich nur sagen dass es vom Szenario abhängt was besser ist.