首页 > 代码库 > SP_attach_db 添加数据库文件

SP_attach_db 添加数据库文件

SP_attach_db   用法如下:  
   
  EXEC   SP_attach_db   @dbname   =   N‘目标数据库名‘,           //这是你要引入后的数据库名。  
        @filename1   =   N‘源数据库DATA文件完整路径及文件名.MDF‘,   //指明源数据库的数据文件  
        @filename2   =   N‘源数据库LOG文件完整路径及文件名.LDF‘       //指明源数据库日志文件  
  注:最后一行不要加逗号。  
   
  《参见T-SQL   存储过程和表引用》   清华大学出版社  
  Top

 

sp_attach_db  
  将数据库附加到服务器。  
   
  语法  
  sp_attach_db   [   @dbname   =   ]   ‘dbname‘  
          ,   [   @filename1   =   ]   ‘filename_n‘   [   ,...16   ]  
   
  参数  
  [@dbname   =]   ‘dbname‘  
   
  要附加到服务器的数据库的名称。该名称必须是唯一的。dbname   的数据类型为   sysname,默认值为  NULL。    
   
  [@filename1   =]   ‘filename_n‘  
   
  数据库文件的物理名称,包括路径。filename_n   的数据类型为   nvarchar(260),默认值为   NULL。最多可以指定   16   个文件名。参数名称以   @filename1   开始,递增到   @filename16。文件名列表至少必须包括主文件,主文件包含指向数据库中其它文件的系统表。该列表还必须包括数据库分离后所有被移动的文件。  
   
  返回代码值  
  0(成功)或   1(失败)  
   
  结果集  
  无  
   
  注释  
  只应对以前使用显式   sp_detach_db   操作从数据库服务器分离的数据库执行   sp_attach_db。如果必须指定多于   16   个文件,请使用带有   FOR   ATTACH   子句的   CREATE   DATABASE。  
   
  如果将数据库附加到的服务器不是该数据库从中分离的服务器,并且启用了分离的数据库以进行复制,则应该运行   sp_removedbreplication   从数据库删除复制。  
   
  权限  
  只有   sysadmin   和   dbcreator   固定服务器角色的成员才能执行本过程。  
   
  示例  
  下面的示例将   pubs   中的两个文件附加到当前服务器。  
   
  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_db 添加数据库文件