![]() |
Datenbank: Paradox • Version: 10 • Zugriff über: BDE
Kann keine Datensätze mehr zu Paradox-DB hinzufügen
Hallo beisammen,
bei einem älteren Projekt in Delphi 5 (eine Adressverwaltung) habe ich folgendes Problem: Zu den schon vorhandenen ca. 125.000 Datensätzen wurden einmal 60.000 und dann nochmal 140.000 Sätze hinzugefügt. Funktionierte prima. Nun sollten nochmal 65.000 dazu und ich erhalte nach ein paar Datensätzen die Meldung, dass zur Datenbank nichts mehr hinzugefügt werden kann. Also habe ich mit Paradox einen rebuild der Datenbank gemacht. Danach lassen sich ein paar hundert Sätze hinzufügen, danach das gleiche Spiel. Kennt jemand das Problem und noch besser, eine Lösung dazu? Das Projekt soll demnächst auf BDE2006 und dann auch auf ein anderes DB-System umgestellt werden, bis dahin sollte es aber noch irgendwie laufen :gruebel: Die Fakten: Datenbankgröße 131 MB, 327.351 Datensätze, Satzlänge 388 Byte, 6 Keys. Datensätze werden über TTable eingefügt mittels
Delphi-Quellcode:
Auffällig war noch, dass das hinzufügen geöhnlich sehr langsam läuft, nur direkt nach dem Rebuild die ersten paar hundert Sätze Faktor 20 schneller.
Table.append;
table.fieldbyname('Feldname').AsString:=Inhalt; ... Table.post; Oder gibts es etwa eine Größenbeschränkung bei Paradox-Tabellen? Grüße Manfred |
Re: Kann keine Datensätze mehr zu Paradox-DB hinzufügen
Hallo manfred versuch mal Testweise die datensätze per SQL-Insert (TQuery) einzufügen. TTable-Objekte sind gefährlich bei großen Datenmengen.
|
Re: Kann keine Datensätze mehr zu Paradox-DB hinzufügen
Mit welcher Block Size wurde die DB denn erstellt? Habe lange nix mehr mit Paradox gemacht, aber wenn ich mich recht erinnere, hing die max. Größe einer tabelle u.a. davon ab, welche block Size in der BDE während des Erstellens angegeben war.
Evtl. könnte man also die Blocksize erhöhen, neue tabellen mit der selben Struktur erstellen und die Daten kopieren. aber wie gesagt, lange nix mehr mit Paradox gemacht, ich übernehme als keinerlei Gewähr dass das hilft ;-) |
Re: Kann keine Datensätze mehr zu Paradox-DB hinzufügen
Der Zusammenhang zwischen BlockSize und MaxTableSize ist korrekt:
Zitat:
Grüße vom marabu |
Re: Kann keine Datensätze mehr zu Paradox-DB hinzufügen
Erst mal Danke an alle.
Die Blocksize von 2K war das Problem. Allerdings wehrt sich Paradox beim ändern sehr heftig. Verändert man die Blocksize der Datenbank, gehen Datensätze verloren. Beim Kopieren von der alten DB in die Neue mittels Paradox 10 kommt erst mal eine Fehlermeldung, dass der Datenträger voll wäre... (bei 40GB Platz). Kopiert man aber die (neue) Datenbank vom Windows2003Server auf eine lokale Platte, lassen sich die Datensätze im Schleichtempo reinkopieren. Dabei verliert man zwar mindestens eine Keydatei :evil: , aber was solls, läßt sich ja rekonstruieren. Grüße Manfred |
Re: Kann keine Datensätze mehr zu Paradox-DB hinzufügen
Zitat:
Wenn der freie Speicherplatz in GB mod 4 = 0 ist, kommt die Meldung die Platte wäre voll :roll: Siehe auch ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:41 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