![]() |
Datenbank: Access • Version: 2003 • Zugriff über: ADO
ADOQuery: Wie mit Parametern umgehen?
Ahoi!
Ich habe hier folgenden Code:
Delphi-Quellcode:
In der markierten Zeile hauts mich raus mit:
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;
Code:
Und das, obwohl ich im FormCreate folgendes tu:
---------------------------
Project1 --------------------------- Qry: Parameter 'NID' nicht gefunden. --------------------------- OK ---------------------------
Delphi-Quellcode:
Obwohl ich das in anderen Beiträgen in der DP zu ADO hier noch nie als nötigen Schritt gesehen habe.
with Qry.Parameters do
begin CreateParameter('NID', ftInteger, pdUnknown, High(Integer), 0); CreateParameter('Sub', ftString, pdUnknown, 255, ''); // noch weitere Parameter... end; Was tu ich falsch? \\Edit: Mit Parameters.ParamByName('NID').Value := 123; hab ich den selben Effekt. |
Re: ADOQuery: Wie mit Parametern umgehen?
Hi Fabian,
kann es sein, dass Qry.Connection noch nicht gesetzt ist? Gute Nacht |
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