PDA

View Full Version : ارور پیدا نکردن دیتابیس در هنگام بکاپ



dashkeyvan
پنج شنبه 21 آذر 1392, 23:15 عصر
سلام من میخوام بکاپ بگیرم ولی ارور میده که دیتا بیس رو پیدا نکرده طبق سرچی که زدم مثل اینکه چون تو کانکشن استرینگم اینو دارم AttachDbFilename =|datadirectory|\db_mkfeenet.mdf

پیداش نمیکنه از دوستان کسی میتونه راهنمایی کنه چطور بدون عوض کردن کانکشن استرینگ درست بشه در ضمن از sql خوده ویژوال استفاده میکنم

sorena2000
جمعه 22 آذر 1392, 02:51 صبح
از چه کدی برای بک آپ استفاده میکنی ؟؟؟؟
من 1 کد برات قرار میدم امیدوارم که به دردت بخوره و مشکلت رو حل کنه






SaveFileDialog save = new SaveFileDialog();
save.FileName = DateTime.Now.ToString("ddmmyyy-hhmmss");
save.Filter = "BackupFile(*.Bak)|*.Bak";

if (save.ShowDialog() == DialogResult.OK)
{
try
{
this.Refresh();
SqlCommand cmd = new SqlCommand();
cmd.Connection =
new SqlConnection(
"Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirecto ry|masire bank;Integrated Security=True;Connect Timeout=30;User Instance=True");
cmd.Connection.Open();
string dbname = cmd.Connection.Database;
cmd.Connection.Close();
SqlConnection.ClearAllPools();
string query = "BACKUP DATABASE[" + Application.StartupPath + "masir bank] To DISK ='" +
save.FileName + "'";
cmd.Connection =
new SqlConnection(
"Data Source=.\\SQLEXPRESS;Integrated Security=True;Connect Timeout=30;User Instance=True");
cmd.Connection.Open();
cmd.CommandText = query;
cmd.ExecuteNonQuery();
cmd.Connection.Close();
this.Refresh();
MessageBox.Show("عملیات پشتیبانی با موفقیت انجام شد . ");
}
catch (Exception)
{
MessageBox.Show("مشکل در پشتیبان گیری ");

}

}

fmehrvarzi
جمعه 22 آذر 1392, 08:51 صبح
برای دیدن کانکشن استرینگ میتونی تو قسمت تنظیمات دیتا ست DataSource Window خود کانکشن استرینگ را ببینی

و برا تغییر کانکشن استرینگ میتونی به app.config از سولوشن اکسپلورر مراجعه کنی

dashkeyvan
جمعه 22 آذر 1392, 17:08 عصر
خودم درستش کردم من از پروسیژور استفاده کردم که همون جا اسم دیتا بیس رو نوشتم یعنی اینجوری


CREATE proc db_mkfeent_backup
@path nvarchar(400)
as
backup database db_nam to disk = @path with init
return


ولی درستش کردم اینجوری یعنی اسمم دیتا بیس رو به صورت پارامتر بهش دادم


CREATE proc db_mkfeent_backup
@databaseName sysname,
@path nvarchar(400)
as
backup database @databaseName to disk = @path with init
return


و بعد پارامتر رو بهش دادم درست شد



cmd.Parameters.AddWithValue("@databaseName", Application.StartupPath + @"\db_mkfeenet.mdf");