Forums Neueste Beiträge
 

DataSet in Komponente / Idee für Netzwerk

12/12/2008 - 11:54 von Harald Bacik | Report spam
Hallo NG

Ich bitte um entschuldigung, für den nicht sehr aussagekràftigen Titel
meiner Frage...
Folgendes: Ich arbeite mit VB2008 SP1 an einem Datenbankprojekt.
Ich arbeite dabei meist mit einer Komponente, die das DataSet hàlt & von dem
aus ich Projektweit darauf zugreifen kann. - Vorteil: 1x Laden der Daten &
dann immer wieder darauf zugreifen.
So, das jetzige Projekt ist für mehrere User gedacht, somit kann ich dieses
Konzept so nicht umsetzen, da ja am PC 1 Änderungen gemacht werden können,
die ich dann durch die verbindungslose Art des Aufbaus auf PC2 nicht sehen
würde.

Das "Problem" ist nur, dass ich mit bis zu 30000 Datensàtzen arbeite. (Nein,
die kann man nicht einschrànken...) Jetzt meine Frage. - Wie mache ich den
Aufbau in diesem Fall richtig? - Gibt es eine Möglichkeit, im Vorfeld den
Server abzufragen, ob das DataSet das ich habe mit den Daten auf dem Server
übereinstimmt & wenn nicht, dass "nur" die Geànderten Daten abgerufen werden?
- Um Traffic zu sparen...

DANKE für jeden Tipp!
 

Lesen sie die antworten

#1 Peter Fleischer
12/12/2008 - 18:14 | Warnen spam
"Harald Bacik" schrieb im
Newsbeitrag news:

Ich bitte um entschuldigung, für den nicht sehr aussagekràftigen Titel
meiner Frage...
Folgendes: Ich arbeite mit VB2008 SP1 an einem Datenbankprojekt.
Ich arbeite dabei meist mit einer Komponente, die das DataSet hàlt & von
dem
aus ich Projektweit darauf zugreifen kann. - Vorteil: 1x Laden der Daten &
dann immer wieder darauf zugreifen.
So, das jetzige Projekt ist für mehrere User gedacht, somit kann ich
dieses
Konzept so nicht umsetzen, da ja am PC 1 Änderungen gemacht werden können,
die ich dann durch die verbindungslose Art des Aufbaus auf PC2 nicht sehen
würde.

Das "Problem" ist nur, dass ich mit bis zu 30000 Datensàtzen arbeite.
(Nein,
die kann man nicht einschrànken...) Jetzt meine Frage. - Wie mache ich den
Aufbau in diesem Fall richtig? - Gibt es eine Möglichkeit, im Vorfeld den
Server abzufragen, ob das DataSet das ich habe mit den Daten auf dem
Server
übereinstimmt & wenn nicht, dass "nur" die Geànderten Daten abgerufen
werden?
- Um Traffic zu sparen...



Hi Harald,
für die Konfliktbehandlung gibt es verschiedene Lösungsmöglichkeiten. Die
solltest du erst einmal konzeptionell erarbeiten.

Eine Prüfung auf Verànderung kannst mit einer Select Anweisung durchfürhen,
in der du den originalwert im Client mit dem Wert in der Datenbank
vergleichst. Wenn du danach aber speicherst, dann kann es sein, dass
zwischenzeitlich trotzdem jemand geàndert hat.

Für den Anfang würde ich die in ADO.NET implementierte technologie der
Konflikterkennung nutzen. Da wird beim Uodate (Delete und Update) auf die
Originalwerte geprüft und wenn das nicht funktioniert, wird ein fehler wegen
Konkurrenzbedingung geworfen. Wie das pracktisch realisiert wird kannst du
dir im vom designer genereiten Code für einen TableAdapter oder in einer Web
Anwednung in einer vom Designer generierten SQLDataSource anschauen.

Viele Grüsse
Peter

Ähnliche fragen