update (sql-stmt a, alias b, list c, ignore error d)
Gruppe |
Mit dieser Funktion können Sie ein Update-Statement a ausführen auf Datenbank b. Im Update-Statement können Platzhalter verwendet werden, die mit Werten aus der Liste c gefüllt werden. Details dazu finden Sie im Beispiel unten.
Als Rückgabewert liefert die Funktion die Anzahl der veränderten Datenbank-Tabellen-Zeilen. Ist d auf true, dann ist bei einem SQL-Fehler der Rückgabewert -1.
Parameterbeschreibung
Parameter |
Beschreibung |
a |
Auszuführendes Update-Statement. |
b |
Der Datenbank-Alias. Ein Datenbank-Alias ist eine konfigurierte Verbindung zu einem Datenbanksystem (siehe Konfigurationsdatei ./etc/database.xml und Abschnitt DatabaseService). |
c |
Der Name der Liste. |
d |
(optional) Falls true, dann werden SQL-Fehler, die von der Datenbank gemeldet werden, ignoriert. Default: <leer> (== false). |
Beispiel
Wir verwenden die folgende Funktions-Kette. Wir füllen zuerst eine Liste mit den Update-Parametern und verwenden diese dann in den Platzhaltern im Update-Statement.
add to list(a,b,c)
a Value: 12463,file_test.csv
b Value: updatelist
c Value: ,
update (sql-stmt a, alias b, list c, ignore error d)
a Value: update dw_log set file_name=@2:s@ where dw_job=@1:l@
b Value: hub
c Value: updatelist
d Value:
Das ausgeführte Update-Statement lautet hier update dw_log set file_name='file_test.csv' where dw_job=12463
Die Syntax für die Parameter lautet @Parameternummer:Parametertyp@. Die Parameternummer ist hier die Position eines Wertes in der Liste und der Parametertyp s steht für String und I für Integer. Details zu den Datentypen finden Sie in der Dokumentation der Klasse DefaultSQLCron.
Siehe auch
update-statement a, alias b [[param &1 = c],d,e,f,g,h,i,j,[k],[l],[m]]
select-statement a [[param &1 = c], d,e, f,g,h,i,j], default k,l dbAlias = b
exists db-row(select-statement a [[param &1 = c], d,e,f,g,h,i,j])
select into map(a,b,[param &1 = c], d,e, f,g,h,i,j], delimiter k, map l, m)
select into map(a,b,list name c, delimiter d, map e, f, g, h)
set-vars(select a, dbalias b, [c,d,e,f,g,h,i,j for params &1...&8][,k]