Hallo zusammen,
gibt es eine halbwegs einfache Möglichkeit die Werte in der Datenbank nachträglich zu verändern?
Es geht um Werte eines Gaszählers, die durch 10 dividiert werden sollen, also jeder einzelne Wert / 10.
Auf die Schnelle habe ich in der DBRep Wiki keine klare Möglichkeit gefunden, aber evtl. übersehe ich da etwas.
Der DB-Inhalt sieht wie folgt aus:
| 2023-05-20 09:15:27 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12313 | Gaszaehler_Longcount | 12313 | NULL |
| 2023-05-20 09:17:27 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12314 | Gaszaehler_Longcount | 12314 | NULL |
| 2023-05-20 09:20:27 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12315 | Gaszaehler_Longcount | 12315 | NULL |
| 2023-05-20 09:23:27 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12316 | Gaszaehler_Longcount | 12316 | NULL |
| 2023-05-20 09:25:27 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12317 | Gaszaehler_Longcount | 12317 | NULL |
| 2023-05-20 09:28:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12318 | Gaszaehler_Longcount | 12318 | NULL |
| 2023-05-20 09:30:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12319 | Gaszaehler_Longcount | 12319 | NULL |
| 2023-05-20 09:33:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12320 | Gaszaehler_Longcount | 12320 | NULL |
| 2023-05-20 09:36:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12321 | Gaszaehler_Longcount | 12321 | NULL |
| 2023-05-20 09:38:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12322 | Gaszaehler_Longcount | 12322 | NULL |
| 2023-05-20 09:41:30 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12323 | Gaszaehler_Longcount | 12323 | NULL |
| 2023-05-20 09:43:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12324 | Gaszaehler_Longcount | 12324 | NULL |
| 2023-05-20 09:46:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12325 | Gaszaehler_Longcount | 12325 | NULL |
| 2023-05-20 09:49:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12326 | Gaszaehler_Longcount | 12326 | NULL |
| 2023-05-20 09:51:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12327 | Gaszaehler_Longcount | 12327 | NULL |
| 2023-05-20 09:54:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12328 | Gaszaehler_Longcount | 12328 | NULL |
| 2023-05-20 09:57:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12329 | Gaszaehler_Longcount | 12329 | NULL |
| 2023-05-20 09:59:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12330 | Gaszaehler_Longcount | 12330 | NULL |
| 2023-05-20 10:02:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12331 | Gaszaehler_Longcount | 12331 | NULL |
| 2023-05-20 10:04:24 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12332 | Gaszaehler_Longcount | 12332 | NULL |
nach der Manipulation sollte dann folgendes in der DB stehen:
| 2023-05-20 09:15:27 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12313 | Gaszaehler_Longcount | 1231.3 | NULL |
| 2023-05-20 09:17:27 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12314 | Gaszaehler_Longcount | 1231.4 | NULL |
| 2023-05-20 09:20:27 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12315 | Gaszaehler_Longcount | 1231.5 | NULL |
| 2023-05-20 09:23:27 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12316 | Gaszaehler_Longcount | 1231.6 | NULL |
| 2023-05-20 09:25:27 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12317 | Gaszaehler_Longcount | 1231.7 | NULL |
| 2023-05-20 09:28:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12318 | Gaszaehler_Longcount | 1231.8 | NULL |
| 2023-05-20 09:30:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12319 | Gaszaehler_Longcount | 1231.9 | NULL |
| 2023-05-20 09:33:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12320 | Gaszaehler_Longcount | 1232.0 | NULL |
| 2023-05-20 09:36:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12321 | Gaszaehler_Longcount | 1232.1 | NULL |
| 2023-05-20 09:38:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12322 | Gaszaehler_Longcount | 1232.2 | NULL |
| 2023-05-20 09:41:30 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12323 | Gaszaehler_Longcount | 1232.3 | NULL |
| 2023-05-20 09:43:26 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12324 | Gaszaehler_Longcount | 1232.4 | NULL |
| 2023-05-20 09:46:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12325 | Gaszaehler_Longcount | 1232.5 | NULL |
| 2023-05-20 09:49:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12326 | Gaszaehler_Longcount | 1232.6 | NULL |
| 2023-05-20 09:51:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12327 | Gaszaehler_Longcount | 1232.7 | NULL |
| 2023-05-20 09:54:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12328 | Gaszaehler_Longcount | 1232.8 | NULL |
| 2023-05-20 09:57:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12329 | Gaszaehler_Longcount | 1232.9 | NULL |
| 2023-05-20 09:59:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12330 | Gaszaehler_Longcount | 1233.0 | NULL |
| 2023-05-20 10:02:25 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12331 | Gaszaehler_Longcount | 1233.1 | NULL |
| 2023-05-20 10:04:24 | AC | ARDUCOUNTER | Gaszaehler_Longcount: 12332 | Gaszaehler_Longcount | 1233.2 | NULL |
Der Setter
changeValue
mit der Perl code enclosed in {"..."}-Option sollte das tun was du suchst. Also:
... new={"$VALUE = $VALUE/10"}
Denke an ein Backup oder vllt. hast du eine DB zum üben vorher.
Die Selektionskriterien (Device, Reading) richtig einstellen damit auch nur die richtigen Datensätze umgesetzt werden.
Hallo Heiko,
danke, das ist genau das was ich gesucht habe :-)
Gruß
Alex