仅仅是dd.mdf文件应该是不完全的,SQL好象还有一个文件dd.ldf。
用SQL的企业管理器可以吧!?

解决方案 »

  1.   

    在SQL企业管理器中的'数据库'窗口右击'所有任务/附加数据库',指定MDF文件和设置其正确位置即可.
    也可以使用SQL语句CREATE DATABASE来附加数据库:
    CREATE DATABASE 数据库名 [ON [PRIMARY](数据库文件1),(数据库文件2),…] [LOG ON (事务日志文件1),(事务日志文件2),…] [FOR ATTACH]
    最简单如:CREATE DATABASE [abc]即可。其全部选项都使用缺省设置。
    每个数据库文件和事务日志文件都要同时指定以下五项内容:NAME=文件名,FILENAME=‘物理路径’,SIZE=初始空间大小,MAXSIZE=最大空间大小,FILEGROWTH=增量。例如:
    CREATE DATABASE [abc] ON PRIMARY (NAME=[abc],FILENAME='c:\abc.mdf',
    SIZE=8MB,MAXSIZE=16MB,FILEGROWTH=20%) LOG ON (NAME=[abc_log],
    FILENAME='c:\abc.ldf',SIZE=1,MAXSIZE=1500KB,FILEGROWTH=100KB)
    缺省情况下,SIZE,MAXSIZE,FILEGROWTH的单位是MB,
    因为一个数据库可能存放在多个数据库文件中,PRIMARY是指从多个数据库文件中指定一个主文件,该文件包含整个数据库的逻辑起点和系统表。
    FOR ATTACH可选参数指定是否附加数据库,即使用现有的MDF文件,可以只指定一个PRIMARY主文件,其系统表中包含了以前定义时的所有数据文件和日志文件有关信息,如果路径对的话,其它数据库文件和事务日志将自动加入,否则需要重新指定,如:CREATE DATABASE [abc2] ON PRIMARY (FILENAME = 'c:\abc.mdf') FOR ATTACH,当然如果事务日志不在原路径的话,也可以在这句SQL中加LOG ON重新指定事务日志文件的正确路径,注:附加数据库时,在数据库文件和事务日志文件的参数中,只要指定FILENAME就行了。这一点与新建数据库不同。
      

  2.   

    查看SQL SERVER 的帮文件,比你在这里看人家答你好一百倍!
      

  3.   

    到SQL SERVER版搜索一下,可以找到很多。
    http://www.csdn.net/expert/topic/712/712112.xml?temp=1.653689E-02
      

  4.   

    用系统存储过程.
    在查询分析器里执行
    示例:
    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'
    或者不要日志文件
    sp_attach_single_file_db
    EXEC sp_attach_single_file_db @dbname = N'pubs', 
       @filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'