EXEC sp_attach_db @dbname = N'pubs', 
   @filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf', 
   @filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'
或:EXEC sp_attach_single_file_db @dbname = 'pubs', 
   @physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'

解决方案 »

  1.   

    这么着可以吗?
    Private Sub CreateDataBase(cnDataBase as connect,DBName As String)
    cnDataBase.Execute sp_attach_single_file_db @dbname = 'DBName', 
       @physname = F:\Project\Data\pubs.mdf'
    End Sub
      

  2.   

    你那样处理不太好,如果要创建两个及以上的数据库,那数据文件不是同名了吗?
    最好这样:假设你的数据文件:project_Data.MDF和project_Log.LDF 放在 F:\Project\Data\目录下:
    Public Shared Function CreateDB(ByVal DBName As String) As SqlConnection
         filecopy "F:\Project\Data\project_Data.mdf","F:\Project\Data\" & dbname & "_Data.mdf"
         filecopy "F:\Project\Data\project_Data.ldf","F:\Project\Data\" & dbname & "_Log.ldf"
        cnDataBase.Execute "sp_attach_single_file_db '" & DBName & "',' F:\Project\Data\" & dbname & "_Data.mdf','F:\Project\Data\" & dbname & "_Log.ldf'" 
    End Function
      

  3.   

    楼上的兄弟,果然想得比较周全,要不要加一个判断语句,判断project_Data.MDF和project_Log.LDF 这两个文件的存在?
      

  4.   

    请问:cnDataBase as connect中的connect与SqlConnection有什么区别
    SqlConnection好像没有Excute这个方法...
      

  5.   

    你是什么程序设计语言啊?SqlConnection是什么?
      

  6.   

    Const DBNameConnection As String = _
                       "Server=localhost;" & _
                         "DataBase=DBName;" & _
                    "Integrated Security=SSPI;Connect Timeout=5"
    Dim SqlConn As New SqlConnection(DBNameConnection)//这是个数据库连接对象阿..
      

  7.   

    cnDataBase as connect,难道不是一个连接对象吗?
    //please help.....
      

  8.   

    我用的是VB你的那个我真的不知道.但是要数据库对象才能用.execute的.
    当然,也不是每个对象都支持.
      

  9.   

    VB?我用的是ASP.NET.....在VB中cnDataBase是什么数据对象?