2016-05-25 27 views
2

Ich habe ein Programm, das alle 2 Sekunden eine Warteschlangentabelle abfragt, die nach neuen zu verarbeitenden Einträgen sucht (die Queue-Tabelle enthält nie mehr als eine Handvoll Datensätze). Ich habe gelesen, dass das Öffnen von SqlConnections in der Regel eine schlechte Form ist, aber die meisten Referenzen sprechen über Code, der nicht so schnell auf die Datenbank trifft.SqlConnection/Abfragen in einer sich wiederholenden Schleife

Frage:

In einer Schleife, wo eine Datenbank auf eine kurze Dauer (alle 2 Sekunden zum Beispiel) abgefragt wird, wäre es besser, die Datenbankverbindung geöffnet oder öffnen Sie es erneut jede Abfrage zu verlassen.

+3

Ich denke, dieser Link wird Ihre Frage beantworten: http://programmers.stackexchange.com/questions/142065/creating-database-connections-do-it-once-or-for-e-ach-abfrage – Ulric

+2

Best Practice ist zu Schließen Sie Verbindungen, sobald die Verbindung unabhängig vom Zeitintervall zwischen den Anforderungen nicht mehr benötigt wird. –

+1

http://stackoverflow.com/questions/5288434/how-to-monitor-sql-server-table-changes-by-using-c –

Antwort

1

Es empfiehlt sich, jede Abfrage erneut zu öffnen.

Einmal alle zwei Sekunden ist nicht besonders schnell. Eine Website mit erheblicher Last wie StackOverflow wird Verbindungen viel häufiger öffnen und schließen.