Daten Manuell in dbf schreiben?

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
dirkmswt
Beiträge: 30
Registriert: Mo 14. Jul 2008, 11:51

Daten Manuell in dbf schreiben?

Beitrag von dirkmswt »

Hallo ich habe folgendes Problem.
Meine Datenbank soll automatisch Werte erfassen.
Jetzt hab ich folgendes Problem was ich noch nciht in de Griff bekommen habe:
Beim Schreiben eines Wertes welcher automatisch in eine DbEdit-Box geschrieben wird bekomme ich nur einen leeren Eintrag wenn ich diese eingebe

begin
dba.last;
form4.DBEdit1.Text:= 'Test';
dba.insert;
dba.post;
end;

Das Problem wird warscheinlich ein onChange ereignis sein was die Textbox durchführt und den Eintrag aus der Datenbank wieder in die Textbox zurückschreibt.
Wie kann ich verhindern das Daten aus der Datenbank wieder in der Textbox erscheinen?
Oder gibt es eine Möglichkeit Strings usw direkt in die Db ohne Editbox zu schreiben?

baba
Beiträge: 265
Registriert: Mi 4. Apr 2007, 17:47

Re: Daten Manuell in dbf schreiben?

Beitrag von baba »

dirkmswt hat geschrieben:

Code: Alles auswählen

begin
   dba.last;
   form4.DBEdit1.Text:= 'Test';
   dba.insert;
   dba.post;
end;
Du springst zum letzten Datensatz, ist die DB leer gehen die Daten ins Nirwana, weist dem DB Feld auf dem Formular den Wert 'Test' zu, hängst einen neuen Datensatz an und schreibst den in die DB.

Wie wäre es damit?

Code: Alles auswählen

begin
   dba.insert  // besser da hinten drann und schneller - dba.append;
   dba.FieldByName('DEIN_FELD_NAME').AsString := 'Test';
   dba.post;
end;
Baba.

dirkmswt
Beiträge: 30
Registriert: Mo 14. Jul 2008, 11:51

Beitrag von dirkmswt »

Dankeschön,funktioniert genau wie ich das wollte;-)
Als Anhang hier noch eine kleine Info wie man mehrere Daten schreiben kann und immer am Indexende,vorallem wichtig wenn user manuell in der Tabelle rumklicken

Code: Alles auswählen

dba.last;
dba.insert;
   dba.FieldByName('DEIN_FELD_NAME').AsString := 'Test'; 
   dba.FieldByName('DEIN_FELD_NAME2').AsString := 'Test2'; 
usw...........
   dba.post;

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

Hallo, als kleiner Hinweis zur Übersichtlichkeit bitte das nächste mal die Code-Tags setzen dann sieht das gleich schöner aus ;)

Code: Alles auswählen

[code=laz]
[/code]
Johannes

Antworten