备份数据库时出错!!!
用代码备份数据库的时候出错啦,找不到原因,请各位高手帮帮忙啦!!!!!!!!
private SaveFileDialog sfd;
private string localFilePath;
//备份数据库
private void btn_backup_Click(object sender, EventArgs e)
{
sfd=new SaveFileDialog ();
sfd.FileName = "备份数据库.bak";
sfd.Filter = "备份|*.bak";
sfd.FilterIndex = 1;
sfd.InitialDirectory = @"..\..\备份";
if (!Directory.Exists(sfd.InitialDirectory))
{
Directory.CreateDirectory(sfd.InitialDirectory);
}
sfd.RestoreDirectory = true;
if (sfd.ShowDialog() == DialogResult.OK)
{
localFilePath = sfd.FileName.ToString();
if (backupDB())
{
MessageBox.Show("备份成功!");
}
}
}
//备份数据库
private bool backupDB()
{
bool result = false;
SqlCeConnection conn = new SqlCeConnection();
conn.ConnectionString =@"Data Source=G:\数据库备份与还原\数据库备份与还原\Database1.sdf";
conn.Open();
string sql = @"backup database database1 to disk='"+sfd.FileName.ToString()+"'";
SqlCeCommand comm = new SqlCeCommand(sql, conn);
comm.CommandType = CommandType.Text;
try
{
if (comm.ExecuteNonQuery() > 0)
{
result = true;
}
else
{
result = false;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
finally
{
conn.Close();
}
return result;
}
在comm.ExecuteNonQuery()这个地方报错了,
错误提示:

private SaveFileDialog sfd;
private string localFilePath;
//备份数据库
private void btn_backup_Click(object sender, EventArgs e)
{
sfd=new SaveFileDialog ();
sfd.FileName = "备份数据库.bak";
sfd.Filter = "备份|*.bak";
sfd.FilterIndex = 1;
sfd.InitialDirectory = @"..\..\备份";
if (!Directory.Exists(sfd.InitialDirectory))
{
Directory.CreateDirectory(sfd.InitialDirectory);
}
sfd.RestoreDirectory = true;
if (sfd.ShowDialog() == DialogResult.OK)
{
localFilePath = sfd.FileName.ToString();
if (backupDB())
{
MessageBox.Show("备份成功!");
}
}
}
//备份数据库
private bool backupDB()
{
bool result = false;
SqlCeConnection conn = new SqlCeConnection();
conn.ConnectionString =@"Data Source=G:\数据库备份与还原\数据库备份与还原\Database1.sdf";
conn.Open();
string sql = @"backup database database1 to disk='"+sfd.FileName.ToString()+"'";
SqlCeCommand comm = new SqlCeCommand(sql, conn);
comm.CommandType = CommandType.Text;
try
{
if (comm.ExecuteNonQuery() > 0)
{
result = true;
}
else
{
result = false;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
finally
{
conn.Close();
}
return result;
}
在comm.ExecuteNonQuery()这个地方报错了,
错误提示:

...全文
相关推荐
SQLSERVER 数据库自动备份
这样的计划不仅可以提高数据的安全性,还能减少人工干预的需求,从而降低出错的风险。对于大型数据库环境而言,自动化备份方案更是不可或缺的一部分。希望本文介绍的知识点能对您有所帮助。
数据库备份可能出错的十种情况
磁盘空间管理:定期清理旧备份以释放空间,避免因忘记清理而导致的磁盘空间不足问题。8. 备份中的数据页完整性:备份时不检查数据页完整性,损坏页可能被备份并导致后续问题。
linux下oracle11g 数据库备份异机还原
生产 trace 文件,用于异机还原时使用。五、结论Linux 下 Oracle 11g 数据库冷备份异机还原可以快速恢复数据库服务,避免数据库升级或维护时的风险。
C#数据库备份还原
= null) alDbs.Add(db.Name); } } catch (Exception e) { throw new Exception("连接数据库出错:" + e.Message); }
解决SQL Server数据库中附加数据库的出错问题
该问题通常会在执行 sp_attach_db 或 sp_attach_single_file_db 时出现,提示错误 1813:未能打开新数据库’dbname’,create database 将终止。


