PDA

View Full Version : سوال: مشکل در کد بک آپ گرفتن از دیتابیس



reza69
سه شنبه 24 اردیبهشت 1392, 09:23 صبح
سلام
کد من درست عمل میکنه ولی هیچ فایلی رو ذخیره نمی کنه دلیل چیه؟

try
{
string bname = DateTime.Now.ToString("yyyy-MM-dd-HH-mm");
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.AddExtension = true;
saveFileDialog.CheckFileExists = false;
saveFileDialog.CheckPathExists = true;
saveFileDialog.OverwritePrompt = true;
saveFileDialog.FileName = "Backup" + bname;
saveFileDialog.Filter = "Backup File (*.Bak)|*.Bak";
saveFileDialog.DefaultExt = "Bak";
saveFileDialog.RestoreDirectory = true;
saveFileDialog.InitialDirectory = System.Windows.Forms.Application.StartupPath;
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
try
{
this.Refresh();
SqlCommand cmd = new SqlCommand();
con.Open();
string dbname = cmd.Connection.Database;
SqlConnection.ClearAllPools();
string query = "BACKUP DATABASE mobile TO DISK ='" + saveFileDialog.FileName + "'";
cmd.CommandText = query;
cmd.ExecuteNonQuery();
con.Close();
this.Refresh();
MessageBox.Show("نسخه پشتيبان به طور كامل ايجاد شد ", "پيام", MessageBoxButtons.OK, MessageBoxIcon.Information);

}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}


}

}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}

fool66
سه شنبه 24 اردیبهشت 1392, 09:51 صبح
bool bBackUpStatus = true;
Cursor.Current = Cursors.WaitCursor;
Directory.CreateDirectory(@"d:\SQLBackup");
SqlConnection connect;
string con = "Data Source=.\\SQLEXPRESS; AttachDbFilename=" + Application.StartupPath + "\\dbafshari.mdf; Integrated Security=True; Connect Timeout=30; User Instance=True";
connect = new SqlConnection(con);
connect.Open();
SqlCommand command;
command = new SqlCommand(@"backup database [" + System.Windows.Forms.Application.StartupPath + "\\dbafshari.mdf] to disk ='d:\\SQLBackup\\dbafshari.bak' with init,stats=10", connect);
command.ExecuteNonQuery();
connect.Close();
MessageBox.Show("پشتیبان گیری با موفقیت انجام شد", "پشتیبان", MessageBoxButtons.OK, MessageBoxIcon.Information);

reza69
سه شنبه 24 اردیبهشت 1392, 10:18 صبح
آخر کدم اینجوری شد. خط اول اضافه بود.

Cursor.Current = Cursors.WaitCursor;
Directory.CreateDirectory(@"d:\SQLBackup");
con.Open();
SqlCommand command;
command = new SqlCommand(@"backup database mobile to disk ='d:\\SQLBackup\\dbbackup.bak' with init,stats=10", con);
command.ExecuteNonQuery();
con.Close();
MessageBox.Show("پشتیبان گیری با موفقیت انجام شد", "پشتیبان", MessageBoxButtons.OK, MessageBoxIcon.Information);




حالا برای ریستور کردن بک آپ چه کدی بنویسم؟