ورود

نسخه کامل مشاهده نسخه کامل : طریقه ی بک آپ گرفتن از بانک اطلاعاتی تو برنامه؟؟؟



totia_yalda
01-04-2008, 23:16
سلام...
چطوری می تونم از بانک اطلاعاتی تو برنامه بک آپ بگیرم ... از راهی که روی خود دیتابیس راست کلیک می کنیم و back up database رو می زنیم و بعد میتونیم restore کنیم نباشه اگه می شه کدی که با استفاده از اون می تونم از یه دیتابیسی که با sql server 2000 طراحی شده تو برنامه visual c#.net 2005 بک آپ بگیرم( تهیه نسخه پشتیبان ) و بعد هر زمانی که بخوام بتونم اطلاعات پشتیبان رو بازیابی کنم رو بگید؟

bad_boy_2007
03-04-2008, 22:46
سلام...
چطوری می تونم از بانک اطلاعاتی تو برنامه بک آپ بگیرم ... از راهی که روی خود دیتابیس راست کلیک می کنیم و back up database رو می زنیم و بعد میتونیم restore کنیم نباشه اگه می شه کدی که با استفاده از اون می تونم از یه دیتابیسی که با sql server 2000 طراحی شده تو برنامه visual c#.net 2005 بک آپ بگیرم( تهیه نسخه پشتیبان ) و بعد هر زمانی که بخوام بتونم اطلاعات پشتیبان رو بازیابی کنم رو بگید؟

ببین این دستور به دردت میخوره ؟؟؟


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

Ultimator
05-04-2008, 12:48
برای بک آپ گرفتن از ديتابيس ميتونيد از

sqlDmo استفاده کنید :

اول باید refrence اون رو از قسمت کامپوننت های COM به پروژه اضافه کنید :

Microsoft SQLDMO Object Library 8.5 .


حالا دوتا


button قرار بدین که عمل back up گرفتن و restore کردن با اونا شروع بشه .


کد


VB.Net :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

کد #C


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

bad_boy_2007
06-04-2008, 14:23
ممنون نیما جان
بسیار خوب بود :10::20:

totia_yalda
21-04-2008, 01:47
سلام
میشه بگید چطوری میتونم کامپوننت sqlDmo رو به برنامه سی شارپ اضافه کنم....
هیچ مرجعی ازش ندارم ممنون میشم کمکم کنید دوستان.....

Ultimator
21-04-2008, 11:08
اولین مرحلش باز کردن visual studio ست . بعد از قسمت solution explorer روی پروژه کلیک راست میکنید و گزینه ی add refrence رو انتخاب میکنید از پنجره باز شده به سربرگ com مراجعه میکنید و از لیست گزینه ی Microsoft SQLDMO Object Library 8.5 رو انتخاب میکنید و روی OK به صورتی که دکمه اش نیفته کلیک میکنید ( یکم پیچش شله ) این مرجع به پروژتون اضافه میشه ...

totia_yalda
24-04-2008, 11:11
سلام واقعا به همین سادگی میشه یه کومپوننت رو به پروژه سی شارپ اضافه کرد>من هنوز اینو امتحانش نکردم ولی امیدوارم که sqldmo رو قبول کنه در مورد کومپوننت devexpress که با استفاده از اون میتونیم از اطلاعات یه دیتا گرید ویو پرینت بگیریم چطور؟ در مورد اونم می شه توضیح بدید که چطوری میشه به پرو ژه اضافش کرد؟ ممنون میشم اگه کسی کمکم کنه....

Ultimator
24-04-2008, 12:46
سلام
بعله به همین راحتیه
اون کامپوننت رو پیدا کردید ؟
وقتی نصب کنید به toolbox ویژوال استودیو اضافه میشه و اگه اون رو به داخل فرم بکشید خود به خود به reference های پروژه اضافه میشه ، یعنی از sql Dmo هم راحت تر ...
اون sqlDMO هم مطمئنا به همین روش به پروژه اضافه میشه

totia_yalda
27-04-2008, 09:46
سلام...
نه این کومپو ننت devexpress رو از کجا باید پیدا یا دانلود کنم و به پروژه اضافه کنم بعدش من مرجع SQLDmo رو از همون راهی که گفتید به پروژه اضافه کردم یعنی از راهه Microsoft SQLDMO Object Library 8.5 از قسمت toolbox دراگ نکردم و بعد یه botton گذاشتم واسه بک آپ گرفتن از دیتا بیس و کدی که واسه سی شارپ گذاشتین رو نوشتم ولی چند تا error داد که اینا هستند اگه می تونید خواهشا کمکم کنید...
error رو این خط ها هستند...


Server.Connect("(local)");
Error 1 Cannot assign to 'Connect' because it is a 'method group' 152 13

Interaction.MsgBox("server {0} : " + Server.Name);
Error 2 The name 'Interaction' does not exist in the current context 153 13

Database = Server.Databases.Item("dbName");
Error 3
No overload for method 'Item' takes '1' arguments 154 24

Interaction.MsgBox(" Database {0}:" + Database.Name);
Error 4 The name 'Interaction' does not exist in the current context 155 13

Interaction.MsgBox("DB successfully Backed up ! ");

Error 5 The name 'Interaction' does not exist in the current context 162 13

Ultimator
27-04-2008, 12:52
اون کامپوننت حدود 100 مگابایت حجم داره اگه میتونید دانلود کنید لینکش رو بذارم ؟

شما باید یه لطفی میکردی به جای server name و dbname مشخصات پایگاه دادتون رو مینوشتین .

totia_yalda
29-04-2008, 11:56
سلام مرسی آره لینکش رو برام بذارید....

Ultimator
29-04-2008, 17:18
اين هم لينکش ...



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


فقط بگم اين کمپوننت رو من ننوشتم!!! سايت سازندش مشخصه و راهنما و سمپل کد همراهش داره .
يه دفعه دانلّد کردم ولی متاسفانه فايل اينستالرش پاک شد و در حال حاضر امکان دانلود دوباره و تست و راهنمايی برای من وجود نداره

شرمنده ولی توی اون يکی فروم که سوالتون رو مطرح کرديد !!!( برنامه نويس !!) يه آقايی هست که اين کامپوننت رو مرفی کرده ميتونه کمکتون کنه ، همونی که پيشنهاد استفاده از اين کامپوننت رو به شما تو همين فروم داد .

چون حجمش زياده قبل از دانلود حتما به اون دوستمون يا سايت سازنده کامپوننت مراجعه کنيد تا ببينيد به دردتون ميخوره يا نه که بعدا پشيمون نشيد من شرمندتون بشم .

totia_yalda
01-05-2008, 11:00
در هر حال ممنونم....

totia_yalda
04-05-2008, 08:50
سلام
در مورد بک آپ گیری از دیتا بیس وقتی می گید باید مشخصات سیستم رو وارد کنم یعنی فقط باید این دستورات رو تغییر بدم

Server.Connect=("Data Source=IUST-208AF65C0B;Initial Catalog=Library;Integrated Security=True");
Database = Server.Databases.Item("Library");

یا این که جای دیگه رو هم باید عوض کنم؟ تغییرات باید به همین صورت باشه ؟آخه بازم error میده...
راهنماییم کنید ممنونم..

Ultimator
05-05-2008, 01:50
من اون کد رو نوشتم ، شما جایی کانکشن استرینگ دیدی که اینو نوشتی ؟!
Server.Connect=("Data Source=IUST-208AF65C0B;Initial Catalog=Library;Integrated Security=True");

totia_yalda
10-06-2008, 03:12
سلام.....
خسته نباشید نیما جان....
در مورد کدی که واسه بک آپ گرفتن و بازگردانی تو سی شارپ گذاشتین اسم پایگاه داده ایی که من با SQL درست کردم Shoping هست و اسم server ام هم ST-9BEC94C7FA = server name هست میشه سینتکس کدشو واسم بذارید....
دقیقا چی باید بنویسم تا error نده خواهشا کمکم کنید.
و در مورد این دستورم توضیح میدین چی کار میکنه؟Interaction رو برنامه نمی شناسه؟


Interaction.MsgBox(" Database {0}:" + Database.Name);


در ضمن مشخصات پایگاه داده ایی که بهش وصل میشم تو این دستوره.....


private System.Data.SqlClient.SqlConnection con = new


System.Data.SqlClient.SqlConnection("Data Source=ST-9BEC94C7FA; Initial Catalog=Shoping;Integrated Security=True");


باید اینطوری بنویسم تا درست باشه؟ولی error میده....

// Start back up
Server = new SQLDMO.SQLServer2();
Backup = new SQLDMO.Backup2();


Server.LoginSecure = true;


1) Server.Connect("ST-9BEC94C7FA");


2) Interaction.MsgBox("server {0} : " + Server.Name);


3) Database = Server.Databases.Item("Shoping");


Interaction.MsgBox(" Database {0}:" + Database.Name);
Backup.Database = Database.Name;
Backup.Files = "C:\\myDb.bak";
Backup.SQLBackup(Server);
Server.DisConnect();
Backup = null;
Server = null;


Interaction.MsgBox("DB successfully Backed up ! ");


Error رو خط های مشخص شده هست مثلا در مورد خط 1 میگه این تابع بیشتر از یک آرگومان داره.... هر جای کدی که گذاشتین اگر لازمه تا تغییراتی اعمال بشه لطفا بگید.
در مورد اینکه چطوری باید نام پایگاه داده و نام سرور رو تو کد بالا وارد کنم راهنماییم می کنید؟آخه error میده تقصیر من نیست چی کار کنم؟

totia_yalda
10-06-2008, 19:00
????// من منتظرم....

Ultimator
11-06-2008, 00:34
من شرمنده ام ! ! !!
من همیشه کد ویبی ای که نوشتم رو نگاه میکردم و تست میکردم ! حتی ذره ای به کد سی شارپ نگاه نکردم !! یک راست کپی پیست کردم !! ببخشید ببخشید .. .!! الان از چیزی که نوشتم خنده ام گرفت !!!
این کد درست همین الان تست کردم !


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

بدون هیچ تغییری باید کار کنه .. حتی connection string هم نمیخواد دقیقا همین کد کافیه خطا هم نمیده ..
باز هم ببخشید اشتباه من بود که اصلا نگاه نکردم

totia_yalda
11-06-2008, 12:00
سلام
دشمن تون شرمنده باشه خواهش می کنم من میرم تا اجراش کنم.
اگه کار میکنه که واقعا ازتون ممنونم.....

totia_yalda
12-06-2008, 13:11
سلام مرسی جوابم رو گرفتم>عالی بود نیما جان.
تا بعد.............

Ultimator
12-06-2008, 14:57
خدا رو شکر !

persianmahdi
12-07-2009, 23:05
من شرمنده ام ! ! !!
من همیشه کد ویبی ای که نوشتم رو نگاه میکردم و تست میکردم ! حتی ذره ای به کد سی شارپ نگاه نکردم !! یک راست کپی پیست کردم !! ببخشید ببخشید .. .!! الان از چیزی که نوشتم خنده ام گرفت !!!
این کد درست همین الان تست کردم !


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

بدون هیچ تغییری باید کار کنه .. حتی connection string هم نمیخواد دقیقا همین کد کافیه خطا هم نمیده ..
باز هم ببخشید اشتباه من بود که اصلا نگاه نکردم

من از این کد برای بکاپ گیری استفاده کردم ولی متاسفانه توی قسمت زیر دچار اشکال میشه .


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

کسی میتونه کمک کنه که مشکلش چیه ؟

مرسی

_H2_
13-07-2009, 12:12
سلام
پیشنهاد میکنم از ابزار جدید SMO و کدی مثل این استفاده کنید:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

persianmahdi
13-07-2009, 15:00
سلام
پیشنهاد میکنم از ابزار جدید SMO و کدی مثل این استفاده کنید:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

سلام

ممنون میشم اگه بحث را در ادرس زیر ادامه بدید



برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

خیلی برام مهمه

ممنون

hadi47
15-07-2013, 08:42
خیلی ممنون لطف کردید

mem57
04-03-2015, 11:36
سلام و خدا قوت
من برای برنامم مشکل بک آپ گیری و بازیابی دارم . وقتی تو انجمن سرچ کردم این پست رو پیدا کردم
مشکلم ایجاست که من توی لیست reference در سربرگ com کامپوننت microsoft sqldmo object library 8.5 رو ندارم
لطفا راهنمایی کنید

_H2_
04-03-2015, 20:27
سلام


مشکلم ایجاست که من توی لیست reference در سربرگ com کامپوننت ...

ضمن تبریک عضویت تان باید عرض کنم، بهتر است در برنامه های دات نتی کمتر از ActiveX و COM استفاده کنید.
Microsoft.SqlServer.Smo.dll سورس اش دات نتی است گرچه بازهم خرده مشکلاتی دارد ولی راحت تر قابل استفاده است.
این dll را میتوانید در محل نصب SQLServer پیدا کنید.
مسیر هایی مانند:
C:\Program Files\Microsoft SQL Server\VERSION\SDK\Assemblies
C:\Program Files (x86)\Microsoft SQL Server\VERSION\SDK\Assemblies

مثالی هم در زیر قابل دانلود است:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
(چون خیلی قدیمی است شاید مشکل ورژن SMO را داشته باشد که اگر مشکلی بود احتمالاً با حذف و اضافه کردن مجدد reference مشکل حل خواهد شد)

از SMO هم که بگذریم با دستور BACKUP DATABASE و بدون هیچ dll اضافه و نیاز به نصب ابزار و... میتوانید پشتیبان گیری را انجام دهید.

مطالب متعددی از این دست را در تاپیک های زیر خواهید یافت:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

موفق باشید.