PDA

View Full Version : buckup گرفتن در express



fazadef
پنج شنبه 08 مهر 1389, 21:42 عصر
سلام
من یه پروژه ی دارم که از express استفاده میکنه
رشته اتصالم هم به شکل زیره


"data source=.\\SQLEXPRESS;attachdbfilename=|datadirecto ry|anjoman.mdf;integrated security=true;user instance=true"

من میخام با زدن یه دکمه از دیتا بیس backup بگیرم که از این دستور استفاده کردم


cmdBackup.CommandText = @" BACKUP DATABASE [anjoman] TO DISK = N'" + varBackup + ".bak' WITH NOFORMAT, NOINIT, SKIP, NOREWIND, NOUNLOAD, STATS = 10;";

varBackup مسیر ذخیره فایل بک آپ که کاربر مشخص میکنه
و لی این خطا رو میده


Could not locate entry in sysdatabase for database 'anjoman' . No entry found
with that name . Make sure that the name is entered correctly
BACKUP DATABASE is terminating abnormally

csharpprogramer88
پنج شنبه 08 مهر 1389, 22:45 عصر
فايل هاي ديتابيس را بايد در مسير bin/debug كپي كني احتمالا مشكل از اينجاست

kh2003
جمعه 09 مهر 1389, 02:53 صبح
با سلام.
دوست عزیزم احتمالا یا نام دیتا بیس اشتباهه یا آدرست مشکل داره و فکر نمیکنم که از این دوحالتم خارج باشه.
:چشمک::چشمک:

mmd2009
جمعه 09 مهر 1389, 03:18 صبح
با سلام

این (http://www.barnamenevis.org/forum/showpost.php?p=1011196&postcount=63)لینک میتونه کمکتون بکنه با مثال اماده

fazadef
جمعه 09 مهر 1389, 07:49 صبح
فايل هاي ديتابيس را بايد در مسير bin/debug كپي كني احتمالا مشكل از اينجاست
فایل های من تو اون مسیر هستند

fazadef
جمعه 09 مهر 1389, 07:54 صبح
با سلام.
دوست عزیزم احتمالا یا نام دیتا بیس اشتباهه یا آدرست مشکل داره و فکر نمیکنم که از این دوحالتم خارج باشه.
:چشمک::چشمک:

اسم دیتا بیس و آدرسش درسته فکر کنم مشکل از یه جای دیگه ست

fazadef
جمعه 09 مهر 1389, 07:58 صبح
با سلام

این (http://www.barnamenevis.org/forum/showpost.php?p=1011196&postcount=63)لینک میتونه کمکتون بکنه با مثال اماده

سلام خیلی ممنون , من به لینکی که گزاشتید سر زدم و برنامه بک آپ گرفتن تون رو اجرا کردم ولی همون خطایی رو میده که پروژه ی خودم میده
به نظر شما احتمال داره که sqlExpress ام مشکل داشته باشه
ممنون میشم اگه کمکم کنید

aghayex
جمعه 09 مهر 1389, 10:56 صبح
یه توصیه : اون user instance=true رو در کانکشن استرینگ حذف کن سرعت اتصال به دیتابیست زیاد می شه
بحث اصلی : در قسمت DATABASE[] آدرس دستابیس رو با نامش وارد کن نه نام دیتابیس


"BACKUP DATABASE[" + آدرس دیتابیس+ "] TO DISK = '" + آدرس فایل+ ".bak'";



"use master RESTORE DATABASE [" + آدرس دیتابیس+ "] FROM DISK = '" + آدرس فایل+ "'";

payman_xxp
جمعه 09 مهر 1389, 12:54 عصر
یه توصیه : اون user instance=true رو در کانکشن استرینگ حذف کن سرعت اتصال به دیتابیست زیاد می شه
بحث اصلی : در قسمت DATABASE[] آدرس دستابیس رو با نامش وارد کن نه نام دیتابیس


"BACKUP DATABASE[" + آدرس دیتابیس+ "] TO DISK = '" + آدرس فایل+ ".bak'";


"use master RESTORE DATABASE [" + آدرس دیتابیس+ "] FROM DISK = '" + آدرس فایل+ "'";



با اتقال فایل به دستگاه دیگر( exe یا سورس) آیا مشکلی دراجرای برنامه پیش نمیاد!!؟؟ :متفکر:

group45
جمعه 09 مهر 1389, 14:05 عصر
http://barnamenevis.org/forum/showthread.php?t=235601&page=2

anis71
پنج شنبه 02 دی 1389, 09:10 صبح
من با این کد کار کردم کامل جواب داد:

//backup
private void button1_Click(object sender, EventArgs e)
{
try
{
SqlConnection objconnection = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=c:\test.mdf;I ntegrated Security=True;User Instance=True");
SqlCommand objcommand = new SqlCommand();
objcommand.Connection = objconnection;
objcommand.CommandText = "Backup DATABASE [c:\\test.mdf] TO DISK = 'D:backupfile.bak'";
objconnection.Open();
objcommand.ExecuteNonQuery();
objconnection.Close();
MessageBox.Show("تهيه نسخه پشتيبان از اطلاعات با موفقيت انجام شد");
}
catch (Exception x)
{
MessageBox.Show(x.Message);
}

}
//restore
private void button2_Click(object sender, EventArgs e)
{

try
{
SqlConnection objconnection = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=c:\test.mdf;I ntegrated Security=True;User Instance=True");
SqlCommand objcommand = new SqlCommand();
objcommand.Connection = objconnection;
objcommand.CommandText = "USE Master ALTER DATABASE [c:\\test.mdf] SET SINGLE_USER WITH ROLLBACK IMMEDIATE Restore DATABASE [c:\\test.mdf] FROM DISK ='d:\\backupfile.bak'";
objconnection.Open();
objcommand.ExecuteNonQuery();
objconnection.Close();
MessageBox.Show("بازیابی با موفقیت انجام شد");
}
catch(Exception x)
{
MessageBox.Show(x.Message);
}
}

hossin.esm
پنج شنبه 02 دی 1389, 11:20 صبح
این لینک را ببین یک مثال گذاشتم ( پست شماره 624)
http://barnamenevis.org/showthread.php?64210-نمونه-برنامه-های-کوچک-و-مفيد-در-سي-شارپ/page63
مشکلت رو حل میکنه .

anis71
پنج شنبه 02 دی 1389, 21:33 عصر
مشکم حل شده ولی وقتی از برنامم فایل خروجی میگرم روی کامپیوتر دیگه اجرا نمیشه:گریه:.یعنی آدرس بانک رو میده میگه بانک در این آدرس موجود نیست.توی کانکش استرینگ آدرس بانک رو چی بدم که همه جا کارکنه؟؟؟؟؟
ببینید:
Data Source=.\SQLEXPRESS;AttachDbFilename=c:\test.mdf;I ntegrated Security=True;User Instance=True