AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Prism Arbeiten mit Temporär-Query
Thema durchsuchen
Ansicht
Themen-Optionen

Arbeiten mit Temporär-Query

Ein Thema von gluglu · begonnen am 7. Jan 2006 · letzter Beitrag vom 7. Jan 2006
Antwort Antwort
gluglu

Registriert seit: 10. Dez 2005
32 Beiträge
 
#1

Arbeiten mit Temporär-Query

  Alt 7. Jan 2006, 12:31
Datenbank: InterBase • Version: 7.5 • Zugriff über: TIBQuery
Hallo !

Ich möchte mein IBQuery1 füllen mit verschieden Daten die aus verschiedenen Select's gewonnen werden, je nach Datum und andere Bedingungen. Wie kann ich Append, oder Delete ausführen auf IBQuery1 ohne auf die jeweilige Tabelle diese Append oder Delete auszuführen.

Ich hatte forgendes for :
Delphi-Quellcode:
with DataModule1.IBQueryCheck do begin
  ...
  SQL.Add('Select * from TABELLE1 where ...');
  ...

  First;
  while not Eof do begin
     ...
     DataModule1.IBQuery1.Append;
     DataModule1.IBQuery1.FieldByName('...').Value := FieldByName('...erstes feld aus Tabelle1').Value;
     ...
     Next
  end;

end;
Wie definiere ich IBQuery1 um dieses zu ermöglichen ?
  Mit Zitat antworten Zitat
sir-archimedes

Registriert seit: 2. Jan 2006
Ort: Münster
167 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Arbeiten mit Temporär-Query

  Alt 7. Jan 2006, 13:05
Ich würde sagen, dass das so ohne weiteres gar nicht geht. Ein Query-Objekt in Delphi ist immer mit der Datenbank verbunden. Wenn du eine Zeile hinzufügst, wird zu der Tabelle der Datenbank auch eine Zeile hinzugefügt. Falls die Abfrage nicht editierbar ist, kannst du keine Zeilen hinzufügen.

Wenn du ausschließlich Daten anzeigen und nicht ändern möchtest, würde ich dir empfehlen, das mit einem UNION Konstrukt zu lösen:

SQL-Code:
SELECT ID, Beschreibung, Datum FROM Tabelle1 WHERE Datum > '01.01.2005'

UNION ALL

SELECT ID, Beschreibung, Datum FROM Tabelle2 WHERE Datum < '01.01.2005AND Beschreibung LIKE '%Filter%'
Das zum Beispiel würde dir aus Tabelle1 alle Einträge nach dem 01.01.2005 und aus Tabelle2 alle vor dem 01.01.2005, die auch noch die Bedingung "Beschreibung like '%Filter%'" erfüllen in einem Dataset zurückgeben.

Dann musst du nicht mehr mit Delphi versuchen alles in eine Tabelle zu quetschen.

Allerdings sind die Datasets so nicht mehr editierbar.

Gruß,
Dominik
  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 05:20 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