Detach, copy und re-attach

05/09/2009 - 20:25 von Finn Stampe Mikkelsen | Report spam
Hallo

Ich habe ein problem. In meiner applikation, muss ich meine datenbank
(lokales mdf/ldf file set) kopieren vom program aus. Ich muss einen backup
und spàter einen restore dieses backups machen.

Wenn ich dass File.Copy aufrufe, bekomme ich einen fehler, dass die
datenbank gebraucht wird. Ich kann aber keinen code finden, die diese
dantenbank detached und hinterher wieder re-attached.

Mein connectionstring is wie folgt:

"Data
Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Database1.mdf;Integrated
Security=True;Connect Timeout`;User Instance=True"

Kann mir da irgendwer helfen??

/Finn
Der er 10 slags mennesker - Dem som forstår binær og dem som ikke gør.
There are 10 kinds of people. Those who understand binary and those who
don't.
Es gibt 10 Arten von Menschen. Die, die Binàr verstehen, bzw. die, die es
nicht tuhen.
 

Lesen sie die antworten

#1 Elmar Boye
05/09/2009 - 21:18 | Warnen spam
Hallo Finn Stampe,

"Finn Stampe Mikkelsen" schrieb ...
Ich habe ein problem. In meiner applikation, muss ich meine datenbank (lokales mdf/ldf file set) kopieren vom program aus. Ich
muss einen backup und spàter einen restore dieses backups machen.



Effizienter ist der Weg über die BACKUP und RESTORE Befehle des
SQL Servers, denn dazu brauchst Du die Datenbank nicht trennen:
http://msdn.microsoft.com/de-de/lib...86865.aspx
BACKUP
und http://msdn.microsoft.com/de-de/lib...86858.aspx
RESTORE

(Beispiele für die Standardvarianten findest Du dort)

Wenn ich dass File.Copy aufrufe, bekomme ich einen fehler, dass die datenbank gebraucht wird. Ich kann aber keinen code finden,
die diese dantenbank detached und hinterher wieder re-attached.



Das ginge via sp_detach_db und File.Copy, danach müsstest
Du die Datenbank wieder mit sp_attach_db anfügen.

Beides wird beschrieben in
http://support.microsoft.com/kb/314546
"Verschieben von Datenbanken zwischen Computern mit SQL Server"

Gruß Elmar

Ähnliche fragen