Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   TAdoQuery Fehler "Parameter sind vom falschen Typ.." (https://www.delphipraxis.net/176706-tadoquery-fehler-parameter-sind-vom-falschen-typ.html)

luisk 21. Sep 2013 19:20

Datenbank: MySQL • Version: 5.0.21 • Zugriff über: ADO Win 7

TAdoQuery Fehler "Parameter sind vom falschen Typ.."
 
Hallo,
habe nach dem Rechnerwechsel von XP auf Win 7 ein Problem im Entwicklermode Delphi 6
Runetime .exe läuft.

Code:
   l_ADOQuery1:=TAdoQuery.Create(self);
   l_ADOQuery1.Connection:=Frm_Mainwindow.ADOConnection1;
   l_ADOQuery1.SQL.Clear;
   l_ADOQuery1.Parameters.Clear;

   ls:=' update `t_user` set `PW` = :param where `userid_pk` ='''
                        + inttostr(in_user_id)+''';';

   l_ADOQuery1.SQL.Add( ls );


   l_Ado_Parameter:=l_ADOQuery1.Parameters.ParamByName('param');


   l_memStream.Position:=0;

   l_Ado_Parameter.LoadFromStream(l_memStream,ftBlob);

   li := ADOQuery_ExecSQL(l_ADOQuery1);
Bei l_ADOQuery1.SQL.Add( ls );
bekomme ich im Debugmode folgende Fehlermeldung:
"Die Argumente sind vom falschen Typ, liegen außerhalb des Gültigkeitsbereiches
oder sind miteinander unvereinbar"

Unter XP läufts seit Jahren, unter Win 7 nur in der .exe
------------------

Hat jemand ne Idee, woran´s liegen kann?

Luis

Bernhard Geyer 21. Sep 2013 19:34

AW: TAdoQuery Fehler "Parameter sind vom falschen Typ.."
 
Wieso keine nativer Zugriff (z.B. mit Zeos, DevArt oder FireDac)?

Den riesen-Umweg über ADO (und evtl. noch ODBC) hat sehr viel versteckte Stolperfallen und Fehler.
Bei MySQL und Delphi gabs (ob noch gibt weiß ich nicht) mal eine Seite mit nötige Einstellungen wenn man sowas wie ADO und/oder ODBC verwendet damit es klappt.

luisk 21. Sep 2013 21:04

AW: TAdoQuery Fehler "Parameter sind vom falschen Typ.."
 
Zeos, DevArt oder FireDac kenne ich nicht,
es lief ja bisher über ADO sehr gut.

Bernhard Geyer 22. Sep 2013 00:38

AW: TAdoQuery Fehler "Parameter sind vom falschen Typ.."
 
Zitat:

Zitat von luisk (Beitrag 1229398)
Zeos, DevArt oder FireDac kenne ich nicht,

Dann solltest du dich mal über diese besseren Alternativen Informieren
Zitat:

Zitat von luisk (Beitrag 1229398)
es lief ja bisher über ADO sehr gut.

Da würde ich sagen das du bisher einfach Glück gehabt hast.

Bisher hast du den Weg

Anwendung -> dbGo -> ADO/OleDB -> ODBC -> MySQl.DLL -> MySQL-Datenbank

Sinnvoller ist (wenn man z.B. die DevArt-Komponenten-Einsetzt

Anwendung -> DAC for MySQl -> MySQL-Datenbank

Statt 4 (!) Zwischenschichten hat man nur eine. Wo treten wohl mehr Fehler/Inkompatibilitäten auf?

sx2008 22. Sep 2013 08:14

AW: TAdoQuery Fehler "Parameter sind vom falschen Typ.."
 
Diese accent grave (`) haben in SQL übrigens nichts verloren.
Um Stringliterale zu begrenzen werden einfache Hochkommas verwendet.
Um Feld- und Tabellennamen zu quoten verwendet man doppelte Anführungszeichen.

luisk 22. Sep 2013 13:33

AW: TAdoQuery Fehler "Parameter sind vom falschen Typ.."
 
mmm, diese accent grave (`) habe ich von phpmyadmin übernommen.
Wenn ich sie weglasse kommt der Fehler auch,

Komischer Weise gibts in der exe keine Probleme,
und im Delphi-Entwicklungssystem läufts auf 2 Rechnern XP und Win 8,
bei Win 7 gibts die Fehlermeldung.


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