تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] استفسار
#1
Lightbulb 
كيف أحفظ نسخة احتياطية باستخدام الفيجوال بيسك على جهازين بينهم شبكة داخلية لأنة الملف هام واكون شاكر ومقدر لكم
الرد }}}
تم الشكر بواسطة:
#2
الكود اللي استخدمه


كود :
       If Not System.IO.File.Exists("backup\Backup_DataBase.accdb") Then
           

               System.IO.File.Copy("DataBase.accdb", "backup\Backup_DataBase.accdb")
               MsgBox("""Backup"" : تم اخذ نسخة احتياطية في داخل مجلد")
           End If
الرد }}}
تم الشكر بواسطة: MOHAMMED066
#3
جربت اطبق الكود دائما يطلع خطأ
الرد }}}
تم الشكر بواسطة:
#4
تاكد من مسار قاعدة البيانات ومسار الحفظ
كود :
If Not System.IO.File.Exists("مسار مجلد حفظ الباك اب") Then
           

               System.IO.File.Copy("قاعدة البيانات", "مجلد حفظ الباك اب")
               MsgBox("""Backup"" : تم اخذ نسخة احتياطية في داخل مجلد")
           End If
الرد }}}
تم الشكر بواسطة: Ahmads
#5
أخي العزيز نيمو

لو تعدل الكود بشكل احترافي راح يكون أفضل بكثير
يعني مثلا تستخدم له أداة SaveFileDialog1

ويكون اسم النسخة الاحتياطية بتاريخ اليوم ، بالإضافة إلى الوقت ؛ وذلك حتى لا يحدث تكرارًا لاسم الملف المحفوظ وبالتالي تحدث أخطاء .
الرد }}}
تم الشكر بواسطة: Ahmads , نيمو
#6
(02-06-22, 12:48 PM)أبو خالد الشكري كتب : أخي العزيز نيمو

لو تعدل الكود بشكل احترافي راح يكون أفضل بكثير
يعني مثلا تستخدم له أداة SaveFileDialog1

ويكون اسم النسخة الاحتياطية بتاريخ اليوم ، بالإضافة إلى الوقت ؛ وذلك حتى لا يحدث تكرارًا لاسم الملف المحفوظ وبالتالي تحدث أخطاء .

احسنت بالضبط الافضل يكون بتاريخ اليوم واداة سيف فايل
انا اعطيته كود الباك اب وكل شخص وابداعاته Smile 

[صورة مرفقة: 165416061928341.png]
الرد }}}
تم الشكر بواسطة:
#7
مرحبًا بالجميع


هذا نموذج من تأليفي لنسخ قاعدة البيانات
على افتراض أن قاعدة البيانات اسمها Test
فقط قم بتغيير هذا الاسم إلى اسم قاعدة البيانات التي يعمل عليها برنامجك

وعيش حياتك Smile
كود :
       Dim myDataBaseName As String = "Test" ' اكتب اسم قاعدة البيانات الافتراضي
       Dim ThisDay As String = " (Date " & Today.Day & "_" & Today.Month & "_" & Today.Year & " Time " & My.Computer.Clock.LocalTime.ToString("hh_mm_ss") & ")"
       Dim MyBackupFileName As String = myDataBaseName & ThisDay & ".accdb"

       SaveFileDialog1.Filter = "Backup Database (*.accdb)|*.accdb"
       SaveFileDialog1.FileName = MyBackupFileName
       SaveFileDialog1.Title = "إنشاء نسخة احتياطية لقاعدة البيانات"
       SaveFileDialog1.InitialDirectory = Application.StartupPath
       SaveFileDialog1.RestoreDirectory = True

       Dim result = SaveFileDialog1.ShowDialog()
       If result = DialogResult.Cancel Then
           Exit Sub
       End If

       My.Computer.FileSystem.CopyFile(Application.StartupPath & "\" & myDataBaseName & ".accdb", SaveFileDialog1.FileName)
       MessageBox.Show("تم نسخ قاعدة البيانات بنجاح", "نسخ قاعدة البيانات", MessageBoxButtons.OK, MessageBoxIcon.Information)
الرد }}}
تم الشكر بواسطة:
#8
وإليكم كود استرجاع قاعدة البيانات الاحتياطية 

مع ملاحظة أنه يجب إضافة أداة SaveFileDialog1 للكود الأول الخاص بنسخ قاعدة البيانات


وإضافة أداة OpenFileDialog1 لهذا الكود الخاص باسترجاع قاعدة البيانات المحفوظة سابقا



ودمتم بخير .



كود :
Dim myDataBaseName As String = "Test" ' اكتب اسم قاعدة البيانات الافتراضي

       OpenFileDialog1.Filter = "Restore Database (*.accdb)|*.accdb"
       OpenFileDialog1.InitialDirectory = Application.StartupPath
       OpenFileDialog1.Title = "استرجاع قاعدة بيانات"
       OpenFileDialog1.FileName = ""
       OpenFileDialog1.RestoreDirectory = True

       Dim result = OpenFileDialog1.ShowDialog()
       If result = DialogResult.Cancel Then
           Exit Sub
       End If

       My.Computer.FileSystem.DeleteFile(Application.StartupPath & "\" & myDataBaseName & ".accdb")
       My.Computer.FileSystem.CopyFile(OpenFileDialog1.FileName, Application.StartupPath & "\" & myDataBaseName & ".accdb")

       MessageBox.Show("تم استرجاع قاعدة البيانات السابقة بنجاح", " استرجاع قاعدة البيانات", MessageBoxButtons.OK, MessageBoxIcon.Information)
الرد }}}
تم الشكر بواسطة:



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


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