![]() |
Datenbank: mmySql • Version: 5.5.11 • Zugriff über: libmysql.dll
felderanzahl in einer result row bestimmen
Hallo zusammen,
ich habe grade mal angefangen mit delphi und mysql rumzuspielen. Benutze dazu die dll libMySql.dll. Habe dazu ein Tutorial hier gefunden und durchgearbeitet. Mein kleines Beispielprgramm warf aber eine Frage auf: ich schreibe in ein TEdit feld einen beliebigen SQL Befehl, wie 'show databases' oder 'select version(), now()' bei dem 2. Befehl kommt eine Reihe mit 2 Spalten zurück! siehe source rowCount ist cardinal und sieht für mich auch so aus :-) len ist vom typ pMySql_Lengths was einem Zeiger auf cardinals entspricht, dachte ich! aber da kommen schreckliche Zahlen raus! Nach viel rumprobieren habe ich jetzt diese Lösung gefunden die zu funktionieren scheint.
Delphi-Quellcode:
Meine Frage: Was mache ich falsch? warum muss ich den len[i] nach smallInt casten?...... ...... myRes := mySql_store_result(myDb); if assigned(myRes) then begin RowCount := mySql_num_rows(myRes); len := mySql_fetch_Lengths(myRes); i:=0; aString := ''; while smallInt(len[i])>0 do // Lösung mit cast nach smallInt!!!! begin aString := aString + myRow[i]; inc(i); end; Memo1.Lines.Append(aString); end; ...... ...... Ich habe nämlich angst dass das nicht immer funktioniert! Wäre schön wenn mir das jemand erklären könnte! Gruß Stefan |
AW: felderanzahl in einer result row bestimmen
Versuch es mal so:
Delphi-Quellcode:
len := mysql_num_fields(myRes);
|
AW: felderanzahl in einer result row bestimmen
Oh,Oh
danke so klappts :thumb: ich war mir eigentlich sicher, dass ich es mit 'mySql_num_fields' auch schon probiert hatte, aber da hat wohl noch ein andres Problemchen gebremst. Aber eigentlich müsste es doch mit 'mySql_fetch_Lengths' auch gehen! Gruß Stefan |
AW: felderanzahl in einer result row bestimmen
Gehen müsste das, ist aber umständlicher. Wie ist es so?
Delphi-Quellcode:
Oder so?
while len^[i] > 0 do
Delphi-Quellcode:
while TMYSQL_LENGTHS(len^)[i] > 0 do
|
AW: felderanzahl in einer result row bestimmen
Vielen Dank!
Jetzt habe ich das Verstanden! Das mit dem deReferenzieren klappt! Da len schon vom typ pMySql_Lengths ist funktioniert schon das erste! und das zweite natürlich auch. Gruß Stefan |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:59 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-2025 by Thomas Breitkreuz