标题:请教大侠数据库备份问题,哪里出的错……
只看楼主
someday
Rank: 3Rank: 3
来 自:保定
等 级:论坛游侠
帖 子:83
专家分:116
注 册:2010-10-8
结帖率:70.59%
已结贴  问题点数:20 回复次数:7 
请教大侠数据库备份问题,哪里出的错……
C# window Form程序
private void button1_Click(object sender, EventArgs e)
        {
            string connectionstring = "server=*******;database=charges;user id=sa;pwd=****";
            //建立连接
            SqlConnection conn = new SqlConnection(connectionstring);
            conn.Open();
            string path = @"F:\Test\数据库备份\datarestor\restor.bak";
            //备份语句
            string backupstr = "backup database charges to disk = '" + path + "'";
            SqlCommand cmd = new SqlCommand(backupstr, conn);
            try
            {
                conn.Open();
                cmd.ExecuteNonQuery();
                MessageBox.Show("备份成功!", "提示");

            }
            catch
            {
                MessageBox.Show("备份失败!", "提示");
            }
            finally
            {
                conn.Close();
            }

        }
结果总是提示“备份失败!”
在 SQL Server的查询分析器中 输入 backup database charges to disk = 'F:\\Test\\数据库备份\\datarestor\\restor.bak';执行,出息设备无法打开F:\\Test\\数据库备份\\datarestor\\restor.bak 访问遭到拒绝的错误。
问题不知道出在了哪里……请各位给看看……

搜索更多相关主题的帖子: 数据库备份 database private window 
2011-09-18 15:33
a6068132
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:47
专家分:131
注 册:2011-5-10
得分:5 
请执行此存储过程
use master
create proc killspid (@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+''')'        
exec (@sql)        
open getspid        
fetch next from getspid into @spid        
while @@fetch_status <> -1        
begin        
exec('kill '+@spid)        
fetch next from getspid into @spid        
end        
close getspid        
deallocate getspid        
end  
2011-09-19 09:09
gokeep
Rank: 2
来 自:四川成都
等 级:论坛游民
帖 子:11
专家分:10
注 册:2011-9-16
得分:0 
学习了

www.
2011-09-19 09:53
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
得分:5 
没有学过备份,不过看你的conn.open()两次了!

   唯实惟新 至诚致志
2011-09-19 10:10
girl0001
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:56
专家分:118
注 册:2010-7-17
得分:0 
是不是文件的访问权限有问题。。
2011-09-19 11:27
wangnannan
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:87
帖 子:2545
专家分:9359
注 册:2007-11-3
得分:10 
程序代码:
private void button1_Click(object sender, EventArgs e)
        {
            string connectionstring = "server=*******;database=charges;user id=sa;pwd=****";
            //建立连接
            SqlConnection conn = new SqlConnection(connectionstring);
            //conn.Open();
            string path = @"F:\Test\数据库备份\datarestor\restor.bak";
            //备份语句
            string backupstr = "backup database charges to disk = '" + path + "'";
            SqlCommand cmd = new SqlCommand(backupstr, conn);

                conn.Open();
                int result = cmd.ExecuteNonQuery();
                if(result > 0)
                MessageBox.Show("备份成功!", "提示");
                else
                MessageBox.Show("备份失败!", "提示");
                     conn.Close();
                     conn.Dispose();
        }
如果是管理员登录的 设置下文件夹所有权就可以了

出来混,谁不都要拼命的嘛。 。拼不赢?那就看谁倒霉了。 。有机会也要看谁下手快,快的就能赢,慢。 。狗屎你都抢不到。 。还说什么拼命?
2011-09-19 14:14
someday
Rank: 3Rank: 3
来 自:保定
等 级:论坛游侠
帖 子:83
专家分:116
注 册:2010-10-8
得分:0 
回复 6楼 wangnannan
明白了,谢谢
2011-09-21 11:18
jeanine123
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:65
专家分:192
注 册:2011-9-17
得分:0 
学习了。
2011-09-22 09:23



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-350234-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.243597 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved