![]() |
Datenbank: Paradox • Version: 4.0 • Zugriff über: BDE
Neuer Record wird nicht in die Datanbank geschrieben
Hallo
Ich schreibe eine alte Anwendung um die auf dBase-Datenbanken zugreift. Ich möchte diese Datenbanken nun umschreiben auf Paradox. Die Anzeige der Daten funktioniert soweit gut. Allerdings kannich keine Records einfügen. Ich tu dies mit einer EditForm, DBGrid und diesem Code:
Delphi-Quellcode:
Dies funktionierte mit der dBase.
procedure TEditForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin if (MainData.UserTable.state in [dsEdit,dsInsert]) then MainData.UserTable.Post; end; Ich habe neu eigentlich nur den Pfad zur Datanbank geändert und die Table auf Paradox eingestellt. In einem kleinen Testprogramm das ich geschireben habe funktioniert das zurückschreiben der Records ohne Probleme. Woran kann das liegen`? Gruss Smn |
Re: Neuer Record wird nicht in die Datanbank geschrieben
<offtopic>
DBase, Paradox, BDE? Das ist doch alles alter Schrott. Warum verwendest Du nicht eine aktuelle Datenbank? Firebird, PostgreSQL, SQLite? Alle auch kostenlos. |
Re: Neuer Record wird nicht in die Datanbank geschrieben
Zitat:
Wenn du schon umstellst dann auf eine vernünftige noch aktuelle DB. Es gibt genügend Alternativen die Pflegeleichter als dBase/Paradox und BDE sind. |
Re: Neuer Record wird nicht in die Datanbank geschrieben
Weil die andere alte den Ansprüchen genügt, und die BDE schon installiert ist.
|
Re: Neuer Record wird nicht in die Datanbank geschrieben
Des Menschen Wille... also versuchs mal mit
Delphi-Quellcode:
und/oder mit der
DBISaveChanges(MainData.UserTable.Handle);
![]() |
Re: Neuer Record wird nicht in die Datanbank geschrieben
Zitat:
Zitat:
|
Re: Neuer Record wird nicht in die Datanbank geschrieben
Eigentlich sollte die Zeit der Selbstgeiselung seit Ostern vorbei sein.
|
Re: Neuer Record wird nicht in die Datanbank geschrieben
Ja bitte macht euch nur lustig!
Sofern ich mal eine neue DB-Applikation von Grund auf neu schreiben muss, dann nehme ich ja sicher eine aktuelle DB. In diesem jetzigen Fasll ist dies aus ressourcen-Gründen nicht möglich. Ich bitte daher um Verständniss! ;-) Allerbesten Dank trotzdem für die Tipps! Smn |
Re: Neuer Record wird nicht in die Datanbank geschrieben
Aber warum dann dBase auf Paradox umsteigen? Diese Mühe kannst du die sparen!
|
Re: Neuer Record wird nicht in die Datanbank geschrieben
Zitat:
|
Re: Neuer Record wird nicht in die Datanbank geschrieben
Zitat:
|
Re: Neuer Record wird nicht in die Datanbank geschrieben
Und die Probleme, die du nun hast auch?
|
Re: Neuer Record wird nicht in die Datanbank geschrieben
Zitat:
Aber auch ich würde mir dei Arbeit nicht machen, von einem Sch***-System zu einem anderen Sch***-System umzusteigen. Auch dann nicht, wenn das zweite Sch***-System ein Bisschen weniger Sch*** ist. Lass das ganze, so wie es ist. Wenn alle mit der Sch*** klar gekommen sind, warum soll man es dann ändern? |
Re: Neuer Record wird nicht in die Datanbank geschrieben
Ja, habe gemerkt dss es mit Paradox doch nicht so klappt wie ich es mir erhofft hatte. Der Lock Mechanismus verhindert das mehrer User auf die Datenbanken zugreifen können (Mit dBase hat das aber noch funktioniert) Habe irgendwo gelesen, dass man bei allen Usern den Pfad zur PDOXUSRS.NET Datei welche wiederum auf die Lockfiles verweist auf ein gemeinsamen Net Dir einstellen muss...
Nun bei mir kann ich das mit dem BDE_Administrator machen. Bei den Usern allerdings ist das so nicht möglich, da diese ja Delphi nicht installiert haben und damit auch keinen BDE-Administrator. Gibt es da eine andere Möglichkeit. Falls ja wäre trotzdem das Problem, dass diese Änderung bei 200 Arbeitsstationen gemacht werden müsste. Ich habe diese Einstellung auch nicht in der Reg gefunden so dass man einfach den Schlüssel hätte verteilen können. Also alles ein ziemlicher brunz...daher: Gibt es eine sinvollere Variante als Paradox welche: -trotzdem auf der BDE-Engine basiert, damit keine zusätzliche Datanbankengine verteilt werden muss.(knockout Kriterium) -Ein Feld so indexiert werden kann, dass die Tabellen nach diesem Feld geordnet alphabetisch angezeigt werden. -Der Sourcecode (TTable und TDatasource) nur minimal angepasst werden muss -mehrere User gleichzeitig auf ein File Zugriff haben. Gruss smn |
Re: Neuer Record wird nicht in die Datanbank geschrieben
Zitat:
Zitat:
|
Re: Neuer Record wird nicht in die Datanbank geschrieben
Zitat:
Manche können auch direkt von der BDE die Daten importieren. Vorteil: - Du musst keine DB-Engine verteilen - viele DB-Komponenten behaupten, dass sie BDE-Ersatz einfach machen - mehrere User können auf die selbe Tabelle (File) zugreifen Also wieder: BDE eliminieren und ne "richtige" DB benutzen. |
Re: Neuer Record wird nicht in die Datanbank geschrieben
Habs mal so zum laufen gebracht...jetzt können mehrere User auf die Tabellen zugreifen.
Delphi-Quellcode:
hier gefunden:
Session.NetFileDir:='PfadZumNetzlaufwerk';
![]() |
Re: Neuer Record wird nicht in die Datanbank geschrieben
BDE ist trotzdem eine schlechte Idee.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:06 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