在sql中
master数据库中有
select * from  sysdatabases where name = '数据库名'

解决方案 »

  1.   

    假如你已经装了sql 2000
    那么在你的工程中引入:microsoft sqldmo object library
    然后:
    Dim s As SQLDMO.SQLServer
    Set s = New SQLDMO.SQLServer
    'connect to the valiad server
    s.Connect 服务器名, "sa", ""
    If Err <> 0 Then
         MsgBox "error"
            Exit Sub
         End If
         For i = 1 To s.Databases.Count
             '这里可以获得这个服务器中的所有数据库名,
             if  s.Databases(i).Name="water" then
              '你自己处理了
             End if
              
         Next
      

  2.   

    'One Test Program
    'Add the Reference of "microsoft SQLDMO Object Library"
    'Add a ComboBox On the Form,named cboServer
    'Add a Checkbox On the Form,named chkNTSecurity
    'Add two textbox On the Form,named txtUID,txtPWD
    'Add a CommandBox On the Form,named cmdConnect
    'Add a textbox On the Form,named txtDatabase(the Database you want to check whether exist)
    'Add a CommandBox On the Form,named cmdCheck
    'This Program is to Show How to Use SQLDMO to Check a Database whether ExistDim oSQLServer As New SQLDMO.SQLServerPrivate Sub cboServer_Change()
        cmdConnect.Enabled = True
    End SubPrivate Sub chkNTSecurity_Click()    If chkNTSecurity.Value = vbChecked Then
            txtUID.Enabled = False
            txtPWD.Enabled = False
        End If
        
    End SubPrivate Sub cmdCheck_Click()
    '    lstDatabases.Text = txtDataBase.Text
    '    If lstDatabases.ListIndex <> -1 Then
    '        MsgBox "The DataBase is Exist!"
    '    Else
    '        MsgBox "The DataBase isn't Exist!"
    '    End If
        Dim oDatabase As SQLDMO.Database
        
        On Error GoTo CheckError
        
        ' Check the databases whether exist
        For Each oDatabase In oSQLServer.Databases
            If oDatabase.Status <> SQLDMODBStat_Inaccessible Then
                '
                If UCase(txtDatabase.Text) = UCase(oDatabase.Name) Then
                    MsgBox "The Database You want to check is exist!"
                    Exit Sub
                End If
            End If
        Next oDatabase
        MsgBox "The Database You want to check isn't exist!"
        Exit Sub
         
    CheckError:
        SQLDMOError
        
    End SubPrivate Sub cmdConnect_Click()    On Error GoTo ConnectError
        
        MousePointer = vbHourglass
        
        ' Setup a secure login for NT security
        If chkNTSecurity.Value = vbChecked Then
            oSQLServer.LoginSecure = True
        End If
        
        ' Connect to the selected SQL Server system
        oSQLServer.Connect cboServer.Text, txtUID.Text, txtPWD.Text
        
        'Disabled the Connect Button
        cmdConnect.Enabled = False
            MousePointer = vbDefault
        Exit Sub
        
    ConnectError:
        SQLDMOError
        MousePointer = vbDefault
    End SubPrivate Sub Form_Load()    Dim oApplication As New SQLDMO.Application
        Dim oServerGroup As SQLDMO.ServerGroup
        Dim oRegisteredServer As SQLDMO.RegisteredServer
        
        cboServer.Clear
        ' Process all the server groups
        For Each oServerGroup In oApplication.ServerGroups
            ' Process each registered server
            For Each oRegisteredServer In oServerGroup.RegisteredServers
                ' Add each name to the combobox
                cboServer.AddItem oRegisteredServer.Name
            Next
        Next
        
        Set oRegisteredServer = Nothing
        Set oServerGroup = Nothing
        Set oApplication = Nothing
        
    End SubPublic Function SQLDMOError()
        
        Dim sErrorMsg As String
        
        sErrorMsg = Err.Source & " Error: " & _
                    Err.Number - vbObjectError & ": " & Err.Description    SQLDMOError = MsgBox(sErrorMsg, vbOKOnly, "SQL-DMO Error")End Function
      

  3.   

    'Add the Following Code
    Private Sub cboServer_Click()
        cmdConnect.Enabled = True
    End Sub
      

  4.   

    直接用ADO控件的连接向导试一下就可以了!!!!!!
    如成功会提示测试成功!!
      

  5.   

    w18ily 老兄 太复杂了吧,有没有简单点的
      

  6.   

    [名称]           判断数据库中是否有特定的表[语言种类]       Visual Basic[类别一]         数据库[类别二]         SQL资料[类别三]         空[数据来源]       李梓钰[保存时间]       2002-08-21[关键字一]       特定表格[关键字二]       判断存在[关键字三]       数据库[内容简介]       空[源代码内容]'-------------------------------------------------
    ' 函数名:ExistTable
    ' 函数说明:判断数据库中是否有特定的表
    ' 参数:TableName,Cn
    ' 参数说明:
    '       TableName:要判断的表名
    '       Cn:连接名
    ' 返回值:有
    ' 返回值说明:1.存在;0,不存在
    ' 作者:李梓钰.
    ' 注意事项:无.
    ' 创建日期:2002/01/05
    ' 修改日期:2002/01/05
    '-------------------------------------------------
    Public Function ExistTable(TableName, Cn As ADODB.Connection) As String
        Dim i As Integer
        Dim Rs_ExitTable As New ADODB.Recordset
        Dim Cn_ExitTable As New ADODB.Connection
        
        On Error GoTo FindErr:
          
        Set Cn_ExitTable = Cn
        Cn_ExitTable.CursorLocation = adUseClient
        Set Rs_ExitTable = Cn_ExitTable.OpenSchema(adSchemaTables)    For i = 0 To Rs_ExitTable.RecordCount - 1
            If Rs_ExitTable!table_name = TableName Then
                ExistTable = 1
                Exit For
                    Else
                        ExistTable = 0
            End If
            Rs_ExitTable.MoveNext
            If Rs_ExitTable.EOF Then Rs_ExitTable.MoveLast
        Next
        Exit Function
    FindErr:
        MsgBox Err.Description
    End Function
         以上代码保存于: SourceCode Explorer(源代码数据库)
               复制时间: 2002-11-02 21:18
               软件版本: 1.0.746
               软件作者: Shawls
               个人主页: Http://Shawls.Yeah.Net
                 E-Mail: [email protected]
                     QQ: 9181729
      

  7.   

    To 87207688(紫星):其实并不复杂,我写的是全程序,你只需要 Private Sub cmdCheck_Click()就行了,这是测试程序,我考虑了连接(信任和非信任)!!