AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Mitbekommen wenn sich Daten in der Datenbank ändern
Thema durchsuchen
Ansicht
Themen-Optionen

Mitbekommen wenn sich Daten in der Datenbank ändern

Ein Thema von DelphiManiac · begonnen am 16. Jun 2010 · letzter Beitrag vom 18. Jun 2010
Antwort Antwort
Benutzerbild von joachimd
joachimd

Registriert seit: 17. Feb 2005
Ort: Weitingen
685 Beiträge
 
Delphi 12 Athens
 
#1

AW: Mitbekommen wenn sich Daten in der Datenbank ändern

  Alt 16. Jun 2010, 10:39
Ein Tipp von dem Hersteller der Terminplanerkomponente (TMS-Software) war das man einen Datenbank-Trigger nutzen kann.
1) Du arbeitest über _eine_ Message-Tabelle, in welche alle Events eingetragen werden und pollst diese (einfachste Variante, nur eine Tabelle statt jeder abfragen)
2) Du könntest in .NET (Prism?) eine Stored Procedure schreiben, welche auf dem Netzwerk einen UDP-Broadcast machst und auf diese Pakete client-seitig lauschen
3) Du verwendest Event Notification (ein schneller Google-Lookup zeigt, das die sogar schon in MS SQL 2005 vorhanden sein sollte)
Joachim Dürr
Joachim Dürr Softwareengineering
http://www.jd-engineering.de
  Mit Zitat antworten Zitat
DelphiManiac

Registriert seit: 5. Dez 2005
742 Beiträge
 
#2

AW: Mitbekommen wenn sich Daten in der Datenbank ändern

  Alt 18. Jun 2010, 09:21
Hi,

danke für eure Antworten,
ich tendiere zu Punkt 3.) Event Notifications,

kannst du mir darüber was sagen, wie man diese nutzt ganz generell?!

Gruß
und Danke
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Mitbekommen wenn sich Daten in der Datenbank ändern

  Alt 18. Jun 2010, 09:26
Hallo,

ein kleine Google-Suche ...

http://www.exforsys.com/tutorials/sq...fications.html


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.224 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Mitbekommen wenn sich Daten in der Datenbank ändern

  Alt 18. Jun 2010, 09:38
Weiter Alternative: Umstellung der Anwendung auf N-Tier-Architektur. Nur eine Serverkomponente kommuniziert mit der DB und kann so sehr einfach alle änderungen an alle angemeldeten Clients verteilen.

Als Vorstufe davon gibt es nur eine Event-Komponente die z.B. von jedem Client über änderungen benachrichtigt wird wenn diese Daten in der DB ändern.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
DelphiManiac

Registriert seit: 5. Dez 2005
742 Beiträge
 
#5

AW: Mitbekommen wenn sich Daten in der Datenbank ändern

  Alt 18. Jun 2010, 09:48
Hallo Bernhard,

ich würde liebend gerne noch eine Schicht (Serverschicht) dazwischen setzten, leider denke ich dass ich mir dann einige Probleme ins Haus hole,
da die Terminplanerkomponente (TDBPlanner) von TMS (die im übrigen richtig klasse ist) eine direkte DB-Anbindung benötigt.

oder aber ich nutze dann die DB Verbindungslose Komponente (TPlanner) und setzte dann die Items (Buchungen) selbst ohne direkte DB-Verbindung...

Gruß
DelphiManiac
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.224 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Mitbekommen wenn sich Daten in der Datenbank ändern

  Alt 18. Jun 2010, 10:11
ich würde liebend gerne noch eine Schicht (Serverschicht) dazwischen setzten, leider denke ich dass ich mir dann einige Probleme ins Haus hole,
da die Terminplanerkomponente (TDBPlanner) von TMS (die im übrigen richtig klasse ist) eine direkte DB-Anbindung benötigt.
Wenn du eh nur unter Windows arbeitest könntest du mit ADO-Recordssets arbeiten. Diese können über Rechnergrenzen (vom Middle-Tier zum Client) übertragen werden um am Client einer TADODataset untergeschoben werden so das die DB-Kompos wie gewohnt arbeiten. Frag mich aber nicht nach Details. Ist schon ca. 10 Jahre her das ich das gemacht habe.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:30 Uhr.
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