Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi MariaDB: Event bei neuem Datensatz (https://www.delphipraxis.net/217776-mariadb-event-bei-neuem-datensatz.html)

Helmi 4. Sep 2025 14:15

Datenbank: MariaDB • Version: 10.5.8 • Zugriff über: Zconnection

MariaDB: Event bei neuem Datensatz
 
Hallo Zusammen,

in der Zwischenzeit hab ich erfolgreich eine MariaDB am Laufen und kann gemütlich reinschreiben und Daten auslesen.

Dabei hab ich ein altes Delphi-Programm reaktiviert, dass aus einer Datenbank Temperatur und Feuchtigkeitswerte ausliest und grafisch darstellt.
Diese Werte werden von einem ESP8266 regelmäßig eingetragen.

Früher hatte ich eine FireBird 2.5 Datenbank für die Werte und darin ein Event, dass jedes Mal abgesetzt wurde, wenn ein neuer Datensatz vorhanden ist.
In meinem Programm hab ich einen ZIBEventAlerter dafür platziert gehabt, bei dem dann "ZIBEventAlerterEventAlert" getriggert wurde, wenn das Event zuschlag.

Ich hätte so etwas jetzt auch gerne bei der MariaDB.
Ist so etwas möglich und falls ja, wie kann ich das realisieren?

Uwe Raabe 4. Sep 2025 14:26

AW: MariaDB: Event bei neuem Datensatz
 
Soweit mir bekannt unterstützen weder MySQL noch MariaDB solche Benachrichtigungen - zumindest nicht mit Bordmitteln.

Das ist vermutlich auch der Grund, warum diese Datenbanken in der entsprechenden Liste von FireDAC nicht vorkommen: https://docwiki.embarcadero.com/RADS...erts_(FireDAC)

Helmi 4. Sep 2025 14:32

AW: MariaDB: Event bei neuem Datensatz
 
so eine Antwort hab ich irgendwie schon erwartet
bin schon eine Zeit lang auf der Suche - aber finde nichts
ist jetzt auch nicht so tragisch, darauf kann ich verzichten
könnte natürlich auch mit einem Timer "triggern"

Frickler 4. Sep 2025 16:06

AW: MariaDB: Event bei neuem Datensatz
 
Der ESP greift direkt auf die Datenbank zu?

Redeemer 4. Sep 2025 16:29

AW: MariaDB: Event bei neuem Datensatz
 
Wir haben hier so etwas mit PRTG (immerhin auch ein Delphi-Programm) am laufen. Das funktioniert aber andersrum: Der ESP8266 stellt einen Webserver zur Verfügung, der die Werte im von PRTG erwarteten Form ausgibt, wenn man ihn aufruft.

Helmi 4. Sep 2025 16:46

AW: MariaDB: Event bei neuem Datensatz
 
der ESP schreibt gemütlich in die Datenbank rein
ein Delphi-Programm holt sich die Daten und zeigt sie grafisch an

Frickler 4. Sep 2025 16:55

AW: MariaDB: Event bei neuem Datensatz
 
Dann wird das wohl auf Polling hinauslaufen. Das Delphi Prg schaut regelmäßig nach, obs was neues gibt.

DaCoda 5. Sep 2025 08:03

AW: MariaDB: Event bei neuem Datensatz
 
Ich mache das bei MariaDB mit einem Trigger, wenn es neue Daten gibt, oder etwas verändert wurrde und setze dann ein Flag. Das Delphi Programm schaut zyklisch auf das Flag und reagiert entsprechend.

DaCoda 5. Sep 2025 08:11

AW: MariaDB: Event bei neuem Datensatz
 
Oder wenn du es ganz simpel machen möchtest, dann vielleicht so in der Art:

Code:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  FDQuery1.SQL.Text := 'SELECT MAX(last_modified) FROM deine_tabelle';
  FDQuery1.Open;
  if FDQuery1.Fields[0].AsDateTime > LetzterZeitstempel then
  begin
    // Änderung erkannt – aktualisiere Anzeige
    LetzterZeitstempel := FDQuery1.Fields[0].AsDateTime;
    AktualisiereDaten();
  end;
end;

Helmi 5. Sep 2025 08:17

AW: MariaDB: Event bei neuem Datensatz
 
Zitat:

Zitat von DaCoda (Beitrag 1551513)
Ich mache das bei MariaDB mit einem Trigger, wenn es neue Daten gibt, oder etwas verändert wurrde und setze dann ein Flag. Das Delphi Programm schaut zyklisch auf das Flag und reagiert entsprechend.

das hört sich sehr interessant an

Hättest du hierfür vielleicht ein Beispiel?


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:22 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz