تقييم الموضوع :
  • 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 شكرا جزيل واتمنى ان يستفيد الجميع ...
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Tongue ربط قاعدة بينات اكسل مع الفيجوال عمار عيثاوي 3 1,911 02-03-18, 05:13 PM
آخر رد: محمد بن عطية
  إضافة الصورة في قاعدة البيانات iFanfan 0 87 01-03-18, 06:02 PM
آخر رد: iFanfan
  كيف يمكن نسخ جدول من قاعدة بيانات الي اخري atefkhalf2004 9 112 30-01-18, 02:59 PM
آخر رد: atefkhalf2004
  معرفة اصدار نسخة قاعدة البيانات atefkhalf2004 8 126 27-01-18, 06:07 PM
آخر رد: أبو عمر
  [VB.NET] مشكلة في تحديث البيانات larbihamri 2 169 04-11-17, 07:37 PM
آخر رد: larbihamri
  [VB.NET] اضافه الصور الى قاعدة البيانات رمنس الشوق 1 210 23-10-17, 03:22 AM
آخر رد: khodor1985
  [سؤال] كيفية حفظ ملف pdf في قاعدة بيانات sql abid 6 7,366 04-10-17, 10:08 PM
آخر رد: sofiane0552
  مسار قاعدة البيانات اكسس Mostafa Yousry 6 2,128 24-09-17, 08:23 PM
آخر رد: alsouf
  [سؤال] مشكلة الاختلاف بين ترتيب الصفوف في قاعدة البيانات والداتا جريد فيو waelalmsry75 2 312 18-08-17, 05:40 PM
آخر رد: waelalmsry75
  هل يمكن حفظ البيانات من dataGridView مباشرة؟ abozeyd 3 413 15-08-17, 02:11 PM
آخر رد: abozeyd

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


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