View Full Version : SQL - Zeichen an bestimmte Stelle schreiben
programmer400
19-07-18, 13:17
Ich müsste in eine Datei, bei der der gesamte Datensatz als ein Feld definiert ist (es ist eine Schnittstellendatei, da ist das so erforderlich) an eine bestimmte Stelle Zeichen schreiben.
D.h. ab Stelle 15 eine 6stellige Ziffernfolge.
Wie geh ich das an?
Per UPDATE mit SUBSTR und CONCAT ...
programmer400
19-07-18, 14:19
Sorry, ich schaffs nicht. Entweder schreibt er mir nur die Zeichenfolge ins Feld und löscht den Rest, oder er schreibt mit die Zeichenfolge an Feldende.
Dschainers
19-07-18, 14:24
update yourFile set substr(field1, 5, 1) = '1' where blah
Google
programmer400
19-07-18, 14:35
update testlib/testfile set substr(testfeld, 4, 6) = 'TEST'
Da bringt er die Meldung "token ungültig"
Dschainers
19-07-18, 14:42
Da hatte ich das Falsche kopiert:
update yourFile set field1 = concat(substr(field1, 1, 4), concat('1', substr(field1, 6, 15))) where blah
Dschainers
19-07-18, 14:46
der 2. substr ist der Rest des Feldes, der wieder hinten dran muß.
Dschainers
19-07-18, 14:54
update lib/testfile
set testfeld = concat(substr(testfeld, 5, 4),
concat('XXXX', substr(testfeld, 9, 60)))
Feld bis vor der Stelle plus neuer Inhalt an der Stelle plus Feld ab nach der Stelle:
UPDATE Datei SET Feld = SUBSTR(Feld, 1, 14) CONCAT '123456' CONCAT SUBSTR(Feld, 21)
programmer400
19-07-18, 15:13
Besten Dank, so hats funktioniert.