Zum Inhalt springen

Lokale Datenbank mit Internet Datenbank synchronisieren


Sloop

Empfohlene Beiträge

Hallo alle miteinander,

ich hoffe jemand von euch Profis kann uns totalen Newbies weiterhelfen, da wir mit uns mit Datenbanken so gut wie gar nicht auskennen:

Wir haben eine Anwendung "application.exe", und dazu gibt es ein Config-File namens "application.exe.config". Der Inhalt dieser "application.exe.config" ist folgender:


<?xml version="1.0" encoding="Windows-1252"?>

<configuration>

<appSettings>

<!-- User application and configured property settings go here.-->

<!-- Example: <add key="settingName" value="settingValue"/> -->

<add key="OleDbConnection.ConnectionString" value="Provider=Microsoft.Jet.OLEDB.4.0;Password=& quot;";User ID=Admin;Data Source=c:\application1\database.db;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="magic";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False" />

<add key="Application.WebService.WorkWithThis" value="https://ssl.secure-connection.com/WorkWithThis.asmx" />

</appSettings>

</configuration>

Die lokale Datenbank liegt auf "C:\application\database.db". Wir können Sie mit Microsoft Access öffnen und bearbeiten. Wenn nun aber die Applikation läuft und Daten schreibt, dann wissen wir nicht in welche Datenbank sie schreibt. In die lokale auf der Festplatte oder auf dem Server?Wir haben mal testweise Daten auf der lokalen Datenbank "C:\application\database.db" geändert. Dann wurde die Applikation wieder gestartet und es wurden neue Daten hinzugefügt. Diese neu hinzugefügte Daten werden sowohl auf der Server-Datenbank als auch auf die lokale Datenbank hinzugefügt(also angehängt). Jedoch die Änderung, die wir zuvor hinzugefügt hatte in die lokale Datenbank durch, ist nicht auf der Internet Datenbank vorhanden.

Wie sagen wir der Applikation, dass die lokale Datenbank die Serverdatenbank überschreiben soll und synchronisieren soll? Geht das so einfach oder ist das komplizierter? Wir dachten evtl. geht es mit den Parametern des im config-file angegegeben Strings "OleDbConnection.ConnectionString" value=

Wir konnten auch keine Beschreibung finden, was genau z.B. die Values

Don't Copy on Locale=False

Mode=Share Deny None

Global Partial Bulk Ops=2

erreichen, vielleicht kann man ja durch das Config-File der Applikation sagen, dass sie beim nächsten Start die lokale Datenbank auf die Internet-Datenbank kopiert (überschreibt) ?

Hoffen auf eure Hilfe, da wir mit sowas eigentlich absolut nichts am Hut haben und uns nicht auskennen :rolleyes:

Danke.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Was ist das denn für ein Datenbank im Netz? Mysql?

Man könnte ein Script schreiben welches die Daten am Ende eines Tages mit der Datenbank im Netz abgleicht oder müssen die Daten sofort verfügbar sein?

Dann könnte man es auch so regeln das man das Script mehrmals pro Tag aufruft.

Bei Oracle Datenbanken könnte man das über Trigger realisieren aber ich glaube nicht das Access diese Möglichkeit bietet. Aber einfach mal nach Triggern und Access googlen

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wie sagen wir der Applikation, dass die lokale Datenbank die Serverdatenbank überschreiben soll und synchronisieren soll? Geht das so einfach oder ist das komplizierter?

Indem ihr das Programm dahingehend ändert? Oder bei dem nachfragt, der es erstellt hat?

Die Programmlogik kann man nicht einfach durch Änderungen in einer Config ändern (wenn das nicht so vorgesehen ist).

Alles weitere ist hier eh Spekulation, da erstens keiner auch nur die geringste Ahnung hat was das für ein Programm ist (nur das es ein .Net Programm ist), was das tut oder warum du uns frägst und nicht den Programmierer.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Den DB-/Applikationsprogrammierer gibt's leider nicht mehr, weil der fristlos gekündigt wurde. Lange Geschichte hier bei uns. Nun muss ich mit einem Kollegen uns um ein Problem kümmern, obwohl wir mit Datenbanken absolut nix am Hut haben. Wir wissen, dass die Applikation gleichzeitig auf die lokale Access-Datenbank schreibt und auch gleichzeitig auf einen entfernten Server (anderes Subnet). Das Problem ist, wir haben nicht die Login-Daten für den entfernten Server wo die Datenbank läuft, weil er falsche Daten hinterlassen hat bei seinem Abgang (lange Geschichte, gab Stress hier mit ihm und der Firma).Wir haben lediglich die Datenbankpasswörter. Somit können wir nur die lokale Datenbank bearbeiten. DIe Änderungen werden jedoch nicht auf den entfernten Server mitübermittelt. Lediglich neu hinzugefügte Daten werden sowohl an lokale als auch auf entfernte Datenbank angehängt. Änderungen, die wir an der lokalen Datenbank durchführen mussten, wurde nicht an den entfernten Server übertragen. Das sollten sie aber, weil diese Applikation bei mehreren Mitarbeiter-PCs läuft und auf die zentrale Datenbank auf dem entfernten Server zugreift. Das ist quasi die Zentrale.

Wir dachten evtl. wäre es durch den OleDBConnectionString und dessen values irgendwie möglich. WIr konnte auch leider absolut keine Infos finden, was genau diese values bewirken. Vielleicht kann jemand etwas Licht ins Dunkle bringen?

Danke und Gruss

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich mach ein wenig brainstorming:

- 2 datenbanken, gleiche datenbestände

- zugang nur interne DB

- verwaltung bei externer db nicht möglich weil kein zugang

meine lösungsansätze:

- interne Datenbank exportieren und das anlegen und einfügen von daten in einem SQL Skript anlegen.

- externe DB löschen und komplett neu aufsetzen, daten sind ja alle da (anruf beim betreiber vom chef oder ein fax sollte reichen)

- userrechte so planen, dass diese situation nicht mehr vorkommen kann

- backups der datenbanken regelmässig fahren

- wenns geht, die interne und externe datenbank das gleiche DBMS verwenden

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...