NEWS
Daten(Punkte) aus der SQL Datenbank entfernen
-
Hallo, ich zeichnen einen Sollwert auf, dieser ändert sich mehrere Stunden nicht. Um es trotzdem besser auf Grafana darstellen zu können, habe ich das Aufzeichnen bei keiner Wertänderung auf 900s gestellt. (15min).
Leider hat er bei einer morgigen Schedule heute um 06:00 Uhr den neuen Wert übernommen und den alten nochmals geschrieben (In die Datenbank). (Muss eine Überschneidung gewesen sein)
Schaut man in den DP, so sieht man aber, dass die letzte Änderung des DP´s das Schreiben des neuen Sollwerts war.
Ich habe den Wert schon mal auf 045s hoch gesetzt, so sollte es zumindest bei automatischen Schaltungen, die jede volle Minute erfolgen, nicht zu diesem Effekt kommen.
Nun habe ich allerdings so etwas in meiner Grafik:Tabellarisch:
Nun zu meiner Frage:
Kann ich irgendwie den "falschen" Wert aus der SQL-Datenbank entfernen? -
@ben1983 sagte in Daten(Punkte) aus der SQL Datenbank entfernen:
Kann ich irgendwie den "falschen" Wert aus der SQL-Datenbank entfernen?
Wenns wirklich nur "der eine" falsche Wert ist:
Mit phpMyAdmin auf die DB und in der Tabellets_number
den Eintrag mit der passenden ID (ausdatapoints
) und dem passenden Zeitstempelts
suchen und löschen.
ACHTUNG: Derts
in der DB wird mit Millisekunden gespeichert. Er sollte also 1737090000069 lauten.Man kann auch nach genau den Millisekunden "069" filtern.
Sooooo viele Datensätze sollten da nicht kommen. -
@codierknecht Danke, aber:
- Der Timestamp stimmt irgendwie nicht. Wenn ich den aktuellen in der Datenbank abgelegten Timestamp nehme:
dann bekomme ich auf "173708871805"
sehr merkwürdig
Des weiteren, wäre das noch sehr komisch:
Daten sind vorhanden:
Aber hier:
gibt es die ID nicht... Hä?Raff ich irgendwas nicht?
OK, habe es gefunden.... musste paar durchklicken, da die Spalte name nicht veränderbar in der länge ist und man nicht bei dem Namen filtern konnte.
Ist wohl doch da, aber trotzdem bleibt das Phänomen mit den ts. - Der Timestamp stimmt irgendwie nicht. Wenn ich den aktuellen in der Datenbank abgelegten Timestamp nehme:
-
@ben1983 sagte in Daten(Punkte) aus der SQL Datenbank entfernen:
Aber hier ... gibt es die ID nicht... Hä?
Du musst in
ts_number
nach der id suchen. Die findest Du in der Tabelledatapoints
.Welchen Wert willst Du denn löschen?
Vermutlich meinte ich mit "069" den falschen. -
@ben1983
Wenn es für Dich einfacher ist: Lass Dir einfach den Zeitstempel in lesbarer Form mit ausgeben:SELECT *, from_unixtime(ts/1000) AS zeit FROM ts_number WHERE id = 20 ORDER BY ts desc, id;
Das relationale Modell sieht an der Ecke übrigens so aus:
-
Warum den komplexen Weg über SQL gehen?
Wenn mir ein Datenpunkt ein Diagramm verhunzt, gehe ich über Objekte in diesen Datenpunkt. Hier suche ich dann in Diagramm diesen Datenpunkt heraus, ggf. reinzoomen in den Bereich. Dann springe ich in Verlaufsdaten und suche mir hier den Datenpunkt. Auf den Wert setzen und oben rechts auf den Mülleimer klicken. Schon ist der Datenpunkt in der SQL-Datenbank gelöscht.
Mit Shift kann man auch mehrere Werte auf einmal löschen. -
@ralf-2 sagte in Daten(Punkte) aus der SQL Datenbank entfernen:
oben rechts auf den Mülleimer klicken
Welchen Mülleimer?
-
So sieht es bei mir aus.
-
@ralf-2 sagte in Daten(Punkte) aus der SQL Datenbank entfernen:
So sieht es bei mir aus.
Ahh ... mit eingeschaltetem Expertenmodus
Man lernt nie aus.
Schadet aber auch nicht, wenn man weiß wie es direkt in der DB geht. -
@codierknecht
Nein SQL, ich habe bei mir aber den Expertenmosus (grüner Kopf) aktiviert. Wußte gar nicht, das dies erst die Funktion aktiviert:
-
@ralf-2 sagte in Daten(Punkte) aus der SQL Datenbank entfernen:
ich habe bei mir aber den Expertenmosus (grüner Kopf) aktiviert
Den sollte man aber nur dann aktivieren, wenn man ihn wirklich braucht.
Und danach wieder abschalten.Sorry - mein Edit hat ein wenig den Sinn verstellt
-
@ralf-2 sagte in Daten(Punkte) aus der SQL Datenbank entfernen:
Wußte gar nicht, das dies erst die Funktion aktiviert:
löschen und Bearbeiten von Einträgen geht nur im Expertenmodus.
Bleistift und Mülleimer sind ansonsten nicht sichtbar -
@codierknecht ich hatte das geschrieben, weil die timestamps 4,5 Stunden in der Vergangenheit liegen (auch die aktuellen)
-
Installier Dir einfach HeidiSQL, wenn Du mysql oder mariadb als Datenbank nutzt und lösch Dir die Datenpunkte grafisch raus.
Einfach die entsprechenden Zeilen markieren. Ctrl+Del drücken
Abfrage bestätigen und schon ist der Spuk vorbei. Man kann sich das Leben auch schwer machen.
-
@mickym
Geht mit phpMyAdmin ja genau so einfach.... wenn man denn weiß, wonach man suchen muss
-
@codierknecht Das ist mir alles klar, aber ich weiss eben nicht, wie ich den Zeitstempel finden soll,
dann dieser werden hier angezeigt...Der erste wäre ja bspw. das hier:
Ich zeichne aber erst seit 3 Tagen auf oder so. Das kann gar nicht sein.
-
@ben1983
Nimm mein SQL von oben:SELECT *, from_unixtime(ts/1000) AS zeit FROM ts_number WHERE id = 20 ORDER BY ts desc, id;
Du kannst oben auf "Inline bearbeiten" gehen und mein SQL einfügen. Dann hast Du auch die "lesbare" Zeit zu den Einträgen.