Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi ADOQuery: Wie mit Parametern umgehen? (https://www.delphipraxis.net/79123-adoquery-wie-mit-parametern-umgehen.html)

dizzy 16. Okt 2006 20:48

Datenbank: Access • Version: 2003 • Zugriff über: ADO

ADOQuery: Wie mit Parametern umgehen?
 
Ahoi!

Ich habe hier folgenden Code:
Delphi-Quellcode:
    with Qry do
    begin
      Close;
      SQL.Clear;
      SQL.Add('INSERT INTO [Mails] (ANameID, ASubject, AText, AItemID, AItemCount, AMoney, AWeek, AYear)');
      SQL.Add('VALUES (:NID, :Sub, :Txt, :IID, :ICnt, :Mny, :WK, :YR)');
      Parameters.ParamValues['NID'] := GetUserID(Mails[i].Sender); // ***
      Parameters.ParamValues['Sub'] := Mails[i].Subject;
      // noch weitere Parameter...
      ExecSQL;
    end;
In der markierten Zeile hauts mich raus mit:
Code:
---------------------------
Project1
---------------------------
Qry: Parameter 'NID' nicht gefunden.
---------------------------
OK  
---------------------------
Und das, obwohl ich im FormCreate folgendes tu:
Delphi-Quellcode:
  with Qry.Parameters do
  begin
    CreateParameter('NID', ftInteger, pdUnknown, High(Integer), 0);
    CreateParameter('Sub', ftString, pdUnknown, 255,          '');
    // noch weitere Parameter...
  end;
Obwohl ich das in anderen Beiträgen in der DP zu ADO hier noch nie als nötigen Schritt gesehen habe.

Was tu ich falsch?


\\Edit: Mit Parameters.ParamByName('NID').Value := 123; hab ich den selben Effekt.

marabu 16. Okt 2006 21:09

Re: ADOQuery: Wie mit Parametern umgehen?
 
Hi Fabian,

kann es sein, dass Qry.Connection noch nicht gesetzt ist?

Gute Nacht

dizzy 16. Okt 2006 21:14

Re: ADOQuery: Wie mit Parametern umgehen?
 
Ne, die ist gesetzt. Aber ich habe den Fehler, und es ist wie immer ein :wall:-Fehler. Die Methode GetUserID() die den Wert für den Parameter ermitteln soll hat die selbe Query zum Ermitteln verwendet, und natürlich alles überschrieben...

Manchmal ist man echt :stupid:, aber danke trotzdem!

Schönen Abend noch.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:47 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