AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Firebird-Connectionstring mit UNC Pfad
Thema durchsuchen
Ansicht
Themen-Optionen

Firebird-Connectionstring mit UNC Pfad

Ein Thema von Lemmy · begonnen am 15. Nov 2011 · letzter Beitrag vom 17. Nov 2011
Antwort Antwort
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.395 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Firebird-Connectionstring mit UNC Pfad

  Alt 15. Nov 2011, 17:11
Hi,

ok, dann versuche ich das mal über einen Alias.

Und im Grunde liegt die DB aus sicht des Servers schon lokal - ich gebe aber halt einen UNC-Pfad an, der auf eine lokale Freigabe zeigt.

und lokal auf dem CLient zusammenbauen/zugreifen geht halt auch nur, wenn ich lokal den embedded zur Verfügung habe, d.h. anstelle der CLient.dll den embedded mit ausliefere. Dann müsste ich das Pfad-Gewürge nicht machen. Wäre mir lieber, bekomme ich aber erst dann durch, wenn definitiv nix anderes geht...

Grüße
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#2

AW: Firebird-Connectionstring mit UNC Pfad

  Alt 15. Nov 2011, 22:38
Weg mit Freigaben auf Verzeichnissen in denen sich Datenbankdateien befinden. Wenn jemand lustig ist, macht er/sie sich eine Kopie der Datenbankdatei bei aktiven Verbindungen mit einem möglichen Ergebnis, dass die Kopie und/oder das Original beschädigt wird.

Am besten ist, der Client verbindet sich, wie bereits erwähnt, über einen Alias. Da kannst dann die Steuerung, welche DB gerade über einen Alias zugänglich ist, zentral über die aliases.conf am Server vornehmen.

lg,
Thomas
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.395 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Firebird-Connectionstring mit UNC Pfad

  Alt 15. Nov 2011, 23:50
Hallo,

vielleicht noch zur Ergänzung:

Der Client muss Daten die in einer FirebirdDB sind und auf dem Client-Rechner liegt in die Server-DB einspielen (wenn man so will, Daten von externen, mobilen Mitarbeitern). Da auf dem Client weder Embedded noch ein Server installiert ist, muss diese DB irgend wie in den Bereich des FB-Servers kommen.

@THomas: Bitte nicht falsch verstehen.... Ich stimme dir völlig zu! Ich kann und möchte hier nicht so viel schreiben - ich hoffe du kannst es akzeptieren wenn ich hier einfach schreibe, dass ich manche Dinge (auch wenn ich sie gerne ändern würde) nicht ändern kann - falls Du das nicht verstehst, bin ich gerne bereit dir die Details per PN mitzuteilen.

Meine Idee geht in Richtung embedded auf den Clients zu installieren - hat aber den Nachteil, dass bei manchen Kunden nachjustiert werden muss, da diese einen Client zum Server gemacht haben (also da drauf auch regulär arbeiten) und hier nicht per Server-Connectionstring verbunden wird (habe ich zumindest so mal gesehen) was bei einem installierten embedded FB dann eben nicht mehr geht, weil der dann die DB komplett sperrt (FB 2.1).

Eine weitere Idee war aber halt auch, ein alternatives Verzeichnis auf dem Server (eben nicht das DB Verzeichnis sondern ein leeres) frei zu geben, in das der Client dann die DB kopieren kann und um der Einfachheit halber dann eben auch per UNC-Freigabe den Connectionstring zusammen baut. Meine Ursprüngliche Idee war, hier dem Client den Connectionstring für dieses Verzeichnis per Ini-Datei bekannt zu geben, dann wäre alles kein Problem - wurde aber bisher auch abgelehnt, da hier massive Eingriffe in die Sourcen befürchtet werden (wobei der Großteil oder fast alles eh meine Bereiche tangieren würden).

Allerings habe ich inzwischen über den Alias nachgedacht - funktioniert in meinem Anwendungsfall auch nicht, da ggf. auch mal 2 unterschiedliche Clients zur selben Zeit importieren müssen - dann geht das komplett in die Hose.... Außer ich mach für jeden Client einen extra Alias Eintrag.... ich glaube ich brauche dringend Argumente für den Embedded auf den Clients

Grüße
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#4

AW: Firebird-Connectionstring mit UNC Pfad

  Alt 16. Nov 2011, 07:10
Wie kann am Client mit einer Firebird-DB gearbeitet werden, wenn weder Embedded noch ein Server auf dem Client installiert ist?

Kommt auf die Komplexität deines Anwendungsfalls an mit zentraler Datenhaltung vs. Außendienstmitarbeitern, aber da kommt man schnell in ein bidirektionales Replikationsszenario rein.
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.395 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Firebird-Connectionstring mit UNC Pfad

  Alt 16. Nov 2011, 08:06
Guten Morgen,

Wie kann am Client mit einer Firebird-DB gearbeitet werden, wenn weder Embedded noch ein Server auf dem Client installiert ist?
und genau hier kommt der UNC-Pfad in Spiel: Der Client kopiert die DB in dieses Verzeichnis, damit die DB lokal auf dem Server liegt - dann muss lediglich der ConnectionString zusammen gebaut werden - und der eben der einfachheit halber genau mit dem UNC-Pfad, denn der ist auf dem Server (obwohl die Datei ja lokal vorliegt) ja auch verfügbar....

Grüße
  Mit Zitat antworten Zitat
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#6

AW: Firebird-Connectionstring mit UNC Pfad

  Alt 16. Nov 2011, 08:21
Ich steh am Schlauch.

Der Client arbeitet mit einer eigenen Datenbank, die er nur nutzen kann, wenn er in der Firma ist, da lokal kein Embedded oder Server installiert ist. Um damit arbeiten zu können, muss die Datenbankdatei in eine Freigabe des Servers kopiert werden. Der am Server zur Verfügung stehende Firebird Server dient dann als Host für die Bearbeitung der Firebird-DB. Stimmt das?

D.h. der Außendienstmitarbeiter kann dann mit der DB überhaupt nichts anfangen, wenn er sich außerhalb der Firma befindet. Warum wird dann nicht einfach eine zentrale DB für alle Clients am Server verwendet? Sorry, aber vielleicht habe ich einfach auch etwas überlesen.
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.395 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Firebird-Connectionstring mit UNC Pfad

  Alt 16. Nov 2011, 09:02
oh bitte verzeih mir.... vielleicht hänge ich schon viel zu lange an dem Problem fest....

KLar hat der Außendienstler den Embedded laufen. Die Datenübergabe passiert aber so, dass er ab und zu eine Datensicherung an die Hauptstelle sendet. Dort arbeitet dann ein Mitarbeiter an einem normalen Client - seinem üblichen Arbeitsplatz - und muss nun die DB in das Hauptsystem importieren. Dazu wird die Datensicherung wieder hergestellt und dann importiert. Wie gesagt - das funktioniert derzeit schon seit Jahren so, dass die Import DB im Datenbankverzeichnis erstellt wird, das per UNC-Freigabe oder sogar Laufwerksmapping vom Client aus zugreifbar ist.

Vielleicht noch drum herum: Synchronisation und ähnliches ist nicht notwendig - die Externen erfassen mehr oder weniger nur Daten, die dann ins Hauptsystem wandern sollen.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz