(07-05-19, 02:03 PM)asemshahen5 كتب : [ -> ]تفضل هذا الكود :
كود :
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim FileBak As String = "D:\MyBackup\Backup" & Today.ToString("dd-MM-yyyy") & ".bak"
Dim DESCRIPTIONXT As String = "نسخ تلقائي يومي"
Dim DBName As String = "TestDB"
If Not IO.File.Exists(FileBak) Then
Dim Con As New SqlClient.SqlConnection("Data Source=(Local);Initial Catalog=" & DBName & ";Persist Security Info=True;User ID=MyUserName;Password=MyPassword")
Dim SQLStr As String = "BACKUP DATABASE " & DBName & " TO DISK = N'" & FileBak & "' WITH DESCRIPTION = N'" & DESCRIPTIONXT & "', NOFORMAT, NOINIT, NAME = N'" & DBName & "', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
Dim da As New SqlClient.SqlDataAdapter(SQLStr, Con)
Dim dt As New DataTable
da.Fill(dt)
MsgBox("تمت عملية النسخ الاحتياطي بنجاح")
End If
End Sub
كيف تكون الطريقة اخوي عاصم لو كانت قاعدة البينات أكسس.كيف يكون النسخ كل يوم بارك الله فيك و رمضان طيب و كريم
SQL الي OLEDB في الكود الموجود.
(07-05-19, 02:56 PM)abdullhadi999 كتب : [ -> ] (07-05-19, 02:03 PM)asemshahen5 كتب : [ -> ]تفضل هذا الكود :
كود :
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim FileBak As String = "D:\MyBackup\Backup" & Today.ToString("dd-MM-yyyy") & ".bak"
Dim DESCRIPTIONXT As String = "نسخ تلقائي يومي"
Dim DBName As String = "TestDB"
If Not IO.File.Exists(FileBak) Then
Dim Con As New SqlClient.SqlConnection("Data Source=(Local);Initial Catalog=" & DBName & ";Persist Security Info=True;User ID=MyUserName;Password=MyPassword")
Dim SQLStr As String = "BACKUP DATABASE " & DBName & " TO DISK = N'" & FileBak & "' WITH DESCRIPTION = N'" & DESCRIPTIONXT & "', NOFORMAT, NOINIT, NAME = N'" & DBName & "', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
Dim da As New SqlClient.SqlDataAdapter(SQLStr, Con)
Dim dt As New DataTable
da.Fill(dt)
MsgBox("تمت عملية النسخ الاحتياطي بنجاح")
End If
End Sub
أخي الغالي . اسف على ازعاجك . هل بالامكان وضعها في مثال عملي لاني حاولت اطبقها ولم يتنفذ لي . وكيف احدد الوقت الذي يتم فيه النسخ . تحياتي
السّلام عليكم و رحمة الله و بركاته
إضافة لما تكرّم به أخي الكريم asemshahen5 .. جزاه الله خيرا
مثال متكامل يمكن الإستفادة منه بشكل كبير لما تريد القيام به إن شاء الله
تحياتي
أخي الغالي هذا الكود ينفذ عد تشغيل البرنامج في حدث اللود يتحقق اذا كان هناك نسخة إحتياطية بتاريخ اليوم يكمل إقلاع البرنامج إذا لم يكن هناك نسخة إحتياطية يقوم بعمل نسخة إحتياطية و يكمل تحميل البرنامج أي لا يوجد وقت محدد لعمل النسخة فقط عند تشغيل البرنامج .
بالنسبة لقواعد البيانات أكسيس :
كود :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If IO.File.Exists(Application.StartupPath & "\MyDatabase.accdb") Then
Dim FileBak As String = "D:\MyBackup\Backup" & Today.ToString("dd-MM-yyyy") & ".backup"
Dim DESCRIPTIONXT As String = "نسخ تلقائي يومي"
Dim DBName As String = Application.StartupPath & "\MyDatabase.accdb"
If Not IO.File.Exists(FileBak) Then
FileCopy(DBName, FileBak)
MsgBox("تمت عملية النسخ الاحتياطي بنجاح")
End If
End If
End Sub
وهذا
SQL الى OLEDB :
كود :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim FileBak As String = "D:\MyBackup\Backup" & Today.ToString("dd-MM-yyyy") & ".bak"
Dim DESCRIPTIONXT As String = "نسخ تلقائي يومي"
Dim DBName As String = "TestDB"
If Not IO.File.Exists(FileBak) Then
Dim Con As New OleDb.OleDbConnection("Provider=SQLNCLI11;Data Source=(Local);Persist Security Info=True;Persist Security Info=True;User ID=MyUserName;Password=MyPassword;Initial Catalog=Test")
Dim SQLStr As String = "BACKUP DATABASE " & DBName & " TO DISK = N'" & FileBak & "' WITH DESCRIPTION = N'" & DESCRIPTIONXT & "', NOFORMAT, NOINIT, NAME = N'" & DBName & "', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
Dim da As New OleDb.OleDbDataAdapter(SQLStr, Con)
Dim dt As New DataTable
da.Fill(dt)
MsgBox("تمت عملية النسخ الاحتياطي بنجاح")
End If
End Sub
(07-05-19, 09:17 PM)abdullhadi999 كتب : [ -> ] (07-05-19, 04:23 PM)asemshahen5 كتب : [ -> ]أخي الغالي هذا الكود ينفذ عد تشغيل البرنامج في حدث اللود يتحقق اذا كان هناك نسخة إحتياطية بتاريخ اليوم يكمل إقلاع البرنامج إذا لم يكن هناك نسخة إحتياطية يقوم بعمل نسخة إحتياطية و يكمل تحميل البرنامج أي لا يوجد وقت محدد لعمل النسخة فقط عند تشغيل البرنامج .
بالنسبة لقواعد البيانات أكسيس :
كود :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If IO.File.Exists(Application.StartupPath & "\MyDatabase.accdb") Then
Dim FileBak As String = "D:\MyBackup\Backup" & Today.ToString("dd-MM-yyyy") & ".backup"
Dim DESCRIPTIONXT As String = "نسخ تلقائي يومي"
Dim DBName As String = Application.StartupPath & "\MyDatabase.accdb"
If Not IO.File.Exists(FileBak) Then
FileCopy(DBName, FileBak)
MsgBox("تمت عملية النسخ الاحتياطي بنجاح")
End If
End If
End Sub
وهذا SQL الى OLEDB :
كود :
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim FileBak As String = "D:\MyBackup\Backup" & Today.ToString("dd-MM-yyyy") & ".bak"
Dim DESCRIPTIONXT As String = "نسخ تلقائي يومي"
Dim DBName As String = "TestDB"
If Not IO.File.Exists(FileBak) Then
Dim Con As New OleDb.OleDbConnection("Provider=SQLNCLI11;Data Source=(Local);Persist Security Info=True;Persist Security Info=True;User ID=MyUserName;Password=MyPassword;Initial Catalog=Test")
Dim SQLStr As String = "BACKUP DATABASE " & DBName & " TO DISK = N'" & FileBak & "' WITH DESCRIPTION = N'" & DESCRIPTIONXT & "', NOFORMAT, NOINIT, NAME = N'" & DBName & "', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
Dim da As New OleDb.OleDbDataAdapter(SQLStr, Con)
Dim dt As New DataTable
da.Fill(dt)
MsgBox("تمت عملية النسخ الاحتياطي بنجاح")
End If
End Sub
اسعدك الله في هذه الايام الفضيلة انت ومن تحب . زبطت معايه . شكرا
(07-05-19, 03:30 PM)عبد العزيز البسكري كتب : [ -> ] (07-05-19, 02:56 PM)abdullhadi999 كتب : [ -> ] (07-05-19, 02:03 PM)asemshahen5 كتب : [ -> ]تفضل هذا الكود :
كود :
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim FileBak As String = "D:\MyBackup\Backup" & Today.ToString("dd-MM-yyyy") & ".bak"
Dim DESCRIPTIONXT As String = "نسخ تلقائي يومي"
Dim DBName As String = "TestDB"
If Not IO.File.Exists(FileBak) Then
Dim Con As New SqlClient.SqlConnection("Data Source=(Local);Initial Catalog=" & DBName & ";Persist Security Info=True;User ID=MyUserName;Password=MyPassword")
Dim SQLStr As String = "BACKUP DATABASE " & DBName & " TO DISK = N'" & FileBak & "' WITH DESCRIPTION = N'" & DESCRIPTIONXT & "', NOFORMAT, NOINIT, NAME = N'" & DBName & "', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
Dim da As New SqlClient.SqlDataAdapter(SQLStr, Con)
Dim dt As New DataTable
da.Fill(dt)
MsgBox("تمت عملية النسخ الاحتياطي بنجاح")
End If
End Sub
أخي الغالي . اسف على ازعاجك . هل بالامكان وضعها في مثال عملي لاني حاولت اطبقها ولم يتنفذ لي . وكيف احدد الوقت الذي يتم فيه النسخ . تحياتي
السّلام عليكم و رحمة الله و بركاته
إضافة لما تكرّم به أخي الكريم asemshahen5 .. جزاه الله خيرا
مثال متكامل يمكن الإستفادة منه بشكل كبير لما تريد القيام به إن شاء الله
تحياتي
الف شكر لك ياستاذنا الكبير عبدالعزيز . شرفت الموضوع بردك الجميل .
تسلم يا غالي .. ملف آخر قمت بتجربته .. و يعمل بكفاءة .. فقط غير ما يجب تغييره واحذف إن شئت ما لا يلزمك واترك فقط النسخ الإحتياطي اليومي ..
تحياتي
السّلام عليكم و رحمة الله و بركاته
أخي الكريم " عبد الهادي "
إضافة لما طرحه السادة الأفاضل بارك الله فيهم .. و إضافة للملفات المرفقة
قمت بتبسيط الأمر و الفكرة لك لأقصى ما تتخيّل .. فقط قم باستبدال كود زر الأمر لديك بكود النسخ الإحتياطي
طبعا مع إضافة أكواد الحفظ و التعديل و الحذف البديهية المتعارف عليها
رمضان كريم كل سنة و أنت و كل الإخوة بمليون خير
تحياتي