AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenaustausch prinzipielle Frage
Thema durchsuchen
Ansicht
Themen-Optionen

Datenaustausch prinzipielle Frage

Ein Thema von haentschman · begonnen am 26. Nov 2007 · letzter Beitrag vom 26. Nov 2007
Antwort Antwort
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.298 Beiträge
 
Delphi 12 Athens
 
#1

Datenaustausch prinzipielle Frage

  Alt 26. Nov 2007, 14:38
Datenbank: Firebird • Version: 2.0 • Zugriff über: Zeos
Hallo alle...

ich habe mal eine prinzipielle Frage...

Ich habe in der Firebird Datenbank eine Tabelle mit Voreinstellungen. Diese Tabelle ( der gesamte Inhalt ) soll per Updatedatei (Tabellenformat) aktualisiert werden.

... Bsp: mit der BDE könnte man die Updatedatei als xxx.db zur Verfügung stellen und einlesen.

---> da ich die Finger von der BDE lassen will kommt das nicht in Frage.

welches Dateiformat würdet Ihr für den Datenaustausch empfehlen

Danke für Euer Interesse...
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.611 Beiträge
 
#2

Re: Datenaustausch prinzipielle Frage

  Alt 26. Nov 2007, 14:39
XML
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Datenaustausch prinzipielle Frage

  Alt 26. Nov 2007, 14:41
Oder Updateskript
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.298 Beiträge
 
Delphi 12 Athens
 
#4

Re: Datenaustausch prinzipielle Frage

  Alt 26. Nov 2007, 14:44
uups...das ging aber schnell.

mit XML habe ich mich noch nicht beschäftigt... schaun wir mal... Danke
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#5

Re: Datenaustausch prinzipielle Frage

  Alt 26. Nov 2007, 14:48
Variante 1:
alle Datensätze als INSERT-Anweisungen in eine Text-Datei schreiben:
SQL-Code:
' Beispiel
INSERT INTO Voreinstellungen(Feld1, Feld2,...) VALUES(10,
'Color', ...)
INSERT INTO Voreinstellungen(Feld1, Feld2,...) VALUES(20,
'Font', ...)
Diese Inserts können dann später im Batchbetrieb ausgeführt werden.
Mein Programm ADO Desk kann dir diese INSERT - Anweisung aus jeder Datenbank Tabelle erzeugen.
Variante 2:
XML erzeugen und einlesen. Das ist zwar eine gute und stabile Lösung, kann aber relativ aufwändig werden.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.298 Beiträge
 
Delphi 12 Athens
 
#6

Re: Datenaustausch prinzipielle Frage

  Alt 26. Nov 2007, 14:57
...ich habe mal meine Komponentensammlung bemüht und

JvgExportXML

gefunden... damit sollte das Erstellen der XML Datei kein Problem darstellen.

ist JvXMLDatabase das Äquivalent zum einlesen ? ...irgendwie finde ich die kpl. Hilfe zu den Jedis nicht..

Danke an alle...

[edit]
hallo shmia...
die eine Tabelle hat ca. 300 Datensätze mit 10 Feldern... auch wenns als Text so funktionieren würde für Änderungen an der Tabelle zu unübersichtlich Trotzdem Danke...
[/edit]
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#7

Re: Datenaustausch prinzipielle Frage

  Alt 26. Nov 2007, 15:21
Zitat von haentschman:
hallo shmia...
die eine Tabelle hat ca. 300 Datensätze mit 10 Feldern... auch wenns als Text so funktionieren würde für Änderungen an der Tabelle zu unübersichtlich Trotzdem Danke...
Also das Argument kann ich nun überhaupt nicht nachvollziehen.
Du kannst dich doch nicht duschen ohne nass zu machen.
Und auch keine Tabellen updaten ohne entsprechende Informationen zu übertragen.
Angenommen von den 300 Datensätzen müssten 50 Datensätze geändert werden.
Es gibt nun 2 Möglichkeiten:
1.) alle Datensätze löschen und 300 INSERTS ausführen
hier wird sichergestellt, dass die Tabellen identisch sind
2.) 50 UPDATES ausführen (natürlich nur, wenn ein Primärschlüssel vorhanden ist)
hier sind nur die 50 Datensätze identisch, die restlichen können abweichen oder nicht vorhanden sein.

Mein Programm ADO Desk ist in der Lage sowohl INSERT als auch UPDATE Anweisungen zu erzeugen.
Man kann sogar 2 strukturgleiche Tabellen in 2 verschiedenen Datenbanken vergleichen lassen und sich
ein Update-Script (bestehend aus DELETE-, INSERT- und UPDATE Anweisungen) produzieren lassen.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.298 Beiträge
 
Delphi 12 Athens
 
#8

Re: Datenaustausch prinzipielle Frage

  Alt 26. Nov 2007, 15:27
nun ja...

da ich ADO Desk nicht habe mußte ich von manueller Erstellung / Änderung der Textdatei ausgehen...

...sicher ist mit den richtigen Werkzeugen alles einfacher...

...aus diesem Grunde werde ich mich erst einmal gründlich mit XML beschäftigen.

Trotzdem Danke...

[edit]
PS: ich hätte eh Deine Variante 1 gewählt...weil die Überprüfung auf Veränderungen wahrscheinlich länger dauert als alle Datensätze zu schreiben...
[/edit]
  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 18:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz