Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datenverlust bei Systemabsturz mit Paradox-DB (https://www.delphipraxis.net/34986-datenverlust-bei-systemabsturz-mit-paradox-db.html)

buyden 1. Dez 2004 07:17


Datenverlust bei Systemabsturz mit Paradox-DB
 
Hi,

ich hab folgendes Problem mit einer Anwendung, die auf ner Paradox-DB basiert:

Sobald der Rechner abschmiert sind alle Daten, die seit dem Öffnen der Anwendung in die Datenbank geschrieben wurden weg. Schließe ich die Anwendung aber korrekt, wird alles ordnungsgemäß gespeichert.
Woran liegt das?? :gruebel:

Neelix 1. Dez 2004 07:28

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Hallo buyden,

das liegt darin begründet, daß die BDE die Änderungen zunächst nur im Hauptspeicher zwischenpuffert. Erst wenn Du das Programm beendest, werden diese Daten in die DB zrückgeschrieben (beim Schließen der Datenbank). Meine Empfehlung: Rufe hin und wieder mal die Methode FlushBuffers von TTabel/TQuery auf. Dann werden alle Änderungen sofort auf die Platte geschrieben.

buyden 1. Dez 2004 07:40

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Sowas in der Richtung hab ich mir schon gedacht, aber hatte keine Lösung dafür.

Dankeschön :thumb:

Jelly 1. Dez 2004 08:27

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Zitat:

Zitat von buyden
Sobald der Rechner abschmiert sind alle Daten, die seit dem Öffnen der Anwendung in die Datenbank geschrieben wurden weg.

Dann sei froh, daß nicht die ganze Indizierung durcheinander geraten ist, und du die Tabellen überhaupt nicht mehr öffnen kannst. :zwinker:

Paradox ist alles andere als eine sichere Datenbank, und sollte imho vermieden werden. Es gibt genug Alternativen zu Paradox.

Neelix 1. Dez 2004 08:59

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Ich kann Jelly nur zustimmen. Wenn du in der DP ein wenig suchst Hier im Forum suchenParadox Alternative findest Du auch den einen oder anderen Thread in dem mögliche Alternativen vorgeschlagen werden.

buyden 1. Dez 2004 09:38

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Ich werd das bei meinen nächsten Anwendungen mit bedenken aber das jetzt noch zu ändern wäre ein bisschen aufwendig.

Trotzdem Danke.

MrSpock 1. Dez 2004 09:55

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Hallo buyden,

auch wenn es mittlerweile fast zum Ritual geworden ist, möchte ich noch die Information los werden, dass Paradox häufig um einiges negativer dargestellt wird, als es wirklich ist. Wir verwenden noch immer Programme, die ich mit Paradox geschrieben habe, die im Netz mit bis zu 5 Usern laufen und die bis heute ohne Probleme laufen. Ich musste bei allen Programmen, die wir geschrieben haben insgesamt erst 2 oder 3 Mal die Indexdateien reparieren und das war in allen Fällen wegen eines Windows Absturz (der übrigens nicht durch unser Programm versursacht wurde :stupid: ).

Jelly 1. Dez 2004 10:06

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Zitat:

Zitat von MrSpock
Ich musste bei allen Programmen, die wir geschrieben haben insgesamt erst 2 oder 3 Mal die Indexdateien reparieren und das war in allen Fällen wegen eines Windows Absturz

Und was bitte schön kann man dabei postiv sehen?

MrSpock 1. Dez 2004 12:33

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Hallo Jelly,

derjenige der ein anderes Desktop Datenbankmanagementsystem benutzt, dass in etwa 10 Jahren (noch unter D1 entwickelt) bei der Nutzung in etwa 15 verschiedenen Programmen weniger als 3 Fehler hatte (die ich übrigens alle in wenigen Minuten behoben habe!), der melde sich doch bitte einmal.

Sowohl unsere Kunden als auch wir sind mit der Leistung von Paradox sehr zufrieden und sind froh, damals die Entscheidung für Paradox und nicht für Access oder ein anderes DBMS getroffen zu haben. Inzwischen wird die BDE und Paradox nicht mehr weiterentwickelt, was auch bei uns dazu führt, dass wir Stück für Stück auf Interbase oder für lokale Tabellen auf MyBase umstellen. Ich kann aber eben aus eigener Erfahrung nicht ohne Widerspruch Aussagen stehen lassen, die Paradox als DBMS schlechter machen, als es ist.

shmia 1. Dez 2004 13:24

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Zitat:

Zitat von MrSpock
Sowohl unsere Kunden als auch wir sind mit der Leistung von Paradox sehr zufrieden und sind froh, damals die Entscheidung für Paradox und nicht für Access oder ein anderes DBMS getroffen zu haben.

Da habe ich genau die gegenteilige Erfahrung gemacht.
Ein Kunde hat ein Programm zur Wareneingangserfassung mit BDE/Paradox bekommen und hat ca. alle 2 Monate die Datenbank zerschossen.
Grund: in den Tabellen wurden AutoInc Felder verwendet. Durch ein abruptes Beenden des Programm wurde z.B. ein Datensatz mit der ID 31980 noch gespeichert. Der interne Generator stand aber noch auf 31979.
Keine Chance in diese Tabelle noch einen neuen Datensatz einzufügen.
Jedesmal musste der Kunde die Datenbank-Dateien mir zuschicken und ich musste mit RStruct und der veralteten Datenbankoberfäche 7 die Tabelle wieder reparieren. :wall:
Seit der Umstellung auf ADO mit Jet Engine 4 ist Ruhe!!!

Zum Entwickeln einer Datenbank gibt es kaum eine bessere Oberfläche als Access.
Ich sage damit nicht, dass Access eine gute Datenbank ist, sondern nur dass Access als Oberfläche für die Jet-Engine unschlagbar ist.

MrSpock 1. Dez 2004 13:50

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Zitat:

Zum Entwickeln einer Datenbank gibt es kaum eine bessere Oberfläche als Access
Das ist aber jetzt nicht wirklich dein Ernst, oder? :shock:

storfi 1. Dez 2004 13:54

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Hallo buyden,

vielleicht nochmal zurück zum Thema:

Meine Anwendungen auf Paradox laufen relativ stabil, wenn

1.) die Tabellen auf einer FAT16-Partition liegen, denn für FAT16 wurde Paradox vor ewigen Zeiten entwickelt

2.) jede Tabelle in Delphi im AfterPost-Ereignis diese Zeile hat:
> Check(DBITypes.DbiSaveChanges(tblTabelle.handle));
Es wird damit der Pufferinhalt sofort auf Platte geschrieben.

Vielleicht hilft dir das etwas weiter...

Servus,
storfi

Jelly 1. Dez 2004 14:07

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
@MrSpock:
du magst Recht haben, daß ich vielleicht ein bischen ZU negativ über Paradox berichte. Vor 10 Jahren war das sicherlich eine recht gute Wahl. Aber ich hatte bislang lediglich negative Erfahrungen mit Paradox, weshalb ich heute dringends jedem von abrate. Aber womöglich auch nur deshalb, weil es heute viele vernünftige Alternativen gibt.

Gruß,
Tom

MrSpock 1. Dez 2004 14:31

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Hallo Jelly,

ich denke auch, dass es mittlerweile ganz gute Alternativen gibt und wie gesagt, wir machen auch nichts mehr Neues mit Paradox. Nur wenn einer seine CD Sammlung verwalten will und ich dann lese: "...lass die Hände von Paradox!", dann denke ich mir :wiejetzt: . Ich habe (OK, ist schon eine Dekade her) vor Delphi auch direkt mit Paradox gearbeitet und Anwendungen erstellt. ObjectPAL war da schon wirklich objektorientiert, als MS das Wort noch nicht einmal kannte. Ich habe mich notgedrungen (Forderung von einem öffentlichen Auftraggeber) bereits mit Access rumgeschlagen und finde es :kotz: .

Aber bevor das jetzt in einen DBMS Streit ausartet, sollten wir wieder zurück zum Thema kommen.

shmia 2. Dez 2004 08:52

Re: Datenverlust bei Systemabsturz mit Paradox-DB
 
Zitat:

Zitat von MrSpock
Zitat:

Zum Entwickeln einer Datenbank gibt es kaum eine bessere Oberfläche als Access
Das ist aber jetzt nicht wirklich dein Ernst, oder? :shock:

Doch, schon. Welche Oberfläche kann schon Master & Detail Tabellen in einem Grid anzeigen?
Weitere Vorteile:
* Access kann Datensätze per Copy & Paste transferieren; bei Fehler wird die Tabelle Einfügefehler erzeugt, deren Daten man nachbearbeiten kann.
* Alle Ansichten von Tabellen&Views (Spaltenposition & breite) können gespeichert werden.
* bei Bedarf kann in Access eben mal kurz ein Bericht erzeugt und gedruckt werden
* falls die "normale" Eingabe der Tabellendaten nicht reicht, kann man Formular in Access zum bequemen Eingeben von Daten erstellen
* Access hat eine Automatisierungsschnittstelle
* Beziehungen zwischen Tabellen können als Diagramm ausgedruckt werden (unverzichtbar bei grossen DBs)
* hat einen Datenbankdokumentierer (zumindest in Access 2003 recht brauchbar)
Welche Oberfläche kann da mithalten??


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:38 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 by Thomas Breitkreuz