تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
استخدام savefiledailog و Openfiledailog لنسخ واستعادة قاعدة البيانات اكسس
#1
Shocked 
السلام عليكم ورحمة الله وبركاته

عندي سؤال بخصوص اخذ نسخة حتياطيه لقاعدة البيانات من نوع اكسس 2010

الكود شغال معاي ميه الميه ولكن سؤالي هنا ما هو التعديل المناسب على الكود التي تجعل من المستخدم باماكنه تحديد مكان النسخة الاحتياطيه لقاعدة البيانات لحفظها باستخدام SaveFileDailog

الكود:
PHP كود :
Private Sub btn_backup_Click(sender As ObjectAs EventArgsHandles btn_backup.Click

        Dim portfolioPath 
As String My.Application.Info.DirectoryPath

        FileCopy
(portfolioPath "\db.accdb""C:\users\khalid\desktop\bakdb.accdb")

        
MsgBox("Backup has been taken Successfully on Desktop"

نلاحظ ان الـ Source وهو portfoliopath هو مكان قاعدة البيانات و الــ Destination الوجهه هي حفظ النسخة بشكل مباشر على سطح المكتب.

انا اريد فقط المرونه في اختيار مكان النسخة الاحتياطيه باستخدام مربع الحوار Savefiledailog لاضافة طابع مرن للمستخدم بتحديد مكان حفظ نسخته الاحتياطيه.

وبالمثل في طرية استعادة النسخه الاحتياطيه باستخدام Openfiledailog

وهذا كود استعادة النسخة الاحتياطيه:

PHP كود :
Try
            
Dim portfolioPath As String My.Application.Info.DirectoryPath
            
If MessageBox.Show("Restoring the database will erase any changes you have made since you last backup. Are you sure you want to do this?"_
                        
"Confirm Delete"_
                        MessageBoxButtons
.OKCancel_
                        MessageBoxIcon
.Question_
                        MessageBoxDefaultButton
.Button2) = Windows.Forms.DialogResult.OK Then


                
'Restore the database from a backup copy.
                ' 
FileCopy("D:\backupdatabase\databasebackupfile.accdb"portfolioPath "\db.accdb")
                
FileCopy("C:\users\khalid\desktop\bakdb.accdb"portfolioPath "\db.accdb")
                
MsgBox("Database Restoration Successful")
                
ds.Clear()
                
adpter.Fill(ds"tb")

            
End If

        Catch 
ex As Exception
            Dim MessageString 
As String "Report this error to the system administrator: " ControlChars.NewLine ex.Message
            Dim TitleString 
As String "Employee Master Details Data Load Failed"
            
MessageBox.Show(MessageStringTitleStringMessageBoxButtons.OKMessageBoxIcon.Error)
        
End Try 

والسلام عليكم ورحمه الله وبركاتهSmile
الرد
تم الشكر بواسطة:
#2
وعليكم السلام
تفضل أخوي هذا الكود ضعه في Button Big Grin
كود :
SaveFileDialog1.Filter = "Access 2007 (*.accdb)|*.accdb|All files (*.*)|*.*"


        If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.Cancel Then
            'في الديالوج Cancel إلغاء عملية الحفظ عند إختيار
            Exit Sub
        Else

            Try

                Dim SavePath As String = SaveFileDialog1.FileName
                FileCopy(Application.StartupPath & "\bakdb.accdb", SavePath)

            Catch ex As Exception

                MsgBox(ex.Message, MsgBoxStyle.Critical, "Error")

            End Try

            MsgBox("Backup has been taken Successfully")

        End If

بالتوفيق Shy
الرد
تم الشكر بواسطة:
#3
ممتاز اخي جميل جدا اشتغل معاي 100% مثل ما اردت

وهذا الكود لاستعادة قاعدة البيانات باستخدام Openfiledailog بالتعديل الطفيف على كود الاخ عمر

PHP كود :
OpenFileDialog1.Filter "Access 2010 (*.accdb)|*.accdb|All files (*.*)|*.*"


        
If OpenFileDialog1.ShowDialog Windows.Forms.DialogResult.Cancel Then
            
'في الديالوج Cancel إلغاء عملية الحفظ عند إختيار
            Exit Sub
        Else

            Try

                Dim openPath As String = OpenFileDialog1.FileName
                FileCopy(openPath, Application.StartupPath & "\db.accdb")

            Catch ex As Exception

                MsgBox(ex.Message, MsgBoxStyle.Critical, "Error")

            End Try

            MsgBox("Backup has been Restored Successfully")
            ds.Clear()
            adpter.Fill(ds, "tb")
        End If 

Smile شكرا جزيل واتمنى ان يستفيد الجميع ...
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  خطأ في الإتصال بقاعدة البيانات الموجودة على هذا السيرفر (ويندوز 10) djelloul 0 90 04-05-18, 12:14 AM
آخر رد: djelloul
  بحث و اظهار سجلات من قاعدة البيانات في حال تساوت اول 4 ارقام من text بالقيمه الموجود ahmed_elwerfalli 0 98 25-04-18, 04:12 PM
آخر رد: ahmed_elwerfalli
Tongue ربط قاعدة بينات اكسل مع الفيجوال عمار عيثاوي 3 2,049 02-03-18, 05:13 PM
آخر رد: محمد بن عطية
  إضافة الصورة في قاعدة البيانات iFanfan 0 171 01-03-18, 06:02 PM
آخر رد: iFanfan
  كيف يمكن نسخ جدول من قاعدة بيانات الي اخري atefkhalf2004 9 206 30-01-18, 02:59 PM
آخر رد: atefkhalf2004
  معرفة اصدار نسخة قاعدة البيانات atefkhalf2004 8 189 27-01-18, 06:07 PM
آخر رد: أبو عمر
  [VB.NET] مشكلة في تحديث البيانات larbihamri 2 236 04-11-17, 07:37 PM
آخر رد: larbihamri
  [VB.NET] اضافه الصور الى قاعدة البيانات رمنس الشوق 1 299 23-10-17, 03:22 AM
آخر رد: khodor1985
  [سؤال] كيفية حفظ ملف pdf في قاعدة بيانات sql abid 6 7,996 04-10-17, 10:08 PM
آخر رد: sofiane0552
  مسار قاعدة البيانات اكسس Mostafa Yousry 6 2,295 24-09-17, 08:23 PM
آخر رد: alsouf

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم