SQL Statements ausführen
Verfasst: 13. Jan 2026 08:26
Hallo Zusammen,
ich nutze Openhab 5.1 unter Win11, wo Openhab als Service läuft. Dazu habe noch eine MariaDB über das Plugin zur Persistenz angebunden. Items werden dort wunderbar einzeln auf Tabellen gespeichert.
Ich würde allerdings gerne eine Tabelle folgenden Aufbaus nutzen:
Timestamp, Value Item1, Value Item 2
Ich habe schon einige Wege versucht, auch mit der Unterstützung vom Copilot, aber bin nirgends auf eine Lösung gestoßen, mit der ich arbeiten kann. Derzeit schein mit der einzig gangbare Weg zu sein, ein String Item in Openhab aufzubauen, welches ein JSON aufnimmt, indem ich die Werte abgespeichert habe. Grafana kann das wieder auseinander nehmen und mir die Werte als einzelne Spalten anzeigen aber... schön ist das nicht.
Somit suche ich weiterhin einen einfachen gangbaren Weg, wie ich ein SQL Insert Statement so abschicken kann, dass es funktioniert, oder im besten Fall, das vorhandene und genutzte Persistenz Plugin so zu nutzen, das es auch hier möglich wäre einen solchen INSERT zu machen.
Weitere Vorschläge waren bislang eine MariaDB Event zu nutzen, was mir die Werte aus bereits gespeicherten Tabellen ausließt und in die neue Tabelle schreibt, was ich aber auch eher als Behelfslösung einstufe.
Oder es kam der Vorschlag ein Powershell Skript aufzurufen, was den Insert macht. Hier kommt man allerdings auf Rechteprobleme innerhalb von Windows. Es scheint zudem Unterschied zu geben zwischen Openhab auf Linux vs. Windows. Nicht alles was unter Linux funktioniert klappt auch unter Windows.
Wenn ich doch mit dem Persistenz Plugin eine Tabelle anlegen und mit einem Item beschreiben kann, warum nicht auch mehrere Items in eine Tabelle. Kann es das? Kann es das nicht? In der Doku habe ich nichts dazu gefunden. Wäre das mal ein Update des Plugins Wert?
Würde mir ggf. ein Wechsel der DB etwas bringen, wenn ich z.B. MySQL nutzen würde anstatt MariaDB?
Für Vorschläge bin ich offen. Danke
Gruß
ich nutze Openhab 5.1 unter Win11, wo Openhab als Service läuft. Dazu habe noch eine MariaDB über das Plugin zur Persistenz angebunden. Items werden dort wunderbar einzeln auf Tabellen gespeichert.
Ich würde allerdings gerne eine Tabelle folgenden Aufbaus nutzen:
Timestamp, Value Item1, Value Item 2
Ich habe schon einige Wege versucht, auch mit der Unterstützung vom Copilot, aber bin nirgends auf eine Lösung gestoßen, mit der ich arbeiten kann. Derzeit schein mit der einzig gangbare Weg zu sein, ein String Item in Openhab aufzubauen, welches ein JSON aufnimmt, indem ich die Werte abgespeichert habe. Grafana kann das wieder auseinander nehmen und mir die Werte als einzelne Spalten anzeigen aber... schön ist das nicht.
Somit suche ich weiterhin einen einfachen gangbaren Weg, wie ich ein SQL Insert Statement so abschicken kann, dass es funktioniert, oder im besten Fall, das vorhandene und genutzte Persistenz Plugin so zu nutzen, das es auch hier möglich wäre einen solchen INSERT zu machen.
Weitere Vorschläge waren bislang eine MariaDB Event zu nutzen, was mir die Werte aus bereits gespeicherten Tabellen ausließt und in die neue Tabelle schreibt, was ich aber auch eher als Behelfslösung einstufe.
Oder es kam der Vorschlag ein Powershell Skript aufzurufen, was den Insert macht. Hier kommt man allerdings auf Rechteprobleme innerhalb von Windows. Es scheint zudem Unterschied zu geben zwischen Openhab auf Linux vs. Windows. Nicht alles was unter Linux funktioniert klappt auch unter Windows.
Wenn ich doch mit dem Persistenz Plugin eine Tabelle anlegen und mit einem Item beschreiben kann, warum nicht auch mehrere Items in eine Tabelle. Kann es das? Kann es das nicht? In der Doku habe ich nichts dazu gefunden. Wäre das mal ein Update des Plugins Wert?
Würde mir ggf. ein Wechsel der DB etwas bringen, wenn ich z.B. MySQL nutzen würde anstatt MariaDB?
Für Vorschläge bin ich offen. Danke
Gruß