社区
C#
帖子详情
如何实现数据库的还原
pgj
2004-07-12 03:12:59
C#代码开发的应用程序,数据库使用MSDE,如何实现在安装应用程序时(同时也安装了MSDE数据库)还原数据库(如果没有此数据库,则创建一个数据库,并把含有一些基础数据的备份文件还原到数据库),或者也可以考虑在运行系统时通过代码来实现,不知道哪位高人能指点一下
...全文
154
10
打赏
收藏
如何实现数据库的还原
C#代码开发的应用程序,数据库使用MSDE,如何实现在安装应用程序时(同时也安装了MSDE数据库)还原数据库(如果没有此数据库,则创建一个数据库,并把含有一些基础数据的备份文件还原到数据库),或者也可以考虑在运行系统时通过代码来实现,不知道哪位高人能指点一下
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
「已注销」
2004-07-16
打赏
举报
回复
SqlConnection连接到SQL Server服务器的master表,然后发一个“Create Table ...”命令过去就可以啦。
pgj
2004-07-16
打赏
举报
回复
利用SQLDMO进行备份和还原没问题了,怎么进行“新建数据库”操作阿?
hanbinghai
2004-07-16
打赏
举报
回复
看你的数据库有没有动态建立的需要,如果没有,你先手工建立好,还可以输入好数据,备份一份之后,在新的机器上还原一份即可,^_^
chenyu001
2004-07-16
打赏
举报
回复
Create Table
hanbinghai
2004-07-12
打赏
举报
回复
参见在C#中运用SQLDMO备份和恢复Microsoft SQL Server数据库
http://dev.csdn.net/develop/article/28/28564.shtm
当不使用要恢复的数据库时以上方法可行,但当你使用了数据库时就必须杀死该进程
代码如下:
/// <summary>
/// 还原数据库函数
/// </summary>
/// <param name="strDbName">数据库名</param>
/// <param name="strFileName">数据库备份文件的完整路径名</param>
/// <returns></returns>
public bool RestoreDB(string strDbName,string strFileName)
{
//PBar = pgbMain ;
SQLDMO.SQLServer svr = new SQLDMO.SQLServerClass() ;
try
{
//服务器名,数据库用户名,数据库用户名密码
svr.Connect("localhost","sa","hai") ;
SQLDMO.QueryResults qr = svr.EnumProcesses(-1) ;
int iColPIDNum = -1 ;
int iColDbName = -1 ;
for(int i=1;i<=qr.Columns;i++)
{
string strName = qr.get_ColumnName(i) ;
if (strName.ToUpper().Trim() == "SPID")
{
iColPIDNum = i ;
}
else if (strName.ToUpper().Trim() == "DBNAME")
{
iColDbName = i ;
}
if (iColPIDNum != -1 && iColDbName != -1)
break ;
}
//杀死使用strDbName数据库的进程
for(int i=1;i<=qr.Rows;i++)
{
int lPID = qr.GetColumnLong(i,iColPIDNum) ;
string strDBName = qr.GetColumnString(i,iColDbName) ;
if (strDBName.ToUpper() == strDbName.ToUpper())
{
svr.KillProcess(lPID) ;
}
}
SQLDMO.Restore res = new SQLDMO.RestoreClass() ;
res.Action = 0 ;
res.Files = strFileName ;
res.Database = strDbName ;
res.ReplaceDatabase = true ;
res.SQLRestore(svr) ;
return true ;
}
catch
{
return false;
}
finally
{
svr.DisConnect() ;
}
}
「已注销」
2004-07-12
打赏
举报
回复
The MSDE Deployment Toolkit (RC) in Action
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnmsde/html/msdedepl.asp
lgsnake
2004-07-12
打赏
举报
回复
我耶想知道啊,哪个铁铁代码
xinshaw
2004-07-12
打赏
举报
回复
顶,gz
lyrixliu
2004-07-12
打赏
举报
回复
用具有sa权限的用户连接到master数据库,用restore database 语句来实现
代码就懒得整理了,自己参考msdn写吧
athossmth
2004-07-12
打赏
举报
回复
关注
Android ListView列表分组.docx
Android ListView列表分组.docx
Android Camera相关知识(1).docx
Android Camera相关知识(1).docx
计算机专业项目代码:基于Java ME无线网络移动端的俄罗斯方块游戏的
实现
(源代码+论文).7z
计算机专业毕业设计项目源码、论文
医院信息化建设.doc
医院信息化建设.doc
虚拟化环境的稳定性.pptx
虚拟化环境的稳定性.pptx
C#
111,093
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章