AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Datenbankbackup (Paradox) lokal auf dem Rechner
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbankbackup (Paradox) lokal auf dem Rechner

Ein Thema von chrissy · begonnen am 18. Jan 2005 · letzter Beitrag vom 20. Jan 2005
Antwort Antwort
Seite 1 von 2  1 2      
chrissy

Registriert seit: 7. Jan 2005
29 Beiträge
 
#1

Datenbankbackup (Paradox) lokal auf dem Rechner

  Alt 18. Jan 2005, 13:54
hi,

Irgendwie habe ich nicht so ganz die Idee wie ich das realisieren soll...
hatte es mit

SQL.Add('BACKUP DATABASE "'+pfad+'\Daten\" TO DISK = "'+pfad+'\Backup\ddb_backup.bak" WITH INIT'); probiert, aber beim Ausführen bekomme ich folgende Fehlermeldung : 'SymbolString nicht gefunden! Symbolstring : Backup'

Woran liegt das?
Welche anderen Möglichkeiten gibt es, das Backup zu realisieren?

Gruß
Chrissy
  Mit Zitat antworten Zitat
VizeTE

Registriert seit: 31. Dez 2002
178 Beiträge
 
Delphi 5 Enterprise
 
#2

Re: Datenbankbackup (Paradox) lokal auf dem Rechner

  Alt 18. Jan 2005, 14:49
hallo,

die Fehlermeldung läßt ja schon vermuten, daß "Backup" nicht bekannt ist. Du verwendest mit Paradox ja Local-SQL und dieses kennt meines wissens nach nur eine beschränkte Anzahl an Befehlen.

Meine Idee wäre es selbst eine Tabelle anzulegen (das kann ja Dein Programm dynamisch erledigen) und dann mit der BatchMove-Komponent die Daten einfach in die neue Tabelle kopieren. Eventuell kann BatchMove sogar die neue Tabelle selbst anlegen. Bin ich mir jedoch nicht ganz sicher. Schau mal in der Hilfe nach.

Bye
  Mit Zitat antworten Zitat
urs.liska

Registriert seit: 6. Aug 2003
Ort: Freiburg
195 Beiträge
 
Delphi 6 Professional
 
#3

Re: Datenbankbackup (Paradox) lokal auf dem Rechner

  Alt 18. Jan 2005, 16:01
Eine Paradox-Datenbank besteht aus einer Vielzahl einzelner Dateien in einem einzigen Verzeichnis.

Für ein Backup kann man doch einfach alle Dateien auf Windows-Ebene kopieren (und bei Bedarf auch noch Zip-en).
Oder sehe ich da was falsch?

MfG
Urs
  Mit Zitat antworten Zitat
chrissy

Registriert seit: 7. Jan 2005
29 Beiträge
 
#4

Re: Datenbankbackup (Paradox) lokal auf dem Rechner

  Alt 18. Jan 2005, 19:17
Danke...
Die Idee mit dem BatchMove werde ich mir mal genauer ansehen.

Das mit dem Zippen habe ich auch schon probiert, da bekam ich dann Fehlermeldungen, dass er die Tabellen nicht kennt, obwohl Name und Pfad meines erachtens korrekt waren.

Gruß
Chrissy
  Mit Zitat antworten Zitat
urs.liska

Registriert seit: 6. Aug 2003
Ort: Freiburg
195 Beiträge
 
Delphi 6 Professional
 
#5

Re: Datenbankbackup (Paradox) lokal auf dem Rechner

  Alt 18. Jan 2005, 19:32
Auf welche Weise hast Du das mit dem Zippen versucht?
Grundsätzlich müsste das schon gehen. Ich glaube (!), es sollte auch keine Probleme geben, dass die Datei gerade benutzt wird (bei Firebird darf man nicht über das OS auf die Datenbankdatei zugreifen, da nie sicher ist, was der Server gerade mit der Datei macht)

MfG
Urs
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.295 Beiträge
 
Delphi 12 Athens
 
#6

Re: Datenbankbackup (Paradox) lokal auf dem Rechner

  Alt 18. Jan 2005, 20:04
Zitat von urs.liska:
Ich glaube (!), es sollte auch keine Probleme geben, dass die Datei gerade benutzt wird
Geht nicht. Sobald eine Datenbankdatei (auch Paradox) im Zugriff ist, dann ist ein Zippen oder Backup nicht möglich.

Praktisch sind diese Dateien gesperrt. Fehler im Winzip oder im eigenen Packer-Programm etc.

Theoretisch ist folgendes zu beachten:

Stell dir vor, du hast eine 50 MB grosse Paradox-Datei. Das dauert schon etwas bis diese gezipt ist. wenn nun in der Zeit jemand einen Datensatz schreibt, würde er ggf. gesichert werden, wenn er am schluss der Datei geschrieben würde. Wenn dieser Datensatz aber am Anfang der Datei steht, wird dieser nicht mitgesichert. Hinzu kommt, daß die *.mb, *.px Datei später gesichert wird. Das bedeutet, daß in der Sicherung ein Datensatz nicht vorhanden ist, aber im Index (*.px) schon. Das gibt Datensalat.

Sogesehen kann man nur Datensatzweise die Daten auslesen und in eine SicherungsTabelle schreiben.

Ist nicht so einfach das Thema.



Gerd
  Mit Zitat antworten Zitat
chrissy

Registriert seit: 7. Jan 2005
29 Beiträge
 
#7

Re: Datenbankbackup (Paradox) lokal auf dem Rechner

  Alt 18. Jan 2005, 21:17
@Gerd
Da die Datenbank nur lokal auf einem Rechner läuft, also auch kein anderer Zugriff hat, könnte ich doch theoretisch alle Tabellen Schließen und dann Zippen,...
Nur selbst das hat nicht funktioniert.
(also: table.close, zippen, table.open)

Gruß
Chrissy
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.295 Beiträge
 
Delphi 12 Athens
 
#8

Re: Datenbankbackup (Paradox) lokal auf dem Rechner

  Alt 19. Jan 2005, 08:47
Zitat von chrissy:
Da die Datenbank nur lokal auf einem Rechner läuft, also auch kein anderer Zugriff hat, könnte ich doch theoretisch alle Tabellen Schließen und dann Zippen,
Das sollte allerdings gehen.

Womit willst du die Daten zippen? Mit einer eigenen Software, oder mit einem fertigen Programm (z.B. Winzip).
  Mit Zitat antworten Zitat
chrissy

Registriert seit: 7. Jan 2005
29 Beiträge
 
#9

Re: Datenbankbackup (Paradox) lokal auf dem Rechner

  Alt 19. Jan 2005, 09:37
Ich hatte vor das mit der Unit LZip unter Delphi zu machen, hatte mir da eine CompressStream und DecompressStream prozedur geschrieben, die packen bzw. entpacken sollen, da ich keine Ahnung habe wie ich WinZip ansprechen soll und sozusagen von Delphi steuern soll

Gruß
Chrissy
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.295 Beiträge
 
Delphi 12 Athens
 
#10

Re: Datenbankbackup (Paradox) lokal auf dem Rechner

  Alt 19. Jan 2005, 09:50
Zitat von chrissy:
Ich hatte vor das mit der Unit LZip unter Delphi zu machen, hatte mir da eine CompressStream und DecompressStream prozedur geschrieben, die packen bzw. entpacken sollen, da ich keine Ahnung habe wie ich WinZip ansprechen soll und sozusagen von Delphi steuern soll
WinZip kann nicht gesteuert werden. Winzip kannst erst mal nur Verwenden um zu sehen, ob die Paradox-Dateien gesperrt sind. Winzip würde dann eine Fehlermeldung bringen, wenn die DAteien in Benutzung sind. Wenn's keine Fehlermeldung gibt, dann kannst du den Fehler bei deiner LZIP-Programmierung suchen.

Hast du mal ein Codebeispiel, wie du LZip verwendest?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz