AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi 2 Tabellen in 1 DBGrid
Thema durchsuchen
Ansicht
Themen-Optionen

2 Tabellen in 1 DBGrid

Ein Thema von Tim Henford · begonnen am 25. Mär 2008 · letzter Beitrag vom 28. Mär 2008
Antwort Antwort
Seite 1 von 2  1 2      
Tim Henford

Registriert seit: 14. Sep 2006
169 Beiträge
 
#1

2 Tabellen in 1 DBGrid

  Alt 25. Mär 2008, 14:32
Datenbank: MS SQL 2000 • Zugriff über: ADO
Hallo,

ist es möglich 2 Tabellen, die identische Strukturen haben in einem DBGrid anzuzeigen?
Delphi-Quellcode:
Tabelle1 Tabelle2

ID Name Vorname ID Name Vorname

1 a d 1 g j
2 b e 2 h k
3 c f 3 i l




DBGRID:

Name Vorname
a d
b e
c f
g j
h k
i l

Vielen Dank

Tim
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: 2 Tabellen in 1 DBGrid

  Alt 25. Mär 2008, 14:34
Entweder per Join (nebeneinander) oder Union (untereinander)
Markus Kinzler
  Mit Zitat antworten Zitat
Tim Henford

Registriert seit: 14. Sep 2006
169 Beiträge
 
#3

Re: 2 Tabellen in 1 DBGrid

  Alt 26. Mär 2008, 16:25
Danke, per Union klappt super.

Kann man jetzt die Tabellen noch irgendwie auseinander halten? Also ich möchte wissen aus welcher Tabelle welcher Name kommt?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: 2 Tabellen in 1 DBGrid

  Alt 26. Mär 2008, 16:30
Erweitere die Abfragen um eine Feld, in das du die Tabelle schreibst
Markus Kinzler
  Mit Zitat antworten Zitat
Tim Henford

Registriert seit: 14. Sep 2006
169 Beiträge
 
#5

Re: 2 Tabellen in 1 DBGrid

  Alt 26. Mär 2008, 16:55
woher bekomm ich denn dann den Tabellennamen bzw. wie bastel ich den noch mit hinein?

SELECT Vorname,Name,ID FROM Tabelle1 UNION SELECT Vorname,Name,ID FROM Tabelle2
  Mit Zitat antworten Zitat
Benutzerbild von joachimd
joachimd

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

Re: 2 Tabellen in 1 DBGrid

  Alt 26. Mär 2008, 17:11
SQL-Code:
SELECT Vorname,Name,ID, 'Tabelle 1as Src FROM Tabelle1
UNION
SELECT Vorname,Name,ID, 'Tabelle 2as Src FROM Tabelle2
Joachim Dürr
Joachim Dürr Softwareengineering
http://www.jd-engineering.de
  Mit Zitat antworten Zitat
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#7

Re: 2 Tabellen in 1 DBGrid

  Alt 27. Mär 2008, 02:33
Wenn ichs richtig verstanden habe, dann möchtest du Daten aus 2 Tabellen in einem Grid darstellen, also Zeile für Zeile.

also in der art
Code:
Tabelle1.Zeile1 Tabelle2.Zeile1
Tabelle1.Zeile2 Tabelle2.Zeile2
usw...
meiner Meinung nach funktioniert das nur praktikabel mit einem Join. Mit einer Union eher weniger.
Zwar kann man, wie joachimd schreibt, den Tabellen in der Anfrage mitgeben, aber mit einer Union bekommst du nur
Code:
Tabelle1.Zeile1 "Tabelle 1"
Tabelle2.Zeile1 "Tabelle 2"
Tabelle1.Zeile2 "Tabelle 1"
Tabelle2.Zeile2 "Tabelle 2"
Ich denke aber das du eher pro Zeile alle Daten haben möchtest.
Ob man über die Fielddefs an den Tabellenname heran kommt, weiß ich nicht genau, konnte man aber probieren.

Mein alternativer Vorlage wäre, die einzelnen Felder zu labeln.
SQL-Code:
SELECT
  a.Vorname as "Tabelle1.name",
  a.Name as "Tabelle1.Name",
  a.ID as "Tabelle1.ID",
  b.Vorname as "Tabelle2.name",
  b.Name as "Tabelle2.Name",
  b.ID as "Tabelle2.ID"
FROM
  Tabelle1 a,
  Tabelle2 b,
WHERE
  a.ID = b.ID -- als beispiel
Die Abfrage muß dann natürlich zB. so lauten
 Query.FieldByName('Tabelle1.Name').AsString; Wenn du das ganze 'n bissl intelligent programmierst, weißt du genau, welches Value aus welcher Tabelle kommt.

  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: 2 Tabellen in 1 DBGrid

  Alt 27. Mär 2008, 06:39
Ich würde Joins nur verwenden, wenn eine Beziehung zwischen den beiden Tabellen besteht.
Markus Kinzler
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#9

Re: 2 Tabellen in 1 DBGrid

  Alt 27. Mär 2008, 07:41
Moin,

Zitat von gmc616:
... Ich denke aber das du eher pro Zeile alle Daten haben möchtest. ...
in Beitrag #1 beschreibt Tim das gewünschte Ergebnis ganz gut und in Beitrag #3 bestätigt er, dass UNION seine Anforderung erfüllt. Du hast dich wohl durch seine Darstellung der beiden Ausgangstabellen nebeneinander irritieren lassen.

Freundliche Grüße
  Mit Zitat antworten Zitat
Tim Henford

Registriert seit: 14. Sep 2006
169 Beiträge
 
#10

Re: 2 Tabellen in 1 DBGrid

  Alt 27. Mär 2008, 09:21
@all: danke für die Hilfe
@gmc616:
dank dir für die Alternative, das wäre sicherlich auch eine interessante Möglichkeit, wie gesagt, für die Anwendung hier ist union das, was ich gesucht habe, aber das andere ist auch recht nützlich...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 19:48 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