Hallo,
erstelle die Datenbank folgerndermaßen:
Delphi-Quellcode:
SQL.Text := '
CREATE TABLE IF NOT EXISTS `' +tbl_weinliste+'
` ('+
'
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,' +
'
`artnr` TEXT NOT NULL,' +
'
`preis` FLOAT NOT NULL,' +
'
`bezeichnung` TEXT NOT NULL,' +
'
`bestand` INT NOT NULL)CHARACTER SET latin1 COLLATE latin1_german2_ci;';
Und beim Öffnen mach ich es so:
Delphi-Quellcode:
Sql.Text := '
SELECT * FROM `'+tbl_weinliste+'
`';
Open;
while not Eof
do
begin
litem := frmmain.lvweine.Items.Add;
litem.Data := Pointer(FieldbyName('
id').AsInteger);
litem.Caption := FieldbyName('
artnr').AsString;
litem.SubItems.Add(FieldbyName('
bezeichnung').AsString);
litem.SubItems.Add(FieldbyName('
preis').AsString);
litem.SubItems.Add(FieldbyName('
bestand').AsString);
Next;
Mein Problem ist jetzt, dass ich beispielsweise einen Preis von "3.99" eingebe und phpmyadmin zeigt ihn auch so richtig an. Beim Öffnen aber steht bei mir im Programm "3.990000005674", wieso das?
Wenn ich das Datenfeld so auslese
litem.SubItems.Add(FieldbyName('preis').AsString);
konvertiert er es doch gleich in deinen String oder? Was mache ich falsch?
Danke schonmal !!