【原创】批处理完成SQLSERVER数据库的附加、分离的小程序。
2008-09-24 14:55
246 查看
功能:把同目录下的.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
==================================================
还有很多问题还没解决,如:服务器未开返回的错误如何判断,如何在数据库中停止和启动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
==================================================
相关文章推荐
- 【原创】Android adb错误“'adb' 不是内部或外部命令,也不是可运行的程序或批处理文件。”处理方法
- SqlServer数据库分离与附加
- 附加分离SQLServer数据库命令
- 转: 编写程序,分离出一个实数的整数部分与小数部分,要求用函数完成
- 232串口通信程序刚完成(本站原创)
- 编写程序,分离出一个实数的整数部分与小数部分,要求用函数完成
- c#实现附加分离备份还原数据库(绝对原创)
- 程序调用批处理完成上传、下载
- sqlserver数据库附加分离备份还原命令
- ASP.NET程序从IIS6移植到IIS7时出现500.22错误[原创]
- [原创]另类调用 printf 完成任务的方法
- ant 学习(2)-ant开发java程序,buile.xml文件分离
- 用分离、附加的方式实现sql server数据库的备份和还原
- 'keytool' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
- windows7不能将程序快捷方式附加到任务栏,没有"将此程序锁定到任务栏"项的解决办法
- SQL Server数据库之数据库的创建、修改、查看、删除及分离与附加
- 【原创】浅谈如何在C#Winform程序中正确使用登录窗体
- 【Vegas原创】“没有与共享服务提供程序SharedServices 关联的管理网站”解决
- 【原创】搞了个NetGear的路由器,为此写了个小程序来查Wan IP.
- 初步完成蒙皮骨骼动画3dMAX导出插件及程序加载测试