PDA

View Full Version : سوال: restorکردن دیتابیس



asdf2010
سه شنبه 27 مهر 1389, 11:15 صبح
با سلام به همه شما کاربران برنامه نویس ،سوال من اینکه اولش وقتی میخواستم رستور بگیرم خطایی میداد که دیتا بیس در حال استفاده است و شما نمیتونین دیتابیس رو رستور کنید وقتی که تو command دستور اس کیو ال رو نوشتم او مشکل حل شد ولی مشکل جدیدی که پیدا کردم این بود که اجازه دسترسی به دیتا بیس رو نمیداد از شما خواهشمندم که منو راهنمایی کنید با تشکر از همه شما



private void Restore()

{
OpenFileDialog openFileDialog1 = new OpenFileDialog();
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
string strFileName = string.Empty;
openFileDialog1.Filter = @"SQL Backup files (*.BAK) |*.BAK|All files(*.*) |*.*";
openFileDialog1.Title = "بازیابی پایگاه داده";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
strFileName = saveFileDialog1.FileName;

try
{

SqlConnectionobjconnection=newSqlConnection("DataSource=localhost;Initial Catalog=bah;IntegratedSecurity=True"); SqlCommand objcommand = new SqlCommand("use master " + " alter database " + "[bah]" + "OLD" + " set offline with rollback immediate " + " alter database " + " [bah] " + "OLD" + " set online ", objconnection);
objcommand.Connection = objconnection;
objcommand.CommandText = "use master " + "ALTER DATABASE " + " [bah]" + " SET SINGLE_USER with ROLLBACK IMMEDIATE " + "RESTORE DATABASE " + "[bah]" + " FROM DISK='" + ss + "'";
objconnection.Open();
objcommand.ExecuteNonQuery();
objconnection.Close();
MessageBox.Show("بازيابی اطلاعات از نسخه پشتيبان با موفقيت انجام شد");
}

catch (Exception ex)
{
MessageBox.Show("Error Occurd :" + ex.Message);
}
}
}

mohamad68
سه شنبه 27 مهر 1389, 11:52 صبح
اینجا (http://irandevelopers.net/showthread.php?tid=70) رو نگاه بنداز فکر کنم مشکلت حل شه .