+ -
当前位置:首页 → 问答吧 → 如何修改数据库附加的批处理文件?

如何修改数据库附加的批处理文件?

时间:2011-12-27

来源:互联网


如下代码,想做一个附加数据库的批处理文件,将下面代码保存为a.bat,在a.bat同目录下任意放入数据库文件,例如放入xxx_Data.MDF、xxx_log.LDF、yyy_Data.MDF、yyy_Log.LDF两组数据库文件,执行a.bat报错,生成的create.sql文件有问题,该怎么修改批处理文件以达到附加同目录下的所有数据库文件的目的?
ECHO USE [master] >> Create.sql

ECHO GO >> Create.sql

FOR %%I IN (*.mdf) DO ECHO declare @sql varchar(1000) select @sql = isnull(@sql,'') + isnull(' kill ' + convert(varchar(100),spid),'') FROM sysprocesses WHERE dbid = db_id('%%~nI') if (@sql is not null) exec(@sql) >> Create.sql 

FOR %%I IN (*.mdf) DO ECHO go >> Create.sql

FOR %%I IN (*.mdf) DO ECHO sp_detach_db [%%~nI], 'true' >> Create.sql

FOR %%I IN (*.mdf) DO ECHO CREATE DATABASE [%%~nI] ON >> Create.sql

FOR %%I IN (*.mdf) DO ECHO (FILENAME = N'%%~dpnxI'), >> Create.sql

FOR %%I IN (*.ldf) DO ECHO (FILENAME = N'%%~dpnxI') >> Create.sql

ECHO FOR ATTACH >> Create.sql

ECHO GO >> Create.sql

sqlcmd -i Create.sql

ECHO.

PAUSE

作者: octwind   发布时间: 2011-12-27

类似于附加数据库的操作,还是不要用自动化吧.

作者: qianjin036a   发布时间: 2011-12-27

http://hi.baidu.com/_hkx/blog/item/34d13f307b1bef92a8018e50.html

参考一下 具体没有去试过

作者: fredrickhu   发布时间: 2011-12-27