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

كود :
       If String.IsNullOrEmpty(Textrecovery.Text) Then Exit Sub
       If Not Textrecovery.Text.Contains("Data1.bak") Then
       DevExpress.XtraEditors.XtraMessageBox.Show("قاعدة البيانات التي تم اختيارها لا تتوافق مع المطلوب", "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error)
       Exit Sub
       End If
       Try
       Dim con As New SqlConnection("server=.\SQLEXPRESS;Initial Catalog=master;integrated security=true")
       con.Open()
       Dim cmd As New SqlCommand("ALTER DATABASE Data1 SET SINGLE_USER WITH ROLLBACK IMMEDIATE", con)
       cmd.ExecuteNonQuery()
       cmd = New SqlCommand("RESTORE DATABASE [Data1] FROM DISK = @filePath WITH MOVE 'Data1' TO 'C:\Program Files (x86)\Microsoft SQL Server\MSSQL12.SQLEXPRESS\MSSQL\DATA\Data1.mdf', MOVE 'Data1_log' TO 'C:\Program Files (x86)\Microsoft SQL Server\MSSQL12.SQLEXPRESS\MSSQL\DATA\Data1.ldf', REPLACE, RECOVERY", con)
       cmd.Parameters.AddWithValue("@filePath", Textrecovery.Text)
       cmd.ExecuteNonQuery()
       cmd = New SqlCommand("ALTER DATABASE Data1 SET MULTI_USER WITH ROLLBACK IMMEDIATE", con)
       cmd.ExecuteNonQuery()
       con.Close()
       DevExpress.XtraEditors.XtraMessageBox.Show("تمت عملية استرجاع النسخة الاحتياطية لقاعدة البيانات بنجاح", "تنبية", MessageBoxButtons.OK, MessageBoxIcon.Information)
       Textrecovery.Text = String.Empty
       Catch ex As Exception
       DevExpress.XtraEditors.XtraMessageBox.Show("فشل في عملية الاسترجاع: " & ex.Message, "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error)
       End Try
لا إله إلا الله وحده لا شريك له، لهُ الملك وله الحمد وهو على كل شئ قدير،،،،
سبحان الله وبحمده سبحان الله العظيم Heart
الرد }}}
تم الشكر بواسطة:
#2
هل اجد شرح لهذه الطريقة ؟
لا إله إلا الله وحده لا شريك له، لهُ الملك وله الحمد وهو على كل شئ قدير،،،،
سبحان الله وبحمده سبحان الله العظيم Heart
الرد }}}
تم الشكر بواسطة:
#3
هذا الحل يا اخوان
كود :
   Private Sub Btnrecovery_Click(sender As Object, e As EventArgs) Handles Btnrecovery.Click
       Dim database As String = con.Database.ToString()
       If String.IsNullOrEmpty(Textrecovery.Text) Then
           DevExpress.XtraEditors.XtraMessageBox.Show("الرجاء اختيار ملف النسخة الاحتياطية", "تنبيه", MessageBoxButtons.OK, MessageBoxIcon.Warning)
           Exit Sub
       End If
       Try
           con.Open()
           ' ضبط قاعدة البيانات إلى وضع المستخدم الواحد
           Dim str1 As String = String.Format("ALTER DATABASE [{0}] SET SINGLE_USER WITH ROLLBACK IMMEDIATE", database)
           Dim cmd1 As New SqlCommand(str1, con)
           cmd1.ExecuteNonQuery()
           ' استعادة قاعدة البيانات
           Dim str2 As String = String.Format("USE MASTER; RESTORE DATABASE [{0}] FROM DISK = '{1}' WITH REPLACE", database, Textrecovery.Text)
           Dim cmd2 As New SqlCommand(str2, con)
           cmd2.ExecuteNonQuery()
           ' إعادة قاعدة البيانات إلى وضع متعدد المستخدمين
           Dim str3 As String = String.Format("ALTER DATABASE [{0}] SET MULTI_USER", database)
           Dim cmd3 As New SqlCommand(str3, con)
           cmd3.ExecuteNonQuery()
           DevExpress.XtraEditors.XtraMessageBox.Show("تم استرجاع النسخة الاحتياطية لقاعدة البيانات بنجاح", "تنبيه", MessageBoxButtons.OK, MessageBoxIcon.Information)
       Catch ex As Exception
           DevExpress.XtraEditors.XtraMessageBox.Show("حدث خطأ أثناء استعادة النسخة الاحتياطية لقاعدة البيانات: " & ex.Message, "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error)
       Finally
           ' التأكد من إغلاق الاتصال دائمًا
           If con.State = ConnectionState.Open Then
               con.Close()
           End If
       End Try

   End Sub
لا إله إلا الله وحده لا شريك له، لهُ الملك وله الحمد وهو على كل شئ قدير،،،،
سبحان الله وبحمده سبحان الله العظيم Heart
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  تصدير البيانات إلى ملف RTF مصمم هاوي 4 818 15-08-25, 04:13 PM
آخر رد: أبو خالد الشكري
  [VB.NET] ما هو أفضل موقع استضافة لقواعد البيانات MSSQL ؟ mmaalmesry 0 793 16-07-25, 10:45 PM
آخر رد: mmaalmesry
  مساعدة في كيفية ترحيل البيانات من داتا قريدفيو إلى داتا قريدفيو في فيجوال بيسك ahmedfa71 13 2,209 09-07-25, 11:24 PM
آخر رد: أبو خالد الشكري
  مشكلة في حفظ البيانات مصمم هاوي 2 1,019 30-06-25, 08:51 AM
آخر رد: مصمم هاوي
  بطء في جلب البيانات مصمم هاوي 9 990 08-05-25, 07:51 AM
آخر رد: مصمم هاوي
  [VB.NET] حذف جزء من مسار ملف 1albasha 4 311 06-05-25, 04:39 PM
آخر رد: 1albasha
  [Acces2007] مشكلة ملف قاعدة بيانات access للقراءة فقط mmaalmesry 11 1,450 29-04-25, 08:55 PM
آخر رد: mmaalmesry
  تعديل كود تحديث البيانات مصمم هاوي 1 780 26-04-25, 06:07 PM
آخر رد: مصمم هاوي
Photo لايمكن تعرف على تنسيق قاعدة البيانات الدريساوي 2 695 26-04-25, 12:24 AM
آخر رد: الدريساوي
  مساعدة في طريقة تحميل الفيديوهات المخزنة في قاعدة البيانات foad8920 0 658 24-04-25, 12:58 PM
آخر رد: foad8920

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


يقوم بقرائة الموضوع: