Toon posts:

[Delphi] Database wijzigingen detecteren

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hé,

Mijn vraag is hoe ik via Delphi database wijzigingen kan detecteren. Ben wat aan het pielen en klooien geweest. Nu heb ik d.m.v. de functie WaitForSingleObject en het object FindFirstChangeNotification het voor elkaar gekregen in een directory bestanden te detecteren op wijzigingen e.d.
Maar nu wil ik dus graag wijzigingen van een database gaan detecteren, en aan de hand van dit bepaalde acties uitvoeren.

Iemand enig id? Alvast bedankt.

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 18:22

Creepy

Tactical Espionage Splatterer

Heb je zelf enig idee? Heb je al een connectie met de database? Heb je zelf al wat geprobeerd en zo ja, wat ging er mis?

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Verwijderd

Topicstarter
Nou connectie met de database leggen is niet het probleem, alleen het detecteren van wijzigingen op de database. Ik heb geen id welke functie ik hiervoor kan gebruiken.
Ben de 'help' :P aan het doorploeteren, en vind dus de functie die ik hierboven heb gebruikt. Maar dit is alleen voor bestanden e.d. En niet voor databases.

De bedoeling is dat het niet gebeurd via een open dataset. Stel dat ik wijzigingen van 200 á 300 datasets wil detecteren, wil ik niet alle datasets open hebben staan.

Is er misschien via MSSQL een functie die bij het wijzigen van de database een semafoor of events/handles kan starten? Of dat je vanuit Delphi dit kan doen?

Dit was eigenlijk mijn vraag.

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 18:22

Creepy

Tactical Espionage Splatterer

Nope... als je de dataset open hebt staan is er misschien nog 1 en ander af te vangen met de event van de datasets. Anders zal het denk ik niet gaan..

Waarom wil je dit eigenlijk zo graag?

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • LordLarry
  • Registratie: Juli 2001
  • Niet online

LordLarry

Aut disce aut discede

Nee, dat kan niet met semaforen of window events. Heel misschien dat een bepaald soort DBMS zo'n voorziening heeft, maar dat zal dan specifiek voor die DBMS zijn. Triggers hebben de meeste wel. De code die dan uitgevoerd wordt kan je als stored procedure in de DBMS zelf schrijven, maar meestal ook als DLL.

Het kost ook veel te veel resources en performance als je alle clients van alle wijzigingen ten alle tijdenop de hoogte wil houden. Vaak is het ook niet zinnig. Daarom zijn die voorzieningen er niet of nauwelijks.

[ Voor 27% gewijzigd door LordLarry op 24-01-2003 15:53 ]

We adore chaos because we like to restore order - M.C. Escher


Verwijderd

Topicstarter
Ah, c00l. Idd, ik ga trigger ff uitpluizen. Misschien dat ik vanuit daar wel parameters mee kan geven welke wijziging en waar heeft plaats gevonden
/me kijkt verder en bedankt LordLarry en Creepy. Via DLL is het misschien wel te doen.
Ben bezig (of ben bezig, ga beginnen) met data-module te maken, vandaar.

Verwijderd

Topicstarter
Yeah! :D
Via stored procedure een DLL aanroepen. Moet alleen nog ff checken hoe je DLL opbouwt en stuff, maar dat gaat lukken. En via DLL kan ik de semafoor bijvoorbeeld weer starten.
Thnx for the help!!!
Pagina: 1