دلتنگ اسمان
چهارشنبه 12 شهریور 1393, 11:16 صبح
با سلام
با کد زیر برای Restore کردن استفاده میکنم. اما این در شرایطی جواب میده که بتونم با دیتابیس ارتباط برقرار کنم. اگه دیتابیس به هر دلیلی حذف شده باشه و یا جداولش حذف شده باشن این کد عملا کاربردی نخواهد داشت.
چطور میشه هنگام لود برنامه اول دیتابیس رو چک کنه اگه دیتابیس و یا جداولش وجود نداشت پیغام بده. و با تایید کاربر عمل Restore انجام بشه. البته حتما باید ساخت دیتابیس و جداولش هم در کد گنجانده شود.
public void Restore(string strFileName)
{
try
{
if (strFileName != string.Empty)
{
string command =
"ALTER DATABASE matab SET OFFLINE with ROLLBACK IMMEDIATE RESTORE DATABASE matab FROM DISK = '" +
strFileName + "' WITH REPLACE";
var oConnection =
new SqlConnection("server=localhost;Integrated security=true;database=matab");
if (oConnection.State != ConnectionState.Open)
oConnection.Open();
var oCommand = new SqlCommand(command, oConnection);
oCommand.ExecuteNonQuery();
MessageBox.Show(". بازيابی اطلاعات از نسخه پشتيبان با موفقيت انجام شد");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
با کد زیر برای Restore کردن استفاده میکنم. اما این در شرایطی جواب میده که بتونم با دیتابیس ارتباط برقرار کنم. اگه دیتابیس به هر دلیلی حذف شده باشه و یا جداولش حذف شده باشن این کد عملا کاربردی نخواهد داشت.
چطور میشه هنگام لود برنامه اول دیتابیس رو چک کنه اگه دیتابیس و یا جداولش وجود نداشت پیغام بده. و با تایید کاربر عمل Restore انجام بشه. البته حتما باید ساخت دیتابیس و جداولش هم در کد گنجانده شود.
public void Restore(string strFileName)
{
try
{
if (strFileName != string.Empty)
{
string command =
"ALTER DATABASE matab SET OFFLINE with ROLLBACK IMMEDIATE RESTORE DATABASE matab FROM DISK = '" +
strFileName + "' WITH REPLACE";
var oConnection =
new SqlConnection("server=localhost;Integrated security=true;database=matab");
if (oConnection.State != ConnectionState.Open)
oConnection.Open();
var oCommand = new SqlCommand(command, oConnection);
oCommand.ExecuteNonQuery();
MessageBox.Show(". بازيابی اطلاعات از نسخه پشتيبان با موفقيت انجام شد");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}