تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] سؤال عن sql localDB
#1
السلام عليكم 

انا متصل بقاعدة البيانات عن طريق sql localDB 2014 

ودة كود الاتصال شغال تمام بدون اي مشاكل

 cn.ConnectionString = "Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\data\smart_sales_system2.mdf;Integrated Security=True;"

عاوز اعرف ازاي اعمل backup & restore لقاعدة البيانات sql localDB 2014 
الرد }}}
تم الشكر بواسطة:
#2
هذا الكود يتم تنفيذة داخل الـ SQL Server

كود :
USE smart_sales_system2;  
GO  
BACKUP DATABASE smart_sales_system2  
TO DISK = 'C:\SQLServerBackups\smart_sales_system2.Bak'  
  WITH FORMAT,  
     MEDIANAME = 'C_SQLServerBackups',  
     NAME = 'Full Backup of smart_sales_system2';  
GO
الرد }}}
تم الشكر بواسطة:
#3
(01-10-18, 12:15 PM)عبدالله الدوسري كتب : هذا الكود يتم تنفيذة داخل الـ SQL Server

كود :
USE smart_sales_system2;  
GO  
BACKUP DATABASE smart_sales_system2  
TO DISK = 'C:\SQLServerBackups\smart_sales_system2.Bak'  
  WITH FORMAT,  
     MEDIANAME = 'C_SQLServerBackups',  
     NAME = 'Full Backup of smart_sales_system2';  
GO

الله يحفظك من كل سوء 
انا جربت الكود داخل الـ SQL Server وشغال تمام
بس انا عاوز اعرف ازاي اعمل  backup & restore  عن طريق ال فيجوال بيسك 
معلش هتعبك معايا
الرد }}}
تم الشكر بواسطة:
#4
ملاحظات :

أخذ نسخة إحتياطية :

   

إستعادة القاعدة من ملف النسخة الإحتياطية :

   





أخذ نسخة إحتياطية :
كود :
   Private Sub Button_Backup_Click(sender As Object, e As EventArgs) Handles Button_Backup.Click
       Dim BackupFullFileName As String = "C:\Backups\smart_sales_system2 " & Now.ToString("yyyy-MM-dd-HH-mm-ss") & ".Bak"
       Using CMD As New SqlClient.SqlCommand
           CMD.Connection = New SqlClient.SqlConnection("Data Source=.;Initial Catalog=master;Integrated Security=True")
           CMD.CommandType = CommandType.Text
           CMD.CommandText = "BACKUP DATABASE smart_sales_system2 TO DISK = '" & BackupFullFileName & "'; SELECT 'Backup Database Successfully Processed' AS Result"
           Try
               CMD.Connection.Open()
               Dim Res As String = CMD.ExecuteScalar()
               MsgBox(Res)
           Catch ex As Exception
               MsgBox(ex.Message)
           Finally
               CMD.Connection.Close()
           End Try
       End Using
   End Sub



إستعادة القاعدة من ملف النسخة الإحتياطية :

كود :
   Private Sub Button_Restored_Click(sender As Object, e As EventArgs) Handles Button_Restored.Click
       Dim BackupFullFileName As String = ""
       Using OFD As New OpenFileDialog
           With OFD
               .Filter = "Database Backup |*.Bak"
               If .ShowDialog = DialogResult.OK Then
                   BackupFullFileName = .FileName
                   Using CMD As New SqlClient.SqlCommand
                       Try
                           CMD.Connection = New SqlClient.SqlConnection("Data Source=.;Initial Catalog=master;Integrated Security=True")
                           CMD.CommandType = CommandType.Text
                           CMD.Connection.Open()
                           '---------------------------------------------------------------------------------------------------
                           CMD.CommandText = "ALTER DATABASE [smart_sales_system2] SET Single_User WITH Rollback Immediate;"
                           CMD.ExecuteNonQuery()
                           '---------------------------------------------------------------------------------------------------
                           CMD.CommandText = "RESTORE DATABASE smart_sales_system2 From DISK = '" & BackupFullFileName & "' WITH REPLACE;
                                              SELECT 'Database Restored Processed Successfully.' AS Result"
                           Dim Res As String = CMD.ExecuteScalar()
                           '---------------------------------------------------------------------------------------------------
                           CMD.CommandText = "ALTER DATABASE [smart_sales_system2] SET Multi_User With ROLLBACK IMMEDIATE;"
                           CMD.ExecuteNonQuery()
                           '---------------------------------------------------------------------------------------------------
                           MsgBox(Res)
                       Catch ex As Exception
                           MsgBox(ex.Message)
                           '---------------------------------------------------------------------------------------------------
                           CMD.CommandText = "ALTER DATABASE [smart_sales_system2] SET Multi_User With ROLLBACK IMMEDIATE;"
                           CMD.ExecuteNonQuery()
                           '---------------------------------------------------------------------------------------------------
                       Finally
                           CMD.Connection.Close()
                       End Try
                   End Using
               End If
           End With
       End Using
   End Sub

تذكر : الحذر مطلوب لعدم ضياع البيانات عن طريق الخطاء .
الرد }}}
تم الشكر بواسطة: ibraheam , ibraheam
#5
الطريقة مع ال sqlexpress شغاله معايا تمام انا عاوز اعرف الطريقة مع sql localDB
الرد }}}
تم الشكر بواسطة:
#6
طيب هو ملف عادي زيه زي أي ملف ثاني , يعني إستخدم الكود التالي لعمل نسخة إحتياطية من الملف 
كود :
System.IO.File.Copy

وإنسخة في أي مكان تحب 
والعكس صحيح عند عمل restore 
الرد }}}



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


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