img linmaochen

如何自动发布MS SQL SERVER数据库?

发表于2003/4/2 8:58:00  782人阅读


'程序编写: 陈林茂




Option Explicit

'define the sql connect
Dim oSQLServer As SQLDMO.SQLServer
Dim oCurrentDB As SQLDMO.Database
Dim oCurrentTable As SQLDMO.Table
Dim oTestIdx As SQLDMO.Index

'sqlDmo is Connected Yes or No
Public sName As String
Private IsConnected As Boolean

'connect to local database server
Public Function ConnectDmo() As Boolean
   On Error GoTo HandleError
   'If we're connected, then disconnect and clear lists.
   If IsConnected = True Then
        IsConnected = False
   End If
   'Begin connect to sqlserver or msde
   'Attempt a connection, then fill the properties stuff.
    oSQLServer.ApplicationName = "SQL-DMO Index Test"
    oSQLServer.LoginSecure = True
    oSQLServer.Connect "(local)", "sa", ""
    IsConnected = True
    ConnectDmo = True
    'connect failth
    If IsConnected = False Then
      IsConnected = False
      ConnectDmo = False
    End If
End Function

'add a exists database to server
Public Function AddDataBase(ByVal dbName As String, ByVal DBPath As String, ByVal rstr As String) As Boolean
   Dim rstring
   'rstring = oSQLServer.AttachDBWithSingleFile(dbName, DBPath)
   rstring = oSQLServer.AttachDB(dbName, DBPath)
   AddDataBase = True
   rstr = rstring
End Function

'delete the exists database
Public Function DelDataBase(ByVal dbName As String) As Boolean
  Dim rstring
  rstring = oSQLServer.DetachDB(dbName)
  DelDataBase = True
End Function

Private Sub UserControl_Initialize()
  On Error GoTo merror
    Set oSQLServer = New SQLDMO.SQLServer
    oSQLServer.LoginTimeout = 15
    oSQLServer.ODBCPrefix = False
    Name = "msdeconn1"
End Sub

Public Function isDBexists(ByVal dbName As String) As Boolean
  Dim oDB As SQLDMO.Database
  Dim rc As Boolean
  'reconnect to database
  rc = False
  For Each oDB In oSQLServer.Databases
    If oDB.SystemObject = False Then
        If Trim(UCase(oDB.Name)) = Trim(UCase(dbName)) Then
          rc = True
        End If
    End If
  Next oDB
  'set the return value
  isDBexists = rc
End Function

Private Sub UserControl_Terminate()
  'end connect the database
End Sub

Public Function startServer()
  oSQLServer.Start True
End Function

Public Sub stopserver()
End Sub


Public Property Get Name() As Variant
  Name = sName
End Property

Public Property Let Name(ByVal vNewValue As Variant)
  sName = vNewValue

End Property

0 0



取 消