![]() |
"Nicht genügend wirkliche Paramenter" - warum???
Hallo,
ich bin dabei meine Ergebnisse, die ich aus meiner MySQL Datenbank ausgelesen habe in eine Listview-Komponente zu übertragen. Mein Problem ist nun, dass ich beim Compilen des folgenden Code-Ausschnitts
Delphi-Quellcode:
die Fehlermeldung: "Nicht genügend wirkliche Paramenter" erscheint.
While Not Fmysql.query.EOF Do
Was will mir Delphi damit sagen? Ich habe es schon mal so versucht
Delphi-Quellcode:
aber da kam genau die gleiche Fehlermeldeung.
While Fmysql.query.EOF = false Do
Danke Thomas |
Re: "Nicht genügend wirkliche Paramenter" - warum?
EOF erwartet wohl noch irgendwelche Parameter (die Dinger in Klammern dahinter ;) ).
|
Re: "Nicht genügend wirkliche Paramenter" - warum?
Ich habe aber ein Code-Beispiel (auch aus der DP) in dem auch keine Werte in () stehen. Was muss da denn rein?
Oder anders gefragt, für was steht dieses EOF eigentlich??? :? |
Re: "Nicht genügend wirkliche Paramenter" - warum?
Hallo Plague,
etwas mehr Info wäre nicht schlecht: wie heißen die einzelnen Objekte, etwas mehr Code. Normalerweise benötigt Query.Eof keine Parameter. EOF heißt übrigens End of File! |
Re: "Nicht genügend wirkliche Paramenter" - warum?
Nachtrag: Bist du sicher, dass der Fehler in dieser Zeile liegt?
|
Re: "Nicht genügend wirkliche Paramenter" - warum?
der SQL-Statement, den du ausführst erwartet einen oder mehrere Parameter,
such da nach dem Fehler. EOF erwartet keinen Parameter, das ist Unsinn. |
Re: "Nicht genügend wirkliche Paramenter" - warum?
Also das Problem, mit den Parametern habe ich gelöst. Die lösung dafür war (q, true, ex).
Aber mir scheint der ganze Code falsch zu sein. Es kommen nur Fehler... Hier ist der Code:
Delphi-Quellcode:
Dazu zu sagen ist noch, dass ich die Abfrage über das Tutorial von delphi-source.de "MySQLDirect" vornehme und daher vor jedes Query noch ein Fmysql gehört (also Fmysql.Query(q, true, ex))...
Var
NewColumn : TListColumn; ListItem : TListItem; i : Integer; Begin With Query Do Begin SQL.Text := 'SELECT *' + #10 + 'FROM Tabelle'; Open; End; With ListView1 Do Begin Columns.Clear; Items.Clear; If Not Query.Eof Then Begin For i := 0 To pred(Query.FieldCount) Do Begin NewColumn := Columns.Add; NewColumn.Caption := Query.Fields[i].FieldName; End; ListView1.ShowColumnHeaders := True; While Not Query.Eof Do Begin For i := 0 To pred(Query.FieldCount) Do Begin If i = 0 Then Begin ListItem := Items.Add; ListItem.Caption := Query.Fields[i].asString; End Else ListItem.SubItems.Add(Query.Fields[i].asString); End; Query.Next; End; End; End; End; Danke Thomas |
Re: "Nicht genügend wirkliche Paramenter" - warum?
was für fehler kommen denn jetzt?
Gruß Ken |
Re: "Nicht genügend wirkliche Paramenter" - warum?
Da kommen so viele. Dinge die im Code stehen, dürften laut delphi nicht da stehen oder Delphi gibt diese beim "Nach-Programmieren" nicht mal als auswahl an. Gibt es vielleicht eine andere Anleitung?
Oder ein Tutorial? MfG Thomas |
Re: "Nicht genügend wirkliche Paramenter" - warum?
Hast Du auch aller derforderlichen Units eingebunden? Ich denke da z.B. an die DB und DBTables!
|
Re: "Nicht genügend wirkliche Paramenter" - warum?
Also die Units sind korekt eingebaut. Ich habe auch schon die Ausgabe in ein (normales) StringGrid geschaft, aber ich möchte lieber die Listview-Komponente. Da kommt es dann zu den besagten Fehlern...
|
Re: "Nicht genügend wirkliche Paramenter" - warum?
Dann schreib doch mal, welche Fehler gemeldet werde. Das Lesen im Kaffeesatz ist nicht so ganz einfach. :lol:
|
Re: "Nicht genügend wirkliche Paramenter" - warum?
Ja das ist ja das Problem. Du siehst den Code oben aber zB
- Fmysql.Query(q, true, ex).Fields[i].FieldName Hier sagt Delphi, dass der rote Teil nicht stimmt und dass es die Befehle nicht gibt. So und ähnlich sieht es bei eigentlich fast allen Fehlern aus... |
Re: "Nicht genügend wirkliche Paramenter" - warum?
Was soll der Klammerausdruck nach Query? Lass das doch mal weg!
|
Re: "Nicht genügend wirkliche Paramenter" - warum?
Ohne den kommt die Fehlermeldung, dass es nicht genügend wirkliche Parameter gibt. Daher ist das nicht der Fehler. Das müsste eigentlich stimmen.
|
Re: "Nicht genügend wirkliche Paramenter" - warum?
Und was ist Fmysql?
|
Re: "Nicht genügend wirkliche Paramenter" - warum?
Das ist ein Object. Is wie zB. Die TSQLConnection1 die Delphi7 mitliefert.
Die nutze ich (wegen dem Tutorial von Delphi-source.de) für mein Program. |
Re: "Nicht genügend wirkliche Paramenter" - warum?
Ach, Du verwendest dbExpress? Nichstdestotrotz ist mir keine Query-Funktion bekannt, der ich Parameter übergeben soll!
|
Re: "Nicht genügend wirkliche Paramenter" - warum?
Nein, ich habe auch nicht die DBexpress Komponenten. Geh mal bitte auf diesen
![]() Bei den Komponenten die Delphi mitliefert, gab es bei mir Probleme... |
Re: "Nicht genügend wirkliche Paramenter" - warum?
Und Du hast die MySQL direct-Komponenten heruntergeladen und verwendest die? Da kann ich Dir leider auch nicht weiterhelfen, da ich diese Kompos nicht kenne.
[Edit]Und wenn ich das richtig sehe, die Methode Query nichts zu tun mit den Query-Klassen von Delphi. Also kann das mit dem Fields... nicht funktionieren![/Edit] |
Re: "Nicht genügend wirkliche Paramenter" - warum?
Nagut, dann werde ich jetzt mal die ZEOS variante versuchen. Weil ich benötige einfach die Listview Komponente als Anzeige Medium.
Aber trotzdem danke für deine Mühe... Thomas |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:18 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