Der korrekte Ort für eine gemeinsame Datenbank?

18/10/2008 - 15:01 von Andy Dorwald | Report spam
Hallo NG,

musste (gerade durch Windows Vista) sehr viel lernen! ;-)

Hatte "damals" meine Datenbank im gleichen Ordner, wie die Hauptanwendung -
was unter Vista natürlich zu (im Nachhinein verstàndlich) großen Problemen
führte (ich sage nur "virtuelle User-Ordner").

Nun gut, daraus habe ich gelernt und meine DB's liegen seit dieser Zeit brav
unter "Eigene Dateien". Ähem, ist doch richtig so, ODER???

Jetzt ist es aber so, dass die DB einer neu zu erstellenden Anwendung für
Mehrplatz im Zugriff stehen soll. Ich möchte daher von Anfang an alles
richtig (quasi nach Spielregeln) machen!

Nun meine Frage: WO sollte diese DB idealerweise liegen?

Etwa weiterhin unter "Eigene Dateien" und einfach per Dateifreigabe
freigeben oder vielleicht unter "Gemeinsame Dokumente" oder irgendwo,
Hauptsache nicht unter "Programme/..." und eine Freigabe machen oder ganz wo
anders???

Randinfo: Die Datenbank ist übrigens nicht nur eine einzige Datenbankdatei
(MDB), sondern es sind drei verschiedene MDB's und einige XML-Dateien, die
ich über die VB-Anwendung anspreche.

Danke für jedes erklàrende Wort! ;-)
Andy
 

Lesen sie die antworten

#1 Peter Götz
18/10/2008 - 17:35 | Warnen spam
Hallo Andy,

musste (gerade durch Windows Vista) sehr viel lernen! ;-)

Hatte "damals" meine Datenbank im gleichen Ordner,
wie die Hauptanwendung - was unter Vista natürlich zu
(im Nachhinein verstàndlich) großen Problemen
führte (ich sage nur "virtuelle User-Ordner").



Das macht nicht nur Probleme bei Vista.
Auch unter XP haben Benutzer, welche keine Admin-
Rechte haben im Anwendungsverzeichnis keine
Schreibrechte. Eine dort liegende DB-Datei könnte
von solchen Benutzern nur gelesen, aber nicht
beschrieben werden.

Nun gut, daraus habe ich gelernt und meine DB's
liegen seit dieser Zeit brav unter "Eigene Dateien".
Ähem, ist doch richtig so, ODER???



Wenn nur der eine Benutzer, dem dieser Ordner
"Eigene Dateien" gehört auf die DB-Datei zugreifen
will, dann ja. Für andere Benutzer wàre auch das
problematisch.

Jetzt ist es aber so, dass die DB einer neu zu
erstellenden Anwendung für Mehrplatz im Zugriff
stehen soll. Ich möchte daher von Anfang an alles
richtig (quasi nach Spielregeln) machen!

Nun meine Frage: WO sollte diese DB idealerweise
liegen?



Der "richtige" Ort, ist dann ein für die berechtigten Benutzer
freigegebenes Verzeichnis auf einem Dateiserver.

Etwa weiterhin unter "Eigene Dateien" und einfach
per Dateifreigabe freigeben



Das würde das Sicherheitskonzept von Windows völlig
über den Haufen werfen.

oder vielleicht unter "Gemeinsame Dokumente" oder
irgendwo, Hauptsache nicht unter "Programme/..." und
eine Freigabe machen oder ganz wo anders???



Eine Datenbank, die im Mehrbenutzerbetrieb genutzt
werden soll, muss erst mal immer erreichbar, wenn
einer der möglichen Benutzer zugreifen will. Auf irgend-
einem Client kann aber muss das nicht unbedingt
sichergestellt sein. Du solltest also vorrangig erst mal
überlegen, welcher Rechner in Deinem Rechnernetz
jederzeit für alle denkbaren Clients erreichbar ist.

Randinfo: Die Datenbank ist übrigens nicht nur eine einzige
Datenbankdatei (MDB), sondern es sind drei verschiedene
MDB's und einige XML-Dateien, die ich über die
VB-Anwendung anspreche.

Danke für jedes erklàrende Wort! ;-)



s.oben:
So was legt man üblicherweise in ein entsprechendes
Verzeichnis eines Dateiservers. Wenn Du einen Mehr-
benutzerbetrieb anstrebst, wàre es auch eine Überlegung
wert, statt einer *.mdb einen SQL-Server, der Anfangs
auch eine SQLexpress-Version sein kann zu nutzen.
Eine Jet-Datenbank (*.mdb) ist nicht für Mehrbenutzerbetrieb
konzipiert. Zugriffskonflikte, wie sie bei einem Mehr-
benutzerbetrieb auf eine gemeinsame DB zwangslàufig
auftreten, musst Du bei einer *.mdb im jeweiligen
Clientprogramm selbst erkennen und auflösen, da es
auf der DB-Seite ja kein aktives Serverprogramm gibt,
welches solche Dinge regeln könnte. Ein nicht ganz
zu vernachlàssigender zusàtzlich Programmieraufwand.

Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

Ähnliche fragen