【原创】批处理完成SQLSERVER数据库的附加、分离的小程序。

来源:互联网 发布:淘宝模特拍照多少钱 编辑:程序博客网 时间:2024/05/16 08:45
功能:把同目录下的.MDF、.LDF数据库备份文件,复制到SQLSERVER数据库文件目录中。进行附加和分离操作。
还有很多问题还没解决,如:服务器未开返回的错误如何判断,如何在数据库中停止和启动MSSQLServer..等。
===============================================
代码:
---------------------------------------------------------------------------------------------------------
@echo off
cls
color 0a
rem SQLSERVER2000 数据库附加、分离的小程序
rem 下面是变量的一些定义,dbloginname是数据库登入名,dbloginpwd是数据库登入密码,dbname是数据库名,dbmdf和

dbldf是数据库文件
set dbloginname=sa
set dbloginpwd=wl
set dbname=workflow
set dbmdf=workflow_Data.MDF
set dbldf=workflow_Log.LDF

>"%temp%/my.vbs" echo Set WshShell = WScript.CreateObject("WScript.Shell")
>>"%temp%/my.vbs" echo WScript.Echo

WshShell.RegRead("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSSQLServer/Setup/SQLDataRoot")
for /f "delims=" %%a in ('cscript /nologo "%temp%/my.vbs"') do set SQL=%%a/Data

echo SQLSERVER数据库文件目录路径:%SQL%  
echo.
echo 正在复制mdf,请等待...
copy %dbmdf%  "%SQL%"
echo 正在复制ldf,请等待...
copy %dbldf%  "%SQL%"
echo 复制的文件名是:%dbmdf%和%dbldf%
:start
cls
echo.
echo============================================================================
echo.
echo                         请输入选择项后,按回车确认
echo 1.附加数据库
echo 2.分离数据库
echo 3.退出
echo.
echo                                                               author:AUGVII
echo============================================================================
set /p var=请选择:
if %var% == 1 goto attachdb
if %var% == 2 goto detachdb
if %var% == 3 goto exit

:detachdb
osql   -U"%dbloginname%"   -P"%dbloginpwd%"   -S"127.0.0.1"   -Q"sp_detach_db   '%dbname%'"
echo 处理中...
echo db detach successful!
pause
goto start

:attachdb
osql   -U"%dbloginname%"   -P"%dbloginpwd%"   -S"127.0.0.1"   -Q"sp_attach_db  

'%dbname%','%SQL%/%dbmdf%','%SQL%/%dbldf%'"
echo 处理中...
echo db attach successful!
pause
goto start

:exit
echo 欢迎使用...      
pause
==================================================
原创粉丝点击