主题:如何附加没有日志文件的数据库?
jianzho
[专家分:7560] 发布于 2008-02-01 12:48:00
我的电脑中病后,找到了SQL Server 2000 的proj.mdf 数据文件,但proj.log文件丢失了,我重装系统后,如何把proj.mdf 附加到Sql Server 2000中。请指教。
回复列表 (共2个回复)
沙发
菜鸭 [专家分:5120] 发布于 2008-02-02 13:33:00
sp_attach_single_file_db
将只有一个数据文件的数据库附加到当前服务器。
语法
sp_attach_single_file_db [ @dbname = ] 'dbname'
, [ @physname = ] 'physical_name'
参数
[@dbname =] 'dbname'
要附加到服务器的数据库的名称。dbname 的数据类型为 sysname,默认值为 NULL。
[@physname =] 'phsyical_name'
据库文件的物理名称,包括数路径。physical_name 的数据类型为 nvarchar(260),默认值为 NULL。
返回代码值
0(成功)或 1(失败)
结果集
无
注释
当使用 sp_attach_single_file_db 将数据库附加到服务器时,它创建一个新的日志文件并执行额外的清除工作,从新附加的数据库中删除复制。
仅对使用显式 sp_detach_db 操作从服务器分离的数据库执行 sp_attach_single_file_db。
仅对具有单个日志文件的数据库使用 sp_attach_single_file_db。不要对具有多个日志文件的数据库使用此存储过程。
权限
只有 sysadmin 和 dbcreator 固定服务器角色的成员才能执行本过程。
示例
下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。
EXEC sp_detach_db @dbname = 'pubs'
EXEC sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'
板凳
jianzho [专家分:7560] 发布于 2008-02-04 16:16:00
谢谢! 你可不是菜鸭。是才子才对! 已搞定
我来回复