AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken UniDAC, editierbare Query mit Join geht das?
Thema durchsuchen
Ansicht
Themen-Optionen

UniDAC, editierbare Query mit Join geht das?

Ein Thema von Kostas · begonnen am 22. Mär 2012 · letzter Beitrag vom 23. Mär 2012
Antwort Antwort
tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#1

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 22. Mär 2012, 19:21
@Kostas: Off-Topic: Der Kostas, der vor VIELEN Jahren beim ersten Firebird-Barbecue in Freiburg mit dabei war? Wenn ja: Schön von dir zu hören!
  Mit Zitat antworten Zitat
Kostas

Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.073 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 23. Mär 2012, 08:21
@Kostas: Off-Topic: Der Kostas, der vor VIELEN Jahren beim ersten Firebird-Barbecue in Freiburg mit dabei war? Wenn ja: Schön von dir zu hören!
Hi Thomas,
genau der immer noch der gleiche. Ich freue mich auch von dir zu hören. Ich schreibe dir später eine PN.


Gruß Kostas
  Mit Zitat antworten Zitat
Kostas

Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.073 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 23. Mär 2012, 08:38
Bitte noch eines zu UniDAC,

ist es auch möglich zur Laufzeit das WHERE zu erweitern?

Bei IBO schreibe ich in der TIB_Query z.B.:

Code:
SELECT ADRESSID, FIRMA, STRASSE, PLZ, ORT
  FROM ADRESSEN
 WHERE PLZ = :PLZ
TIB_DataSource hat ein Event OnPrepareSQL. Da schreibe ich z.B.:
Code:
  with qrAdressen.SQLWhereItems do
  begin
    if (edFirmaSuchen.txt <> '')  
    then add('FIRMA CONTAINING '' + edFirmaSuchen.txt + ''');
  end;{with}
Ich kann also zur Laufzeit das Where beliebig erweitern.
Für den Aufruf führe ich das aus:
Code:
qrAdressen.InvalidateSQL;
qrAdressen.refresh;
Dabei wird das Where in dem SQL mit dem erweiterten Bedingungen gemischt.
Es entsteht also:
Code:
WHERE PLZ = :PLZ
  AND FIRMA CONTAINING 'blablabla'

Gruß Kostas
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 23. Mär 2012, 08:50
Grundsätzlich geht das Anhängen natürlich
Delphi-Quellcode:
with qrAdressen.SQL do
  begin
    if (edFirmaSuchen.txt <> '')
    then add('FIRMA CONTAINING '' + edFirmaSuchen.txt + ''');
  end;{with}
Allerdings fehlt das Ereignis in der DataSource.

Ich würde es aber eher so Lösen:

SQL-Code:
SELECT ADRESSID, FIRMA, STRASSE, PLZ, ORT
  FROM ADRESSEN
 WHERE
    PLZ = :PLZ and
    ( :firma = 'or :firma is null or FIRMA CONTAINING = :firma);
Markus Kinzler
  Mit Zitat antworten Zitat
Kostas

Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.073 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 23. Mär 2012, 09:03
Hallo Markus,

wenn ich dich richtig verstehe, gibt es kein extra Container für das Where.
Ich muss also im property SQL das komplette SQL incl. where neu bilden.


Gruß Kostas
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 23. Mär 2012, 09:12
Nein meines Wissens nicht
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
796 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 23. Mär 2012, 10:05
Schau dir mal den Gebrauch von Macros bei UniDac an, damit kannst du komplette Konstrukte erzeugen, ohne die Abfrage jedes Mal neu aufzubauen.

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  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 00:37 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