Autor Beitrag
Jerk
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 251

Vista Ultimate, Ubuntu
Turbo Delphi 2006
BeitragVerfasst: Sa 13.09.08 21:22 
Hallo erstmal,

Ich sitze hier schon ne Weile an der Frage, wie ich es realisieren kann eine Tabelle zu updaten.

Das klingt ansich ja nicht schwierig, nur ist die Problematik dabei die folgende:

Die Tabelle enthällt Nutzerdaten, diese werden über eine API aus einer XML stündlich ermittelt. In der SQL tabelle sollen zu den Daten aus der XML noch zustäzlich Daten hinzugefügt werden.

Also angenommen in der XML steht drinn: Name, Guthaben, Fahrzeug und Farbe und die SQL hat noch die zusätzlichen Spalten Kommentar und Verbündete.

Geschieht nun also das Stündliche Update so können sich mal Werte in der XMl ändern, also z.B. das Guthaben. Das lässt sich auch leicht ändern mit "UPDATE bla SET a = 'blabla'... WHERE name = xmlnamezeile". Was ich jedoch nicht hinbekomme ist, dass wenn Einträge in der XML entfernt sind, also Spalte X nicht mehr dabei ist, oder ein Neues Mitglied beitritt, das in der SQL Tabelle zu updaten. Ich denke es liegt dort an der where Bedingung, allerdings weis ich nicht wie ich diese dann umgestalten muss?

Name ist dabei der Primärschlüssel.


Bzw. die Frage geht es überhaupt dies zu realisieren ohne Zwei Tabellen zu nutzen wo beide miteinander verglichen werden?


Moderiert von user profile iconNarses: Topic aus Datenbanken verschoben am So 14.09.2008 um 00:12
Moderiert von user profile iconNarses: Nach interner Diskussion im Team aus Off Topic zurück-verschoben am Mo 15.09.2008 um 00:12
Jerk Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 251

Vista Ultimate, Ubuntu
Turbo Delphi 2006
BeitragVerfasst: So 14.09.08 00:36 
Warum wurde das hier verschoben ? -.-
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: So 14.09.08 02:10 
Suche alle Keys aus der XML-File raus und baue dann eine "Cleanup"-Anfrage zusammen:

ausblenden SQL-Anweisung
1:
DELETE FROM tabelle WHERE key-spalte in (wert1, wert2, wert3, ...);					


Alternativ könntest Du einen Zeitstempel mitführen, der das letzte Update enthält, wo Daten, die älter als X Stunden sind automatisch gekillt werden ...

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.