MySQL mit ZeosLib
Datensätze updaten
Was passiert, wenn sich ein Datensatz ändert? In einer Adressdatenbank kann dies der Fall sein, wenn beispielsweise ein Bekannter umzieht. Es besteht die Möglichkeit, bestehende Datensätze zu aktualisieren. Dies geschieht mit dem SQL-Befehl Update.
Auch bei diesem Befehl ist die Syntax verhältnismäßig einfach:
UPDATE tabellenname SET feld1='Neuer Wert';
Dieses Statement würde in einer Tabelle in jedem Datensatz das Feld feld1 auf Neuer Wert setzen:
Vorher | Nachher | |||||||||||||||||
|
|
Der Update-Vorgang kann natürlich auch auf einen Datensatz beschränkt werden. Wie schon bei DELETE und SELECT aus den vergangenen Kapiteln lässt sich auch UPDATE durch einen WHERE-Parameter beeinflussen.
UPDATE tabellenname SET feld1='Neuer Wert' WHERE feld2=Beispiel 2;
Dieses Statement würde beispielsweise nur den zweiten Datensatz aktualisieren und die anderen Datensätze unberührt lassen. Es können natürlich auch mehrere Felder auf einmal aktualisiert werden, indem man die Feldnamen/Werte per Komma trennt:
UPDATE tabellenname SET feld1='Neuer Wert', feld2='Neuer Wert 2';
Dieses Statement würde die Felder feld1 und feld2 eines jeden Datensatzes auf Neuer Wert bzw. Neuer Wert 2 setzen.
Im Quelltext würde das Aktualisieren eines ganzen Datensatzes so aussehen:
qrMain.SQL.Text:='UPDATE adressbuchSet
vorname='''+edVorname.Text+''','+ '
name='''+edName.Text+''','+ '
adresse='''+edAdresse.Text+''','+ '
plz='''+edPLZ.Text+''','+ '
wohnort='''+edWohnort.Text+''' '+ 'WHERE
id`='''+edID.Text+''';'; qrMain.ExecSql; //SQL-Statement ausführen
Die Informationen werden aus den entsprechenden Edit-Feldern gelesen. Im Edit-Feld edID muss die ID-Nummer des Datensatzes angegeben werden.