# DB File Synchronisation



## yyannekk (14. Jan 2013)

Folgendes allgemeines Problem:
Ich brauche eine Datenbank Synchronisation (selbes Schema) mit Hilfe von Files. Hintergrund ist der dass der Anwender sich sicher sein kann welche Daten ausgetauscht werden. Die Files müssen also menschenlesbar sein.
//Wichtig zu erwähnen ist denke ich noch dass die Datenbank Anwendungen nicht direkt miteinander Kommunizieren können. Jegliche Kommunikation kann nur über die Files geschehen. 
Wahrscheinlich wird Access für die Datenbanken verwendet.
Bin sehr gespannt auf Anregungen/Ideen, evtl gibt es auch schon fertige Lösungen dafür?


----------



## Marcinek (14. Jan 2013)

XML Export und anschließend Import. 

Sehe nicht, was hier besonders sein soll.


----------



## Bleiglanz (14. Jan 2013)

yyannekk hat gesagt.:


> Folgendes allgemeines Problem:
> Ich brauche eine Datenbank Synchronisation (selbes Schema) mit Hilfe von Files. Hintergrund ist der dass der Anwender sich sicher sein kann welche Daten ausgetauscht werden. Die Files müssen also menschenlesbar sein.
> //Wichtig zu erwähnen ist denke ich noch dass die Datenbank Anwendungen nicht direkt miteinander Kommunizieren können. Jegliche Kommunikation kann nur über die Files geschehen.
> Wahrscheinlich wird Access für die Datenbanken verwendet.
> Bin sehr gespannt auf Anregungen/Ideen, evtl gibt es auch schon fertige Lösungen dafür?



Das ist totaler gobbldidookschwurbelei. WAS genau soll synchronisiert werden? Datenbank-Tabellen? Und wenn ja - warum? Gibt es einen Offline-Modus?

Welche "Daten" werden ausgetauscht?

Wieso "Datenbankanwendungen" die über "Files" kommunizieren?


----------



## Marcinek (14. Jan 2013)

Es wird noch besser: 

http://www.java-forum.org/softwareentwicklung/146577-software-zertifikat.html

Es soll zertifiziert werden, welche Daten (fachlich, inhaltlich) übertragen werden.


----------



## yyannekk (14. Jan 2013)

Ja an xml import/export hab ich natürlich auch gedacht, allerdings dachte ich mir ich frag erstmal nach ob es schon fertige Lösungen für dieses Problem gibt (nur ein einfacher XML Export/Import reicht nicht, Konflikterkennung und Behandlung müsste es auch noch geben)
Der verlinkte Thread hat natürlich auch damit zu tun, allerdings nicht so wie du es verstanden hast. Es geht mir einfach darum eine Datenbank teilweise zu replizieren und dem Anwender die Kontrolle über die Kommunikation zu garantieren.
Angenommen ein Anwender hat eine Datenbank auf der extern auch gearbeitet werden soll. Dabei darf aber nur ein Teil der Datenbank repliziert werden, da es auch kritische Datenbank objekte gibt die nur beim Anwender existieren sollen und extern nicht benötigt werden.
Dem Anwender muss nun garantiert werden, dass nur unkritische Datenbankeinträge, bzw die Einträge die er auswählt gesynct werden.
Meine zwei Ansätze dazu sind:
1. Sync über menschenlesbare Files, somit kann der Anwender in die Kommunikation "hineinschauen", oder 2. Ein externer Anbieter garantiert/zertifiziert das Tool, sodass, unter der Vorraussetzung dass dieser Anbieter vertrauenswürdig ist, der Anwender sich sicher sein kann das das Programm so funktioniert wie es sollte....


----------



## Bleiglanz (15. Jan 2013)

Du versuchst wohl irgendwas sinnvolles zu sagen (was dir nicht besonders gut gelingt), ich versuch mal dich zu verstehen:

1) Aus einer DB soll ein Teil (z.B. einige Tabellen, evtl. auch nur Zeilen?) ausgewählt werden

2) Dieser Teil soll offline auf verschiedenen Maschinen verfügbar sein

3) Diese offline-Teile sollen aus irgendeinem Grund menschenlesbar sein (?WOZU?)

4) Diese offline-Teile sollen lokal bearbeitet und dann wieder zurücksynchronisiert werden

Unter MS-Access gab es mal eine Technik, die das konnte (MDE oder so ähnlich, habs vergessen). Ansonsten wirst du das selbst programmieren müssen. So wie sich das liest dürfte es sich um einen kapitalen Designfehler handeln: Alleine die Versionierung und die Konfliktbehebung wenn zwei offline-Clients die gleichen Daten bearbeitet haben ist ein großes Bäh.


----------



## areafo (24. Jan 2013)

@ Bleiglanz eine Access DB im MDE Format hat lediglich zur Folge das der VBA Code nichtmal mehr mit einem PW zugänglich ist. An die Daten kommt man trotz dessen.

Was yyannekk jedoch möchte ist einfach ein Containerformat das von Extern signiert werden kann, praktisch eine digitale Unterschrift oder ein Fingerabdruck einer Datei (Hashwert z.B.).


----------

