Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   MSSQL Query Abfrage wie DataRefresh ausführen (https://www.delphipraxis.net/158690-mssql-query-abfrage-wie-datarefresh-ausfuehren.html)

msickel 26. Feb 2011 22:42

Datenbank: MSSQL • Version: 2005 • Zugriff über: ADO

MSSQL Query Abfrage wie DataRefresh ausführen
 
Hallo

Ich stehe vor einem Problem und wollte mal fragen ob jemand helfen kann.

Ich habe eine Connection zu einem SQL 2005 Server via AdoConnection aufgebaut, das geht soweit ganz gut.
Über AdoQuery kann ich einen SQL Select machen was auch ganz gut funktioniert.

Nun ändere ich die Daten an einem anderen PC und führe den gleichen Select an meinem ersten PC aus, leider kann er die hinzugefügten oder geänderten Daten nicht finden, erst nachdem ich das Programm neu gestartet habe geht der Select im AdoQuery wieder.

Wie kann ich das ganze ohne Neustart der Software hinbekommen.

Ich habe das ganze dann noch via AdoTable versucht, auch hier ist es so das ein Refresh keinen Erfolg bringt, erst das deaktivieren der AdoTable mit einem anschliessenden aktivieren zeigt die neuen Daten.

Das muss doch auch eleganter gehen, wie muss ich vorgehen?


Martin

Bummi 26. Feb 2011 22:47

AW: MSSQL Query Abfrage wie DataRefresh ausführen
 
wenn Du den DBNavigator-Button und Refresh meinst:
Delphi-Quellcode:
procedure TForm1.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
begin
   if Button = nbRefresh then
     TCustomADODataSet(TDBNavigator(Sender).DataSource.DataSet).Requery;
end;
gegf. eine Komponente für ADO ableiten...

msickel 27. Feb 2011 07:28

AW: MSSQL Query Abfrage wie DataRefresh ausführen
 
Zitat:

Zitat von Bummi (Beitrag 1084613)
wenn Du den DBNavigator-Button und Refresh meinst:
Delphi-Quellcode:
procedure TForm1.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
begin
   if Button = nbRefresh then
     TCustomADODataSet(TDBNavigator(Sender).DataSource.DataSet).Requery;
end;
gegf. eine Komponente für ADO ableiten...

Danke für die schnelle Antwort, aber ich möchte den Refresh nicht via DBNavigator machen.

Ich schreib mal was ich habe.

Delphi-Quellcode:
Adoquery1.Active := False;
DataSource1.DataSet := AdoQuery1;
AdoQuery1.SQL.Clear;
AdoQuery1.SQL.Add('select * from CALLLog Where ID Like ' + QuotedStr('%' + sSearchText.Text + '%'));
AdoQuery1.Active := True;
Wie kann ich nun hierbei eine Änderung der Daten mitbekommen?

Martin

Bummi 27. Feb 2011 07:54

AW: MSSQL Query Abfrage wie DataRefresh ausführen
 
Wenn Du nicht mit Transaktionen rumspielst musst Du gepostete Änderungen andere mit AdoQuery1.Requery mitbekommen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:51 Uhr.

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