Aha, gut. Ich habe bereits nach euren Anweisungen den Datentyp für die „Temperatur in °C“-Spalte von String auf Float geändert. Eingegeben wird die Temperatur per Hand in ein Editfeld
Delphi-Quellcode:
if Ed_Temp.text = ' ' then begin // damit keine Fehlermeldung auftaucht
Temperatur := 0; // das ist die globale Variable für die Temperatur
Ed_Temp.text := '0'; // ..und der Eintrag ins Editfeld
end
else begin
Temperatur := strtofloat(Ed_Temp.text) // oder eben bei einer Temperatureintragung die
// richtige Temperatur
end;
Insgesamt habe ich 48 Werte in der Datenbank, will aber in Delphi (DBGrid) nur 12 anzeigen. Bis auf die Temperatur sind alle anderen Werte Stringwerte, da ich nur nach der Temperatur ordnen will. Diese Temperatur wird dann mit den anderen in die ADOTable1 geschrieben.
Delphi-Quellcode:
ADOTable1.append;
ADOTable1.edit;
….
ADOTable1.Fields[6].asFloat := Temperatur; // Realzahl
….
Und dann über die Connection zur
DB Grid angezeigt. Mach ich das soweit richtig, oder?
Zusätzlich will ich dass der Benutzer die Daten ändern kann, die in der Datenbank stehen. Das mache ich so:
procedure TForm6.DBGrid1ColExit(Sender: TObject);
begin
Delphi-Quellcode:
if ADOConnection1.Connected then
if ADOTable1.active then
if gridchange=false then begin
ADOTable1.edit;
….
ADOTable1.Fields[6].asFloat := strtofloat(ADOTable1.Fields[6].text);
….
ADOTable1.Post;
end;
end;
Wenn du noch andere Sachen wissen willst, muss t du mir das bitte genauer erklären was du willst.