بسم الله الرحمن الرحيم
السلام جميعاً اخواني واخواتي بالمنتدى ... سلمكم الله ورعاكم.
لا ادري هل كان علي طرح هذا السؤال في منتدى الدلفي ام في منتدى MS SQLServer ؟؟ على كلٍ هو اليكم فانظروا ماذا يمكنكم به افادتنا والجميع ان شاء الله.
الســــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــؤال :
هو نفس البرنامج الذي من اجله طرحت سؤالاً يتعلق ببرمجة الـIndy لإرسال الاخطاء عبر الإيميل ولكن انا الآن بصدد ان يتمكن المستخدم من عمل نسخة احتياطية (لمراقب المنتدى لقد اضطلعت على موضوع مشابه لكنه لم يتناول الخطا الثاني الذي يحدث معي فاسمحوا لنا بطيب خاطر) من قاعدة البيانات التي يعمل عليها وهو في الغالب لايعرف عن عمل Backup فضلاً عن انه غير مسموح للدخول لقاعدة البيانات اصلاً للمستخدم .
• تمكنت من عمل الـBackup(لكنه لا يتحقق من وجود الـDataمسبقا .. كلما عملت باكاب تجد حجم الملف يتزايد ببلاهه فهل للباكاب شرط يمكن إضافته لعمل للبيانات المسجدة فقط) ولكن عند عمل الـRestore تنتج رسالة عن ان قاعدة البيانات حالياً في حالة استخدام , فقمت بتغيير الإتصال AdoConnection اخرى نتجت عنها رسالة اخرى (مرفق صورة) بصراحة لم افهم ماذا يقصد علماً انني جعلت الأتصال الجديد مع قاعدة البيانات الخاصة بالسيكول سيرفر الذي يسمى master (لعله يقصد ذلك) فهل يمكن عمل Restore من داخل البرنامج مباشرة.
• قمت بتصميم برنامج صغير منفصل لغرض الـRestore عله ان نجح يمكن ارفاقه كملحق للبرنامج الاصل فكانت هذه الرسالة التي ترونها علماً بان الاتصال بالـmaster.
نصي الرسائل حسب ترتيب السؤالين :
RESTORE could not proccess database 'Database name'because it is in use by this session it is recommanded that the master database used when performing this operation.
The tail of the log for the database'Database name' has not been backed up use BACKUP LOG WITH NORECOVERY to back up the log if it contains work you do not want to lose.use the WITH REPLACE or WITH STOPAT clouse of the RESTORE statement to just overwrite the contents of the log