Hallo,
ich habe mir ein kleines Tool gebastelt, was mir die Handhabung von gbak etwas erleichern soll. Und zwar möchte ich ein Resore anstoßen mit den Optionen -r o, also eine bestehende DB überschreiben. Leider meckert der Server immer, die Datenbank sei gerade in Benutzung. Wie erkläre ich Firebiird, dass die Datenbank nicht in Benutzung ist?
Ist ein Firebird 2.1 Server und der Datenbankzugriff passiert mit ADO.NET.
Codeschnippsel:
Das ist das Argument, was ich gbak mitgebe:
-r o -v -user BENUTZER -password GEHEIM c:\Users\Christian\DB.fbk C:\DB\existing
Hier ist der Code. Es laufen keine anderen Datenbankabfragen oder ähnliches,während das hier ausgeführt wird:
ProcessStartInfo info = new ProcessStartInfo(exe);
StringBuilder sb = new StringBuilder();
sb.Append(" ");
sb.Append(args);
sb.Append(" -user ");
sb.Append(this.ParseFromConString(DBKey, "user"));
sb.Append(" -password ");
sb.Append(this.ParseFromConString(DBKey, "password"));
sb.Append(" ");
sb.Append(source);
sb.Append(" ");
sb.Append(destination);
info.Arguments = sb.ToString();
string result = "";
try {
Process p = Process.Start(info);
p.WaitForExit();
result = p.ExitCode.ToString()
...
Viele Grüße
Christian
ich habe mir ein kleines Tool gebastelt, was mir die Handhabung von gbak etwas erleichern soll. Und zwar möchte ich ein Resore anstoßen mit den Optionen -r o, also eine bestehende DB überschreiben. Leider meckert der Server immer, die Datenbank sei gerade in Benutzung. Wie erkläre ich Firebiird, dass die Datenbank nicht in Benutzung ist?
Ist ein Firebird 2.1 Server und der Datenbankzugriff passiert mit ADO.NET.
Codeschnippsel:
Das ist das Argument, was ich gbak mitgebe:
-r o -v -user BENUTZER -password GEHEIM c:\Users\Christian\DB.fbk C:\DB\existing
Hier ist der Code. Es laufen keine anderen Datenbankabfragen oder ähnliches,während das hier ausgeführt wird:
ProcessStartInfo info = new ProcessStartInfo(exe);
StringBuilder sb = new StringBuilder();
sb.Append(" ");
sb.Append(args);
sb.Append(" -user ");
sb.Append(this.ParseFromConString(DBKey, "user"));
sb.Append(" -password ");
sb.Append(this.ParseFromConString(DBKey, "password"));
sb.Append(" ");
sb.Append(source);
sb.Append(" ");
sb.Append(destination);
info.Arguments = sb.ToString();
string result = "";
try {
Process p = Process.Start(info);
p.WaitForExit();
result = p.ExitCode.ToString()
...
Viele Grüße
Christian
Comment