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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  استعلام من عدة جداول لقاعدة بيانات اكسس Adel27213 1 695 07-11-23, 08:27 AM
آخر رد: justforit
  [سؤال] عدم إظهار الصور مع النص فى Listview من قاعدة البيانات alims 2 1,577 27-08-23, 12:22 PM
آخر رد: رضوان الجماعي
  [نقاش] مشاركة قاعدة بيانات SQL على شبكه داخليه morkoskhalaf 3 3,002 06-01-23, 03:20 AM
آخر رد: عبدالكريم برشدان
  قاعدة بيانات xml djelloul 3 2,798 07-11-22, 10:27 PM
آخر رد: Am7
  استفسار عن تخزين الوقت في قاعدة البيانات strongriseman 2 1,126 22-04-22, 07:27 PM
آخر رد: strongriseman
  [سؤال] مشكلة فى عرض الصورة من ادخل قاعدة البيانات alims 2 1,258 17-11-21, 10:09 AM
آخر رد: سعود
  كيف اتجنب أخطاء ارسال قيم فارغة الى حقول رقمية في اكسس بسام محمدغانم 2 1,132 09-11-21, 02:09 AM
آخر رد: Anas Mahmoud
  [C#.NET] استخدام الاداة bindingNavigator ahmed gabe 1 2,131 08-11-21, 10:16 PM
آخر رد: sayyad
  استعلام يرجع اسماء الاعمدة و نوع البيانات في جدول معين بسام محمدغانم 0 959 23-10-21, 01:43 AM
آخر رد: بسام محمدغانم
  مشكلة ظهور بياانات حقلين في قاعدة بيانات على شكل علامة استفهام bassant 5 1,632 17-10-21, 02:07 PM
آخر رد: abubasilIraq

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


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