Hallo ..
ich verstehe es nicht
Ich versuche gerade ein Problem zu lösen - da die zu suchenden Texte einen Bindestrich beinhalten - deswegen baue ich mir Parameter.. und hoffe SO das Problem zu beseitigen
Aber wenn ich mir mein nicht funktionierendes
SQL Statement ausgeben lassen will - sehe ich, dass die Parameter als Text drinnen stehen - und nicht die Werte.
Der
SQL-TEXT was bei meiner Procedure rauskomme .. die Parameter werden nicht augefüllt sondern dargestellt???
Zitat:
SELECT * FROM material where ((`Materialkurztext` LIKE '% :matname %') OR (`Materialnummer` LIKE '% :matnummer %')) ORDER BY `Materialkurztext` ASC LIMIT 100 OFFSET 0
Der Delphi-Code:
Delphi-Quellcode:
UniMainModule.n_MATERIAL.SQL.Clear;
UniMainModule.n_MATERIAL.SQL.Append('SELECT * FROM klassifizierung where ((`Materialkurztext` LIKE ''% :matname %'') OR (`Materialnummer` LIKE ''% :matnummer %'')) ORDER BY `' + my_Fieldname_m + '`' + sortierreihenfolge + ' LIMIT ' + inttostr(mainform.datenbank_limit) + ' OFFSET ' + inttostr(mein_limit_m));
UniMainModule.n_MATERIAL.Params.Clear;
UniMainModule.n_MATERIAL.Params.CreateParam(ftString, 'matname', ptInput);
UniMainModule.n_MATERIAL.Params.CreateParam(ftString, 'matnummer', ptInput);
UniMainModule.n_MATERIAL.ParamByName('matname').Value := sql_filter_m;
UniMainModule.n_MATERIAL.ParamByName('matnummer').Value := sql_filter_m;
UniLabel55.Caption:= UniMainModule.n_MATERIAL.SQL.Text;
UniMainModule.n_MATERIAL.Open;
Info: n_MATERIAL ist ein TZQuery
Hat jemand eine Idee wo der Fehler liegt?
Erich Wanker - for life:=1971 to lebensende do begin ..
O
/H\
/ \