AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Parameter unter Firedac
Thema durchsuchen
Ansicht
Themen-Optionen

Parameter unter Firedac

Ein Thema von Delbor · begonnen am 4. Mär 2016 · letzter Beitrag vom 11. Mär 2016
 
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.192 Beiträge
 
Delphi 11 Alexandria
 
#1

Parameter unter Firedac

  Alt 4. Mär 2016, 13:47
Datenbank: MySQL • Version: 5.9xxx • Zugriff über: Firedac
Hi zusammen

Das hier ist eine der Proceduren, die ablaufen, wenn ein Bild in meine DB aufgenommen werden soll. Eingeführt wurde sie unter DBExpress; Jetzt, unter Firedac, hab ich bis auf das beteiligte Query nichts geändert. Auch in den andern Proceduren nicht. Und es tut genau, was es soll.
In den letzten Tagen habe ich wohl beinahe "jeden Stein umgedreht" nach der Suche, wie Firedac mit Abfrageparametern umgeht. Die entsprechenden Codebeispiele von Embarcadero arbeiten alle mit "ParamsByName.(..).add." ohne die Parameter (oder wenigstens die Parameter-Collection) vorher zu erzeugen.
Auch in den Sourcen habe ich keinen Hinweis darauf gefunden, dass und wo die Params-Collection erzeugt werden. Und da selbst Delphi es nicht schafft, mit nichterzeugten Objekten zu arbeiten ( ):
  • Wieso das untenstehende funktioniert, kannn ich mir mit gutem Willen ja noch vorstellen
  • Wenn unter Firedac die Parameter-Items (CollectionItems) nur hinzugefügt werden müssen,
  • warum funktioniert meinn Zeugs, obwohl ich 3 zusätzliche Parameter erzeuge?

Delphi-Quellcode:
procedure TFDMySQLDml.kategorien_bildDescribeTabelleInsert(BildDescribeLastID: Integer;bildtabelle_idbild: Integer);
  var kategorien_tabelle_Kath_ID, BildDescribeTabelle_BilddesribeID,
      BildDescribeTabelle_Bildtabelle_idBild: Integer;
      SQLString: String;
begin
  kategorien_tabelle_Kath_ID := ApplicationManager.CategoryKey;
  BildDescribeTabelle_BilddesribeID := BildDescribeLastID;
  BildDescribeTabelle_Bildtabelle_idBild := bildtabelle_idbild;
  SQLString := 'Insert Into kategorien_tabelle_has_bildDescribeTabelle'+
                            '(kategorien_tabelle_Kath_ID,'+
                            'BildDescribeTabelle_BilddesribeID,' +
                            'BildDescribeTabelle_Bildtabelle_idBild) ' +
                            'Values (:kategorien_tabelle_Kath_ID,' +
                                    ':BildDescribeTabelle_BilddesribeID,' +
                                    ':BildDescribeTabelle_Bildtabelle_idBild)';
  if (FDQueryMain.Active) then
    FDQueryMain.Active := False;
  FDQueryMain.SQL.Text := SQLString;
  FDQueryMain.Params.CreateParam(ftinteger, 'kategorien_tabelle_Kath_ID', ptInput);
  FDQueryMain.Params.CreateParam(ftInteger, 'BildDescribeTabelle_BilddesribeID', ptInput);
  FDQueryMain.Params.CreateParam(ftInteger, 'BildDescribeTabelle_Bildtabelle_idBild', ptInput);
  FDQueryMain.Params[0].AsInteger := kategorien_tabelle_Kath_ID;
  FDQueryMain.Params[1].AsInteger := BildDescribeTabelle_BilddesribeID;
  FDQueryMain.Params[2].AsInteger := BildDescribeTabelle_Bildtabelle_idBild;
  FDQueryMain.ExecSQL(false);
  FReportList.Add(' -TPicAdmin.kategorien_bildDescribeTabelleInsert');
end;
Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat
 


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 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz