![]() |
Zugriff über: Ado
Warum funktioniert Neuanlegen nicht?
klicke ich auf neuanlage, und habe in Vorname, Nachname und Klasse etwas eingegeben, dann ist plötzlich mein ganzen Grid weg, beende ich das Programm, starte es neu, klicke auf DB-verbinden, dann ist der datensatz vorhanden
Gibt es nicht irgendeine Möglichkeit, das Grid gleich nachdem man auf Neuanlange geklickt hat, irgendwie zu erneuern grdSchueler.Refresh; funktioniert irgendwie nicht nicht
Delphi-Quellcode:
[edit=SirThornberry]Datenbankzugriff ergänzt - Mfg, SirThornberry[/edit]
procedure TWinForm.btnNew_Click(sender: System.Object; e: System.EventArgs);
begin if (lblFzgNr.Text = '') or (txtMarke.Text = '') or (txtType.Text = '') or (txtBJ.Text = '') then begin MessageBox.Show('Eingabe fehlerhaft.','Fehler',MessageBoxButtons.OK,MessageBoxIcon.Error); txtMarke.Focus; exit; end else begin //SQL-Statement von Insert v_strSQL:= 'Insert into Fahrzeuge (Marke,Type,Baujahr) values (''' + txtMarke.Text + ''',''' + txtType.Text + ''','+ txtBJ.Text + ')'; ExecCommand; end; end; |
Re: Warum funktioniert Neuanlegen nicht?
Hast du für uns vielleicht dazu noch ein paar Details?
- Was macht die Prozedur "ExecCommand"? - Welche Datenbank (Paradox, Interbase, ...)? - Wie greifst du auf die Datenbank zu (TTable, TQuery)? |
Re: Warum funktioniert Neuanlegen nicht?
- Was macht die Prozedur "ExecCommand"?
- Welche Datenbank (Paradox, Interbase, ...)? - Wie greifst du auf die Datenbank zu (TTable, TQuery)? Der zugriff erfolgt mit "ADO" Datenbank: reicht dir das wenn ich dir sagen, das es eine ganz normale datenbank ist (Office 2007) ExecCommand: das hat mir ein Freund gesagt ich habs immer mit grdSchueler.Refresh probiert, das es es auch nicht gegangen! |
DP-Maintenance
Dieses Thema wurde von "SirThornberry" von "Sonstige Fragen zu Delphi" nach "Datenbanken" verschoben.
|
Re: Warum funktioniert Neuanlegen nicht?
Deine 'datensensitiven Steuerelemente' bekommen doch gar nicht mit, wer oder was alles in der Datenbank rumfurwerkelt, wenn Du an denen vorbei ein SQL-Kommando direkt an die DB schickst.
Du kannst eine TTable/TQuery nehmen, und die Datenänderungen über die 'Edit' und 'Post' - Methoden implementieren. Dann siehst du die Änderungen gleich im Grid. Das klappt aber nur bei einer Datenbank, bei der nur ein Anwender sitzt. Wenn mehrere Anwender auf die DB zugreifen, dann siehst du die Änderungen der Anderen natürlich nicht. Dann musst Du dir etwas einfallen lassen. |
Re: Warum funktioniert Neuanlegen nicht?
Hallo,
das Grid wird nur aktualisiert, wenn du die darauf basierende Query (?) neu aufbaust. query.Close Query.Open Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:20 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