Veröffentlicht 4. August 200124 j In dbase konnte ich mit den Befehl PACK DBF-Tabellen packen, sprich die als gelöscht makierten Datensätze vollständig löschen. Wie gehe ich vor, wenn ich dies in SQL bewerkstelligen will. Verwende z.Z. den Borland C++ Builder4
4. August 200124 j du kannst datensätze mit dem sql befehl delete löschen, entweder alle oder, mit angabe von where und einer bedingung , ausgewählte delete * from schema.tabelle where bedingung
4. August 200124 j aber werden in DBF-Tabellen damit nur als gelöscht makiert jedoch nicht aus den Datensatz entfernt?
4. August 200124 j es ist keine markierung ob etwas gelöscht werden soll, damit werden die datensätze physisch und ohne sicherheitsabfrage aus der tabelle entfernt.
4. August 200124 j Doch, Datenbanksysteme arbeiten wirklich so. Gelöschte Datensätze werden als gelöscht markiert der Speicher in der Datenbank wird aber nicht freigegeben. Eine Möglichkeit unter SQL diese Tabellen zu reorganisieren ist: dumpen der Tabelle in sequentielle Datei, dropen der Tabelle, neu erstellen der Tabelle, wieder einlesen des Dumpes. Macht aber ingesamt nur Sinn wenn man nach umfangreichen Löschaktionen davon ausgeht, daß die Daten nicht wieder hinzugefügt werden. Hoagi
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.