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

 

'程序编写: 陈林茂

‘编写日期:2003-01-01

当您的MIS系统开发好以后,您如何尽快的分发您的数据库呢?

下面我将提供VB代码的具体实现:

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
        oSQLServer.DisConnect
        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
   
    'connect
    oSQLServer.Connect "(local)", "sa", ""
   
    IsConnected = True
    ConnectDmo = True
  
HandleError:
    '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"
merror:
End Sub

Public Function isDBexists(ByVal dbName As String) As Boolean
  Dim oDB As SQLDMO.Database
  Dim rc As Boolean
  'reconnect to database
  oSQLServer.DisConnect
  oSQLServer.ReConnect
 
  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
  oSQLServer.Close
End Sub

Public Function startServer()
  oSQLServer.Start True
End Function

Public Sub stopserver()
  oSQLServer.Stop
End Sub

 

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

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

End Property

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值