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
Seite 1 von 2  1 2      
Kostas

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

UniDAC, editierbare Query mit Join geht das?

  Alt 22. Mär 2012, 16:48
Datenbank: Firebird • Version: 1.5 • Zugriff über: UniDAC
Hallo Zusammen,

ich steige soeben um von Delphi5 mit IBO auf Delphi XE2 mit UniDac. (UniDac in der Testphase)
Unter IBO ist es möglich ein Select welcher Joins enthält dennoch edieribar zu halten.
z.B.:
Code:
SELECT A.ADRESSID, A.FIRMA, A.STRASSE, A.ORT, R.RECHNUNGID, R.RECHNUNGNR, R.DATUM
FROM RECHNUNGEN R
JOIN ADRESSEN A ON (A.ADRESSID = R.ADRESSID)
WHERE R.RECHNUNGID = :RECHNUNGID
FOR UPDATES << IBO spezifische Kommandos
Bei IBO setze ich dieses SQL in ein TIB_Query und schon sind die Felder von RECHNUNGEN editierbar.
Die Felder von ADRESSEN sind ReadOnly. TIB_Query baut hierfür automatisch die richtigen SQL Statements
für Insert, Update und Delete.

Kann UniDAC das auch? Wenn nicht wie ist das mit UniDAC zu bewerkstelligen? Muss ich alle SQL Statements
für Update, Insert und Delete selbst schreiben?

Gruß Kostas
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 22. Mär 2012, 16:50
Hinterlege die entsprechenden Abfragen in den Eigenschaften .InsertSQL, .UpdateSQL, .DeleteSQL
Markus Kinzler
  Mit Zitat antworten Zitat
Kostas

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

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 22. Mär 2012, 16:53
Hinterlege die entsprechenden Abfragen in den Eigenschaften .InsertSQL, .UpdateSQL, .DeleteSQL
Hallo Markus,

meine Anfrage ist ja noch Warm und schon eine Antwort!
Muss ich das SQL selbst schreiben, oder wird es automatisch generiert?

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 22. Mär 2012, 16:54
Bei IBDAC kann man sich die Abfrage generieren lassen, sollte dan bei UniDAC genauso sein
Markus Kinzler
  Mit Zitat antworten Zitat
Kostas

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

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 22. Mär 2012, 16:57
Besten Dank Markus.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: UniDAC, editierbare Query mit Join geht das?

  Alt 22. Mär 2012, 17:19
Ein Doppelklick auf die UniQuery Komponente und dann zum Reiter "Generale SQL", der baut alles für Dich
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
tsteinmaurer

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

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.058 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

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.058 Beiträge
 
Delphi 10 Seattle Enterprise
 
#9

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
 
#10

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
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 21:33 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