vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik:    |   VB-Versionen: VB6, VBA01.11.16
SQL-Datenbank offline schalten

Eine SQL Datenbank offline und später wieder online zu schalten lässt sich ganz einfach erledigen, wie dieser Einzeiler zeigt.

Autor:  Dieter OtterBewertung:     [ Jetzt bewerten ]Views:  1.916 
http://www.tools4vb.de/System:  Win7, Win8, Win10, Win11kein Beispielprojekt 

Nachfolgende Funktion versetzt eine Datenbank im MS-SQL Server in den Offline-Zustand. Die Funktion erwartet als Parameter ein gültiges ADODB.Connection Objekt, sowie den Namen der Datenbank. Die Datenbank selbst sollte nicht geöffnet sein!

' Schaltet die angegebene SQL Datenbank offline
Public Function DB_SetOffline(ByRef oConn As ADODB.Connection, _
  ByVal sDBName As String) As Boolean
 
  ' Fehlerbehandlung
  On Error Goto ErrHandler
 
  ' SQL-Befehl zum Offline-Schalten 
  oConn.Execute "ALTER DATABASE [" & sDBName & "] SET OFFLINE WITH ROLLBACK IMMEDIATE"
 
  DB_SetOffline = True
  On Error Goto 0
  Exit Function
 
ErrHandler:
  MsgBox "Die Datenbank konnte nicht offline gesetzt werden!" & vbCrLf & _
    "Fehler " & CStr(Err.Number) & vbCrLf & Err.Description
End Function

Und hier noch die Funktion, um eine Datenbank wieder online zu schalten.

' Schaltet die angegebene SQL Datenbank online
Public Function DB_SetOnline(ByRef oConn As ADODB.Connection, _
  ByVal sDBName As String) As Boolean
 
  ' Fehlerbehandlung
  On Error Goto ErrHandler
 
  ' SQL-Befehl zum Offline-Schalten 
  oConn.Execute "ALTER DATABASE [" & sDBName & "] SET ONLINE"
 
  DB_SetOnline = True
  On Error Goto 0
  Exit Function
 
ErrHandler:
  MsgBox "Die Datenbank konnte nicht online gesetzt werden!" & vbCrLf & _
    "Fehler " & CStr(Err.Number) & vbCrLf & Err.Description
End Function