PDA

View Full Version : سوال: backup گرفتن از sql2000 در #C



ahgrab
چهارشنبه 03 فروردین 1390, 17:53 عصر
سلام خسته نباشید.
data base برنامه من sql server2000 میباشد میخوام تو برنامم امکانات Backup و restore از data base را داشته باشم .

چطوری میتونم این کارو بکنم؟

javad_dam
چهارشنبه 03 فروردین 1390, 19:18 عصر
با سلام

پیشنهاد می کنم برای حل مشکلتان به آدرس زیر بروید و کتاب رو با حجم 2 مگ و خورده ای دانلود کنید حتما مشکلتان حل می شود کتاب هم فایل پی دی اف آموزشی داره و هم مثال های آموزشی همراه با سورس کد ها :
http://www.csharpdotnet.ir/1389/10/10/post-133/

m.mahnani
پنج شنبه 04 فروردین 1390, 00:00 صبح
میتونید از این 2 تا تایع استفاده کنید (backup , restore)



public void backupDB()
{
try
{
academyDataContext db = new academyDataContext();

string filen = tools.GetPersianDate();
filen = filen.Replace('/', '.');
saveFileDialog1.DefaultExt = "bak";
saveFileDialog1.InitialDirectory = Application.StartupPath + @"DB\BackUp";
saveFileDialog1.Filter =
"Back up files (*.bak)|*.bak|All files (*.*)|*.*";
saveFileDialog1.FilterIndex = 1;
saveFileDialog1.OverwritePrompt = true;
saveFileDialog1.Title = "???? ???? ??????? ?? ?????? ????";
saveFileDialog1.FileName = filen;
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
filen = saveFileDialog1.FileName;
db.ExecuteCommand(@"backup database db_Name to disk='" + filen + "'");
MessageBox.Show("??????? ???? ?? ?????? ????? ??");
}
}
catch (Exception ex)
{
//msg
}
}

public void restoreDB()
{
academyDataContext db = new academyDataContext();

string filen = "???? ??????? ?? ?????? ????";
openFileDialog1.Filter = "Back up files (*.bak) |*.bak|"
+ " All files (*.*) |*.*";
openFileDialog1.FilterIndex = 1;
openFileDialog1.InitialDirectory = Application.StartupPath + @"DB\BackUp";
openFileDialog1.Title = "???? ???? ??????? ?? ?????? ????";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
filen = openFileDialog1.FileName;
db.ExecuteCommand(@"ALTER DATABASE db_Name SET SINGLE_USER WITH ROLLBACK IMMEDIATE" +
@" USE master; RESTORE DATABASE Academy FROM DISK ='" + filen + "'");
db.ExecuteCommand("ALTER DATABASE db_Name SET MULTI_USER ");
MessageBox.Show("??????? ???? ???????? ?? ?????? ????? ??");
Application.Restart();
}
}