Dim cn As New ADODB.Connection
Dim rst As New ADODB.Recordsetcn.CursorLocation = adUseClient
cn.Open "Provider=SQLOLEDB.1;Password=qdccaucma;Persist Security Info=True;User ID=sa;Initial Catalog=MyDb;Data Source=sql"

解决方案 »

  1.   

    你先建立一个 数据库,与拷贝得来的同名
    然后,停止sql,
    将拷贝的数据库文件覆盖掉sql目录下刚才建立的数据库的文件,
    启动,ok~~~~~~~~
      

  2.   

    如果是备份的文件需要用恢复功能恢复,如果直接拷贝的文件,要先建一个相同名称的空库,关闭SQL后,将Data目录下相同文件覆盖,再启动SQL看,但后者不一定每次成功,多试几次。
      

  3.   

    注意。你的sql server的数据库的数据的路径要符合,就是说你copy过来的
    数据库所在的路径要和你新建的数据库的路径一样(还原备份的时候)
      

  4.   

    如果你有MDF和LDF两个文件,使用sp_attach_db将它导入到你的数据库;
    如果你只有MDF文件,使用sp_attach_single_file_db将它导入到你的数据库。然后就可以使用ENTERPRISE MANAGER打开了。
    关于这两个存储过程的用法,可以在SQL SERVER BOOKS ONLINE中看一下,
    有示例的。
      

  5.   

    先建立一数据库,数据库名与拷贝得来的同名
    然后,停止sql,
    将拷贝的数据库文件覆盖掉sql目录下刚才建立的数据库的文件,
    然后启动服务.
      

  6.   

    junglerover(灌木丛)  能不能说得仔细点,我是初学者
      

  7.   

    Public SqlCommand As New ADODB.Command     '定义 SQL 命令
    Public adoCN As New ADODB.Connection       '定义数据库的连接存放数据和代码
    Dim adoDateTime As New ADODB.Recordset     '获取 NT-SERVER 时间Public Function OpenConnection() As String '打开数据库
        On Error GoTo SQLConErr
        With adoCN
            .CursorLocation = adUseClient
            .Provider = "sqloledb"
            .Properties("Data Source").Value = cNtServerName
            .Properties("Initial Catalog").Value = cDatabaseName
            .Properties("User ID") = cSQLUserName
            .Properties("Password") = cSQLPassword
            .Properties("prompt") = adPromptNever
            .ConnectionTimeout = 15
            .Open
            
            If .State = adStateOpen Then
                adoDateTime.Open "select getdate()", adoCN, adOpenStatic, adLockOptimistic
                cServerDate = Format(adoDateTime(0), "yyyy-mm-dd")
                cServertime = Mid(adoDateTime(0), 10)
            Else
                MsgBox "数据库连接失败,请找系统管理员进行检查 !", 16, cProgramName
                End
            End If
        End With
        
        SqlCommand.ActiveConnection = adoCN
        SqlCommand.CommandType = adCmdText
        Exit Function
    SQLConErr:
        Select Case Err.Number
            Case -2147467259
                MsgBox "找不到指定的SQL Server服务器或者数据库不存在,请重新设置!", vbExclamation
                F_SetSystem.Show 1
            Case -2147217843
                MsgBox "指定的SQL Server数据库用户不存在或口令错误,请重新设置!", vbExclamation
                F_SetSystem.Show 1
            Case Else
                MsgBox "数据环境连接失败,请找系统管理员进行检查 !", 16, cProgramName
        End Select
        OpenConnection
    End Function
      

  8.   

    lihonggen0(用VB)你贴的什么乱七八糟的代码啊。 Mylove(阿虎)我不是说过了么:
    在SQL  SERVER  BOOKS  ONLINE中看一下,有示例的!只要你安装了SQL SERVER,就有这个东西的。
    哦,对了,如果你装的是SQL SERVER 2000,那么它叫做“联机丛书”。在里面搜索一下“sp_attach_db”就完了!还要怎么说才算清楚啊。
      

  9.   

    是我弄错了,我的程序是在VB里连接SQL: junglerover(灌木丛) 的方法是正确的
      

  10.   

    你是用什么方法拷贝的数据库?先用Backup将数据库备下来,然后再你的数据库上建一个同名的数据库,用restore的覆盖选项,将备份的数据库在新建的数据库上恢复,应该可以的
      

  11.   

    junglerover(灌木丛) :你好,示例我找到了,可是我不知道怎么运行它,希望你能告诉我,我运行成功后一定给你分数!!!
      

  12.   

    只要连接到SQL SERVER上的master数据库,再加一句代码就可以:dim AdoConn as ADODB.Connection
    dim strConn as string
    dim strCmd as stringset AdoConn =new ADODB.Connection'注意要连master库
    strConn="Provider=SQLOLEDB.1;Password=;Persist Security Info=False;User ID=sa;Initial Catalog=master;Data Source=dbserver"
    AdoConn.OpenstrCmd="EXEC sp_attach_db @dbname = N'pubs', "+ _
        "@filename1 = N'c:\mssql7\data\pubs.mdf', "+ _
        "@filename2 = N'c:\mssql7\data\pubs_log.ldf'"
    Adoconn.Execute strCmd
    Adoconn.Close完了!随手写的,没测试过,不过应该差不多。
    注意:只能在服务器端计算机执行。