1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
Dim conect As New SqlConnection("data source=" + My.Computer.Name + "\SQLEXPRESS ; integrated security=true")
Dim com0 As SqlCommand = New SqlCommand("SELECT count(*) FROM sys.databases where name =.....", conect)
com = New SqlCommand("SELECT name FROM sys.databases where name =.....", conect)
For j = 0 To GetData(com).Rows.Count - 1
Dim cnString As String = "Integrated Security=true ; Data Source =" + My.Computer.Name + "\SQLEXPRESS"
Dim dbLocation As String = "C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\"
Dim dbName As String = GetData(com).Rows(j).Item(0)
Dim cn As New SqlConnection(cnString)
cn.Open()
Dim cmd As New SqlCommand("ALTER DATABASE " & dbName & " SET OFFLINE", cn)
cmd.ExecuteNonQuery()
cn.Close()
RelocateCopiedMDF(dbLocation, dbName)
cn.Open()
Dim cmd1 As New SqlCommand("ALTER DATABASE " & dbName & " SET ONLINE", cn)
cmd1.ExecuteNonQuery()
cn.Close()
Next
MessageBox.Show("Sauvegarde complete.")
Private Sub RelocateCopiedMDF(ByVal dbLocation As String, ByVal dbName As String)
Dim myMDF As String = dbLocation & "\Data\" & dbName & ".mdf"
Dim myLDF As String = dbLocation & "\Data\" & dbName & "_Log.ldf"
Dim copyMDF As New FileInfo(myMDF)
Dim copyLDF As New FileInfo(myLDF)
copyMDF.CopyTo("C:/" & dbName & ".mdf")
copyLDF.CopyTo("C:/" & dbName & ".ldf")
End Sub |