我们知道,用SQLDMO可以实现对数据库的备份与恢复,下面给出简单的实现方法。
首先需要添加对SQLDMO引用

1.实现数据库的备份:
1
/**//// <summary>
2
/// 数据库备份
3
/// </summary>
4
/// <returns>备份是否成功</returns> 5
public bool DbBackup()
6
{
7
string path = CreatePath();
8
SQLDMO.Backup oBackup = new SQLDMO.BackupClass();
9
SQLDMO.SQLServer oSQLServer = new SQLDMO.SQLServerClass();
10
try
11
{
12
oSQLServer.LoginSecure = false;
13
oSQLServer.Connect(server,uid, pwd);
14
oBackup.Action = SQLDMO.SQLDMO_BACKUP_TYPE.SQLDMOBackup_Database;
15
oBackup.Database = database;
16
oBackup.Files = path;
17
oBackup.BackupSetName = database;
18
oBackup.BackupSetDescription = "数据库备份";
19
oBackup.Initialize = true;
20
oBackup.SQLBackup(oSQLServer);
21
22
return true;
23
}
24
catch(Exception ex)
25
{
26
return false;
27
throw ex;
28
}
29
finally
30
{
31
oSQLServer.DisConnect();
32
}
33
} 2.实现数据库恢复:
在恢复时要注意先杀掉当前数据库的所有进程
1
/**//// <summary>
2
/// 数据库恢复
3
/// </summary> 4
public string DbRestore()
5
{
6
if(exepro()!=true)//执行存储过程
7
{
8
return "操作失败";
9
}
10
else
11
{
12
SQLDMO.Restore oRestore = new SQLDMO.RestoreClass();
13
SQLDMO.SQLServer oSQLServer = new SQLDMO.SQLServerClass();
14
try
15
{
16
exepro();
17
oSQLServer.LoginSecure = false;
18
oSQLServer.Connect(server, uid, pwd);
19
oRestore.Action = SQLDMO.SQLDMO_RESTORE_TYPE.SQLDMORestore_Database;
20
oRestore.Database = database;
21
/**////自行修改
22
oRestore.Files = @"d:\aaa\aaa.bak";
23
oRestore.FileNumber = 1;
24
oRestore.ReplaceDatabase = true;
25
oRestore.SQLRestore(oSQLServer);
26
27
return "ok";
28
}
29
catch(Exception e)
30
{
31
return "恢复数据库失败";
32
throw e;
33
}
34
finally
35
{
36
oSQLServer.DisConnect();
37
}
38
}
39
}
40
41
/**//// <summary>
42
/// 杀死当前库的所有进程
43
/// </summary>
44
/// <returns></returns>45
private bool exepro()
46
{
47
48
SqlConnection conn1 = new SqlConnection("server="+server+";uid="+uid+";pwd="+pwd+";database=master");
49
SqlCommand cmd = new SqlCommand("killspid",conn1);
50
cmd.CommandType = CommandType.StoredProcedure;
51
cmd.Parameters.Add("@dbname","aaa");
52
try
53
{
54
conn1.Open();
55
cmd.ExecuteNonQuery();
56
return true;
57
}
58
catch(Exception ex)
59
{
60
return false;
61
}
62
finally
63
{
64
conn1.Close();
65
}
66
} 完整的操作类如下:
1
using System;
2
using System.Collections;
3
using System.Data;
4
using System.Data.SqlClient;
5
6
namespace DbBackUp
7

{
8
/**//// <summary>
9
/// 创建人:Terrylee
10
/// 创建时间:2005年8月1日
11
/// 功能描述:实现数据库的备份和还原
12
/// 更新记录:
13
/// </summary>
14
public class DbOperate
15
{
16
/**//// <summary>
17
/// 服务器
18
/// </summary>
19
private string server;
20
21
/**//// <summary>
22
/// 登录名
23
/// </summary>
24
private string uid;
25
26
/**//// <summary>
27
/// 登录密码
28
/// </summary>
29
private string pwd;
30
31
/**//// <summary>
32
/// 要操作的数据库
33
/// </summary>
34
private string database;
35
36
/**//// <summary>
37
/// 数据库连接字符串
38
/// </summary>
39
private string conn;
40
41
/**//// <summary>
42
/// DbOperate类的构造函数
43
/// 在这里进行字符串的切割,获取服务器,登录名,密码,数据库
44
/// </summary>
45
public DbOperate()
46
{
47
conn = System.Configuration.ConfigurationSettings.AppSettings["constr"].ToString();
48
server = StringCut(conn,"server=",";");
49
uid = StringCut(conn,"uid=",";");
50
pwd = StringCut(conn,"pwd=",";");
51
database = StringCut(conn,"database=",";");
52
}
53
54
/**//// <summary>
55
/// 切割字符串
56
/// </summary>
57
/// <param name="str"></param>
58
/// <param name="bg"></param>
59
/// <param name="ed"></param>
60
/// <returns></returns>
61
public string StringCut(string str,string bg,string ed)
62
{
63
string sub;
64
sub=str.Substring(str.IndexOf(bg)+bg.Length);
65
sub=sub.Substring(0,sub.IndexOf(";"));
66
return sub;
67
}
68
69
/**//// <summary>
70
/// 构造文件名
71
/// </summary>
72
/// <returns>文件名</returns>
73
private string CreatePath()
74
{
75
string CurrTime = System.DateTime.Now.ToString();
76
CurrTime = CurrTime.Replace("-","");
77
CurrTime = CurrTime.Replace(":","");
78
CurrTime = CurrTime.Replace(" ","");
79
CurrTime = CurrTime.Substring(0,12);
80
string path = @"d:\\aaa\\";
81
path += database;
82
path += "_db_";
83
path += CurrTime;
84
path += ".BAK";
85
return path;
86
}
87
88
/**//// <summary>
89
/// 数据库备份
90
/// </summary>
91
/// <returns>备份是否成功</returns>
92
public bool DbBackup()
93
{
94
string path = CreatePath();
95
SQLDMO.Backup oBackup = new SQLDMO.BackupClass();
96
SQLDMO.SQLServer oSQLServer = new SQLDMO.SQLServerClass();
97
try
98
{
99
oSQLServer.LoginSecure = false;
100
oSQLServer.Connect(server,uid, pwd);
101
oBackup.Action = SQLDMO.SQLDMO_BACKUP_TYPE.SQLDMOBackup_Database;
102
oBackup.Database = database;
103
oBackup.Files = path;
104
oBackup.BackupSetName = database;
105
oBackup.BackupSetDescription = "数据库备份";
106
oBackup.Initialize = true;
107
oBackup.SQLBackup(oSQLServer);
108
109
return true;
110
}
111
catch(Exception ex)
112
{
113
return false;
114
throw ex;
115
}
116
finally
117
{
118
oSQLServer.DisConnect();
119
}
120
}
121
122
/**//// <summary>
123
/// 数据库恢复
124
/// </summary>
125
public string DbRestore()
126
{
127
if(exepro()!=true)//执行存储过程
128
{
129
return "操作失败";
130
}
131
else
132
{
133
SQLDMO.Restore oRestore = new SQLDMO.RestoreClass();
134
SQLDMO.SQLServer oSQLServer = new SQLDMO.SQLServerClass();
135
try
136
{
137
exepro();
138
oSQLServer.LoginSecure = false;
139
oSQLServer.Connect(server, uid, pwd);
140
oRestore.Action = SQLDMO.SQLDMO_RESTORE_TYPE.SQLDMORestore_Database;
141
oRestore.Database = database;
142
/**////自行修改
143
oRestore.Files = @"d:\aaa\aaa.bak";
144
oRestore.FileNumber = 1;
145
oRestore.ReplaceDatabase = true;
146
oRestore.SQLRestore(oSQLServer);
147
148
return "ok";
149
}
150
catch(Exception e)
151
{
152
return "恢复数据库失败";
153
throw e;
154
}
155
finally
156
{
157
oSQLServer.DisConnect();
158
}
159
}
160
}
161
162
/**//// <summary>
163
/// 杀死当前库的所有进程
164
/// </summary>
165
/// <returns></returns>
166
private bool exepro()
167
{
168
169
SqlConnection conn1 = new SqlConnection("server="+server+";uid="+uid+";pwd="+pwd+";database=master");
170
SqlCommand cmd = new SqlCommand("killspid",conn1);
171
cmd.CommandType = CommandType.StoredProcedure;
172
cmd.Parameters.Add("@dbname","aaa");
173
try
174
{
175
conn1.Open();
176
cmd.ExecuteNonQuery();
177
return true;
178
}
179
catch(Exception ex)
180
{
181
return false;
182
}
183
finally
184
{
185
conn1.Close();
186
}
187
}
188
189
}
190
191
}
192
在相应的按钮
1
<asp:Button id="wbtn_Backup" runat="server" Width="60px" Text="备 份" CssClass="Button"></asp:Button> 单击事件里调用即可:
1
/**//// <summary>
2
/// 备份按钮
3
/// </summary>
4
/// <param name="sender"></param>
5
/// <param name="e"></param> 6
private void wbtn_Backup_Click(object sender, System.EventArgs e)
7
{
8
DbOperate dbop = new DbOperate();
9
dbop.DbBackup();
10
} ^_^
posted @ 2005-10-13 10:17
TerryLee 阅读(12585)
评论(389) 编辑 收藏 网摘
发表评论
也给我发份吧! xpfxh@126.com
我的站出现
Microsoft SQL-DMO (ODBC SQLState: 08004) 错误 '800a038f'
[Microsoft][ODBC SQL Server Driver][SQL Server]未能在 sysdatabases 中找到数据库 'databack.bak' 所对应的条目。没有找到具有该名称的条目。请确保正确地输入了名称。 [Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE 操作异常终止。
/admin0910/A_left_data.asp,行 23
System.Runtime.InteropServices.COMException (0x80040C81): [Microsoft][ODBC SQL Server Driver][SQL Server]无法打开备份设备 'c:\\inetpub\\wwwroot\\eBrokerage\\DBBackup\\eBrokerage_db_200731323503.BAK'。设备出现错误或设备脱机。详细信息请参阅 SQL Server 错误日志。 [Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE 操作异常终止。 at SQLDMO.BackupClass.SQLBackup(_SQLServer ServerObject) at eBrokerage.dataInitialize.DBBackup(String para_path) in c:\inetpub\wwwroot\eBrokerage\datainfo\dataInitialize.aspx.vb:line 165
我有这个问题,恳请指点。 非常感谢!
fanchongling@yahoo.com.cn
楼主,也给我发一份,多谢了..
xiajian19820809@163.com
andy.luxin@gmail.com
烦请给我发一份了
楼主`很不错哦``我最近也在学asp.net``这个例子很实用``
可以发一份源代码给我吗``如果你忙``我就自己看着你的代码弄`
如果不忙```就谢谢你哦``呵呵``多多指教``
sebastianud@yahoo.com
能不能把这份源代码发给我 谢谢
caoyang027@126.com
感谢楼主,麻烦您也给我发一份研究一下
sinease@163.com
能不能把这份源代码发给我 谢谢 ,,我正在学ASP.NET
能不能把这份源代码发给我 谢谢 ,,我正在学ASP.NET
hubisheng520@163.com
不盛感激!
我也要。搂主能不能发1一份完整的源码给我
Assmin@163.com
给我一份源代码,谢谢!我的邮箱是 xw_wl@163.com
给我一份源代码,我的邮箱是 xw_wl@163.com
我的邮箱是ljx791858@sina.com
麻烦给我发一份数据库备份和恢复原代码好吗,还有杀进程的存储过程
谢谢!!!
我的QQ号码是121793729,E_mail:ljx791858@sina.com
我看了你的数据库备份和恢复代码,还是挺不错的呀,能不能发一份完整的代码和相关的存储过程呢
搂主能不能发份完整源代码发给我 谢谢
85989815@163.com
仔细看了下搂主的,那个存储过程写的很不错啊,这两天我也用c++写了个备份还原,但我用c#写老是导入不了SQLDMO.DLL,请教楼主知道原因吗?版本原因还是别的什么,期待楼主的回复:)
麻烦您也发一份完整的给我好吗?
邮箱mlh03068@sina.com
谢谢!!!
麻烦您也发一份完整的给我好吗?
E-Mail:nbxj2001@hotmail.com
谢谢!
pccai1983@hotmail.com,最近也在烦这个,谢谢也给我来份!
lai_gb@163.com
我也要一份,谢谢楼主!!^o^
啊是啊,我想问一下,如果Web服务器跟数据库服务器不是在同一个服务器上的话可以把数据库备份到Web服务器上么?好像我之前用过SQLDMO都不能备份到Web服务器上,只能备份到数据库服务器上…………是什么原因呢?请指教……
[Microsoft][ODBC SQL Server Driver][SQL Server]无法打开备份设备 'E:\EHR2005\EHR\DbBackUp\ehr_db_200786100623.BAK'。设备出现错误或设备脱机。详细信息请参阅 SQL Server 错误日志。
[Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE 操作异常终止。
出现这种错误是什么原因呀,帮忙解答一下
SQL SERVER提供几种数据库备份方式,
一种是完整备份 (Full Backup), 第二种是差异备份(Differential Backup), 第三种是日志备份, 第四种是文件备份
完整备份是把整个数据库做个备份,差异备份只是备份进行了完整备份后数据库里的新变化。当数据库很大时, 完整备份很费空间和时间,可以根据情况定期做,比如每周或者每月做一次完整备份。 其它时间可以进行差异备份,比如每天一次,或者半天一次, 也可以结合进行日志备份。文件备份是直接备份数据库的数据和日志文件。和在操作系统里做备份一样.
在恢复的时候,只要先恢复完整备份,然后恢复最后一个差异备份就可以。如果有日志备份,还需要恢复差异备份后所做的日志备份。
备份种类通过 备份对象的Action属性来决定.
oBackup.Action=0 && 参数: 0 - 完整备份,1- 差异备份, 2- 文件备份, 3 -日志备份
顶,好不容易找到的资料,但我测试不成功。本人是新手。。。麻烦楼主给我也发一份吧。Email:passvcword@126.com 谢谢了!!!
给我也来一份。。。谢谢!!!
hamulin@126.com
不用传了,搞定。非常感谢楼主,替我解决了不少问题!!!
谢谢!
来份啊!
xiazhi33@163.com
来晚了,能给份给我吗?!!!!!!
yxczw2003@yahoo.com.cn
谢谢楼主!
楼主辛苦了!!!!!!
我又学到了一点。
辛苦楼主,我现在也在学习这方面的知识
可不可以发个给我啊
zylove_520@163.com
老大,你也用這種方法,我以為就我才用這種落後的技術.
你可是我奮鬥的目標呀
楼主发我一份完整的谢谢..!
yangsiyao@gmail.com
楼主发我一份完整的谢谢..!
5573805@qq.com
liuminteng.com@163.com
能发我一份吗,关于数据库备份,还原,和清空的,谢谢楼主!!^o^
楼住,给个killspid的存储过程。谢先。
Email:dx_qin@126.com
楼主你好!不知道我这份帖子发的晚不晚 我想要一份你备份和还原的整个实例
可否发给我一份 先谢谢楼主了!4647287@163.com
报错:不能用 KILL 来取消您自己的进程。
请问是什么原因啊?
楼主你好!我想要一份你备份和还原的整个实例
可否发给我一份 先谢谢楼主了!dulikun1985@163.com
我也想要一份.. 谢谢博主啦.. luoyabai.94@163.com
呵呵.. 代码测试通过了..
博主的文章都很及时.. 再次谢谢了...
我也要一份,谢谢了lizqiang_2006@163.com
麻烦也发我份吧 谢谢.
"对象名 'sysprocesses' 无效。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。"
这个问题要如何解决呢? 我已经在数据库中建了你上面給的存储过程.
看了您的<如何用SQLDMO在ASP.NET页面下实现数据库的备份与恢复 >这篇文章.
也在数据库中执行了您給的存储过程.
如下:
CREATE PROCEDURE killspid
/*----------------------------------
创建人:Terrylee
创建事件:2005年8月1日
功能说明:
参数说明:
----------------------------------*/
(
@dbname varchar(20) --数据库的名称
)
AS
BEGIN
DECLARE @sql nvarchar(500)
DECLARE @spid int
SET @sql='declare getspid cursor for select spid from sysprocesses where dbid=db_id('''+@dbname+''')'
EXECUTE (@sql)
OPEN getspid
FETCH NEXT FROM getspid INTO @spid
WHILE @@fetch_status<>-1
BEGIN
EXECUTE('kill '+@spid)
FETCH NEXT FROM getspid INTO @spid
END
CLOSE getspid
DEALLOCATE getspid
END
GO
但是当我运行程序时提示了以下错误.
ex
{"对象名 'sysprocesses' 无效。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。"}
[System.Data.SqlClient.SqlException]: {"对象名 'sysprocesses' 无效。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。"}
Data: {System.Collections.ListDictionaryInternal}
HelpLink: null
InnerException: null
Message: "对象名 'sysprocesses' 无效。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。"
Source: ".Net SqlClient Data Provider" ... ...
请问这个问题如何解决?
是否可以发我份代码?
我一直在关注您的文章,受益匪浅。
可否发我份学习代码?
thanks.
[Microsoft][ODBC SQL Server Driver][SQL Server]无法打开备份设备 'E:\\aaa\\MyTest_db_200811716150.BAK'。出现操作系统错误 3(系统找不到指定的路径。)。
我也出现这个问题,请问楼主怎么解决啊。我的邮箱liuhaitao-84625@163.com,可以给我发一份源代码吗?
Microsoft OLE DB Provider for SQL Server 錯誤 '80004005'
[DBNETLIB][ConnectionWrite (WrapperWrite()).]一般網路錯誤。 查閱您的網路文件。
lizqiang_2006@163.com
请麻烦你给我发一份,不胜感激~~~~~~!!!
楼主.麻烦您也发份吧 ,急要啊...
aadonsd@126.com 谢谢啦
楼主,能给我一份完整的源代码吗?谢谢!
我的邮箱:eilao@163.com
再次致谢!
能给我一份源代码吗?
谢谢!
eilao@163.com
可不可以发一份asp.net里实现数据库备份和恢复完整的代码给我啊!
我想学习学习!
我的邮箱 chenjunwei52114@163.com
谢谢!非常感谢!!
我也随他们脸皮厚直接就向李哥索要一份源码...290310398@qq.com..谢谢!
呵呵,我也想要一份ranjun_liu@126.com谢谢
我也要: xd121@126.com 谢谢你先啊!
老大,我的也是这种错误:怎么解决呀,我想不出来呀
[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访问被拒绝
[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).
上一个解决了,又出来一个:老大,怎么解决?
[Microsoft][ODBC SQL Server Driver][SQL Server]无法打开备份设备 'd:\\aaa\\master_db_200678121529.BAK'。设备出现错误或设备脱机。详细信息请参阅 SQL Server 错误日志。 [Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE 操作异常终止。
楼主,能不能发1一份完整的源码,让我学习学习,不胜感激!
存储过程也要~~~~~~~~~~~~!!!谢谢~~~~~~~~~!!!
邮箱:chenen201@163.com
楼主,可不可以发一份一份完整的源码给我,让我学习学习,不胜感激!
存储过程也要~~~~~~~~~~~~!!!谢谢~~~~~~~~~!!!
邮箱:chenen201@163.com
你好楼主:
我用你的代码去测试,怎么不管是备份还是恢复都不行!问题出在:oSQLServer.Connect(server, uid, pwd); 我的server=localhost,uid=sa,pwd=sql.
报错如下:"[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或访问被拒绝\n[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect())."
望楼主帮忙看一下!
谢谢
麻烦楼主顺便给我发一份你的完整代码!ricklee830111@163.com
[Microsoft][ODBC SQL Server Driver][SQL Server]无法打开备份设备 'F:\'。详细信息请参阅 SQL Server 错误日志。
[Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE 操作异常终止。
楼主大哥,我用C#做数据库备份的时候出现这个问题,一直解决不了,请帮一下忙.邮件:yan-yan-xiao-hu@163.com
[Microsoft][ODBC SQL Server Driver][SQL Server]无法打开备份设备 'D:\UserMainTain.bak'。出现操作系统错误 21(设备未就绪。)。
[Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE 正在异常终止。
楼主大哥,可不可以也发一份一份完整的源码给我,不胜感激!
谢谢 !!!
邮箱:ngzhy2160@163.com
看了有些还是不大明白,能否给我一份源码,有点急。
再次谢谢了
我的邮箱yuancd1985@hotmail.com
楼主,我想问一下如果数据库是空间商提供的,自己无法在master数据库中添加存储过程,这样的话该怎么解决了? 谢谢楼主,希望能帮小弟解决一下!
[Microsoft][ODBC SQL Server Driver][SQL Server]无法打开备份设备 'D:\UserMainTain.bak'。出现操作系统错误 21(设备未就绪。)。
[Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE 正在异常终止。
也就这个错``郁闷得死
楼主大哥。。麻烦了
发份原码给我。。顺便告诉我错在哪
Email:makun0624@163.com
我在调试我的程序的时候,出现这个错误提示:
在 sysdatabases 中找不到数据库 'sysdb' 所对应的条目
不知道是什么原因,我都没有用到sysdb数据库
请楼主帮忙分析一下
还有能不能把你的那个数据库备份与还原程序给我一份看看
邮箱:nzgang@126.com
谢谢搂主!
ex = {"[Microsoft][ODBC SQL Server Driver][SQL Server]无法打开备份设备 'F:\\testst_db_200807090056.BAK'。设备出现错误或设备脱机。详细信息请参阅 SQL Server 错误日志。\n[Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE 操作异常终止。"}
连接本地服务器测试的时候没有出现这个问题,连接远程就出现了,麻烦楼主讲解下~~~~
能发份完整的代码给我的吗?我的邮箱:lishikun1985@163.com 谢谢!!!
不知道可否指定备份的时间跨度呢,比如说我只是想备份1-3月的,同时删除数据库的1-3月数据,然后恢复1-3月数据,不影响现有不是1-3月的数据
谢谢
#375楼[
楼主]2008-08-27 09:47 |
@virus
用SQLDMO无法实现这一点,只能使用SQL语句了。
楼主,你好,我在备份的时候 将备份的路径,备份的名称,备份的时间添加到数据库的一个表里,恢复的时候可以读出数据里里面表的数据,然后针对那一天的备份进行还原,出现如下情况,当表里有3条数据,当我点击其中一个进行还原的时候,还原能成功,但是同时也就删除这个备份表里面的数据了,这是为什么呀
楼主,我也是借鉴的你的代码做的,备份是没有问题,但是还原都要还原两次才可以
执行第一次的时候就出现下面的错误:
System.Runtime.InteropServices.COMException (0x80040000): [Microsoft][ODBC SQL Server Driver][DBMSLPCN]SQL Server 不存在或访问被拒绝 [Microsoft][ODBC SQL Server Driver][DBMSLPCN]ConnectionOpen (Connect()). 在 DBOperate.DBRestore(String file) 位置 e:\ASPNETEXAMPLEE\NBAnSheng\App_Code\DBOperate.cs:行号 176 在 beifen.Button2_Click(Object sender, EventArgs e) 位置 e:\ASPNETEXAMPLEE\NBAnSheng\beifen.aspx.cs:行号 54
在执行第二次才能还原成功
请进行指导,这是为什么?
大哥,麻烦给我发一份全的代码看看。
我现在的情况:
备份的时候好用,还原的时候也是必须的执行两次。
麻烦了。
谢谢
chengang0535@163.com
谢谢。
#379楼[
楼主]2008-11-10 00:06 |
@林小军
2005年的文章,源代码早就找不到了。
再说,在SQL Server 2005中,又提供了新的编程模型。
搂主能不能发份完整源代码发给我 谢谢
311zhangsheng@sina.com
#381楼[
楼主]2008-11-17 23:18 |
引用--------------------------------------------------
shengforever: 搂主能不能发份完整源代码发给我 谢谢
311zhangsheng@sina.com
--------------------------------------------------------
我上面已经说了很多遍了,怎么就看不到呢?
看了你的几篇文章,很实用!!!!
真是牛人,敬佩ing......
#383楼[
楼主]2008-11-19 09:30 |
@IT菜
谢谢:)
看了你几编ASP.NET的教程,小弟受益匪浅,比我们学校老师教的更详细,更容易明白~因为小弟是初学ASP.NET,现在正在做一个用ASP.NET开发的WEB系统,在数据备份和还原那里被卡住了~我看了你上面写的代码,由于基础差,还有点不明白,不知能否给个完整的代码(最好把HTML代码也一起附上)给小弟学习,小弟感激不尽
忘了说我的邮箱了~
邮箱地址:qinjian1005@163.com
(可以的话~加下我的Q,以后有什么难题,望您不吝赐教!Q:86605695)
#386楼[
楼主]2008-11-19 23:41 |
@菜鸟先飞
代码已经找不到了,呵呵,很多年之前的:)
// 你可以留言把你的MSN发给我,我不上QQ:)
请问如何在客户端对数据库进行备份和还原呢。
可不可以在还原之前重启一下数据库,或者杀掉所有操作被还原的数据库的进程?
请麻烦楼主指定下,我正在做一个本地的数据库备份还原模块。
#388楼[
楼主]2008-12-15 10:05 |
@二叉树
现在可以使用SQL Server 2005下的SQLSMO类库,非常方便
#390楼[
楼主]2008-12-17 11:29 |
@小 严
:)
大哥可否加你一下Msn 请教一些问题 望您不吝赐教
October.1984@HotMail.com
#392楼[
楼主]2009-01-04 11:30 |
@青鳥銜花
已经添加你了。
兄弟,能否将最新的源码发到我油箱。
beylandsoft@163.com
能不能麻烦楼主发一份完整的数据库备份和还原的代码,谢谢你
Arthur1_Zhang@pegatroncorp.com
楼主 :
源码发个给我,急需。
数据库天天被注入,成“肉鸡”了我
我也报错,晕死了,楼主,发份源码给我吧,KILL不调进程......
Email:shshshdy@163.com
能不能麻烦楼主发一份完整的数据库备份和还原的代码,谢谢
zhag_han2000@163.com
能给我一份完整的数据库备份和还原的代码,谢谢
xiaohongliou@163.com
#399楼[
楼主]2009-05-18 11:14 |
@ab
几年前写的,代码早就找不到了。
{"对象名 'sysprocesses' 无效。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。"}
[System.Data.SqlClient.SqlException]: {"对象名 'sysprocesses' 无效。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。"}
Data: {System.Collections.ListDictionaryInternal}
HelpLink: null
InnerException: null
Message: "对象名 'sysprocesses' 无效。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。\r\n名为 'getspid' 的游标不存在。"
Source: ".Net SqlClient Data Provider" ... ...
这个是怎么回事儿????
非常感谢楼主!终于找到备份MSSQL数据库的方法了!