AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

DB-Abfragen in Thread - dann joinen

Ein Thema von hschmid67 · begonnen am 28. Sep 2019 · letzter Beitrag vom 29. Sep 2019
 
hschmid67

Registriert seit: 2. Jul 2012
Ort: Weilheim i. Obb.
75 Beiträge
 
Delphi 12 Athens
 
#4

AW: DB-Abfragen in Thread - dann joinen

  Alt 28. Sep 2019, 15:13
Hallo K-H,

entschuldige, hab mich wohl etwas kompliziert ausgedrückt:

Ich möchte Daten aus verschiedenen Datenbanken abfragen, also 2, 3, 4 Queries und diese dann miteinander verknüpfen, also dann mit einem Join verbinden also etwa

Code:
SELECT
  q1.feld_a,
  q2.feld_b,
  q3.feld_c
FROM
  db1.tabelle1 q1
  LEFT JOIN db2.tabelle2 q2
  LEFT JOIN db3.tabelle3 q3
Und da ich q1 z.B. lokal liegen hab, sind diese Daten sehr schnell verfügbar, q2 kommt aus einem entfernten MSSQL-Server und q3 vielleicht auch noch aus einem REST-Aufruf, dessen Ergebnis ich zum TDataset mache.

Vielleicht noch eine Ergänzung:

Mit TVirtualQuery (ist bei UniDAC von Devart dabei) kann man Abfragen aus verschiedenen Datasets erzeugen. Daher würde das Ganze dann zwar zuletzt in einer Abfrage stattfinden, zunächst aber kommen die db1.tabelle1, db2.tabelle2 und db3.tabelle3 aus jeweils einem eigenen Tquery-Objekt, sind also drei getrennte DB-Aufrufe, die dann in einem TVirtualQuery verbunden werden.

Wie gesagt, das funktioniert ohne Threads sehr gut, nur eben langsam und mit langer Wartezeit...

Viele Grüße
Harald
Harald Schmid

Geändert von hschmid67 (28. Sep 2019 um 15:24 Uhr)
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 18:28 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