title image


Smiley Re: .Net, VB.NET, SQL-Server oder ich, wer ist schuld? :-)
Das liegt am Konzept. Access ist für Single- bis einige wenige Benutzer ausgelegt. 200 gleichzeitige Benutzer ist damit sicher unmöglich. Anders eine Datenbank wie der SQL-Server. Der kann sowas. Dazu muss er aber anders arbeiten. Während bei Access nur der Datenbankfile am Server liegt und jeder Benutzer seine Jet-Engine am Client-Rechner hat, läuft beim SQL-Server alles über die eine Engine am Server.

Nehmen wir jetzt einfach mal eine "select * from ..." her, wobei die Tabelle viele tausende von Records beinhaltet. Um darin blättern zu können, muss ein sogenannter "Cursor" verwendet werden. Während bei Access diese Verwaltung ohne Ausnahme durch die Jet-Engine immer lokal erfolgt und dieser Cursor nicht die gesamte Datenmenge holt sondern immer nur mit "Häppchen" arbeitet, sieht das ziemlich schnell aus. Beim SQL_Server werden standardmäßig alle records an den Client gesendet, der dann den Cursor selber in der Applikation verwaltet. Darum dauert das solange.

Dies lässt sich aber umdefinieren, sodaß der SQL-Server die Cursorverwaltung übernimmt, dann verhält sich das Ganze ähnlich wie bei Access. Man macht dies aber üblicherweise nicht, da das den SQL-Server ziemlich belastet, sobald viele Benutzer gleichzeitig mit diesem Konzept arbeiten würden. Andererseits macht es aber auch nicht viel Sinn, jedesmal alle Records zu lesen, der Anwender will ja meist immer nur mit einem ganz bestimmten record arbeiten. Daher sind Programme dann anders aufgebaut.Man zeigt kein Grid mit allen Records an sondern lässt den Anweder erst mal definieren was er will und holt dann nur diese Daten.

Das ist zunächst mal eine Umstellung im Kopf, man muss sich vom alten Konzept unbedingt lösen. Vielleicht geht das Ganze einfacher, wenn man sich zB. vorstellt, wir hätten einen Versandhandel, bei dem 20 Leute gleichzeitig Bestellungen erfassen. Wenn man jetzt ein Grid mit allen Bestellungen erstellen würde, wären die Daten darin bereits veraltet, bevor man alles eingelesen hat. Und von dieser Seite her sollte man Programme konzipieren. Also weg vom Grid ohne Einschränkungen, dann ist damit das Zeitproblem auch beseitigt.



bye,

Helmut



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: