تم النشر منذ 28 Jan 2014 يرجى مساعدتي بانشاء نسخة احتياطية لقاعدة بيانات موجودة على الشبكةعلما ان مسار الملف \\backupsrv\new\db1اي ﻻ يوجد محرك اقرص مثل d ااو cولكم جزيل الشكر 0 شارك هذا الرد رابط المشاركة شارك الرد من خلال المواقع ادناه
0 قام بالرد منذ 4 Feb 2014 السلام عليكم أخري الكريم قمت بعمل مثال لك يقوم بالاستعلام من داخل قاعدة البيانات عن الجدوال المرتبطة ثم يقوم بانشاء جدوال مؤقتة جديدة بنفس الاسماء والحقول والبيانات ثم يقوم بتصدير هذه الجدوال الي قاعدة بيانات محددة مقدما ثم يقوم بحذف كل الملفات المؤقتة مرة أخري كل ما هو مطلوب منك ان تقوم بربط جداول داخل قاعدة البيانات المرفقة في المثال ثم تقوم بتحديد الملف الذي تريد نسخ الجدوال اليه (قاعدة بيانات النسخ الاحتياطي) ثم تقوم بتشغيل الكود تسطتيع تحديد المسار الذي تريد نقل الجدوال اليه بشكل دائم من خلال القيمة الافتراضية لمربع النص نفسه .. كذلك يمكنك تغيره من خلال زر الاستعراض الكود كامل مع الشرح :' إذا وجد أنك لم تحدد مسار الحفظ يخرج من الحدثIf IsNull([TxtFilename]) ThenMsgBox "أنت لم تحدد مسار القاعدة المراد نسخ الجدوال بها", vbInformationExit SubEnd IfDim CountOFTablesNames As Integer ' لمعرفة عدد الجدوال المرتبطة داخل قاعدة البياناتDim StartWhileFrom As Long ' متغير يحمل قيمة رقم بداية اللوب منهDim EndWhileFrom As Long ' متغير يحمل قيمة رقم لنهاية اللوب' للاستفسار عن عدد الجدوال المرتبطة داخل قاعدة البيانات حتي نقوم بتشغيل الكود او الخروج منهCountOFTablesNames = Nz(DCount("Name", "MSysObjects", "(((Left([Name],1))<>'~') AND ((Left([Name],4))<>'MSys') AND ((MSysObjects.Type) In (1,4,6)) AND ((MSysObjects.Database) Is Not Null) AND ((Right([ForeignName],3))<>'txt'))"), 0) ' يتم تشغيل الكود في حالة انه يوجد جدوال مرتبطة داخل قاعدة البيانات ' اذا وجد ان عدد الجدوال المرتبطة اكبر من الصفر يبدا في تشغيل الكود If CountOFTablesNames > 0 Then On Error Resume Next ' اذا وجد خطئ يتخطي الخطأ DoCmd.RunSQL "DROP TABLE TempLinkedTablesNames" ' يقوم هنا بحذف جدول مؤقت يتم انشائه لكتابة اسماء الجدول المرتبطة به On Error GoTo 0 ' لتشغيل اذا وجد خطا يظهر الخطا 'نقوم بانشاء جدول مؤقت لكتابة اسماء الجدول المرتبطة به DoCmd.RunSQL "CREATE TABLE TempLinkedTablesNames (auto_no AUTOINCREMENT,TableName VARCHAR(255),CONSTRAINT RegA_PK PRIMARY KEY(auto_no))" ' نقوم هنا بادراج اسماء الجدول المرتبطة بالجدول المؤقت DoCmd.SetWarnings False DoCmd.RunSQL "INSERT INTO TempLinkedTablesNames ( TableName ) SELECT MSysObjects.Name AS table_name FROM MSysObjects WHERE (((Left([Name],1))<>'~') AND ((Left([Name],4))<>'MSys') AND ((MSysObjects.Type) In (1,4,6)) AND ((MSysObjects.Database) Is Not Null) AND ((Right([ForeignName],3))<>'txt'));" DoCmd.SetWarnings True ' نقوم بالاستعلام عن اكبر قيمة داخل الجدول المؤقت لكي نسطتيع ايقاف اللوب عندها StartWhileFrom = 1 EndWhileFrom = DMax("auto_no", "TempLinkedTablesNames") Dim SelectTableName As String ' متغير يقوم بحمل قيمة اسم الجدول المراد العمل عليه ' طول ما قيمة عدد الجدوال اكبر من قيمة البداية يستمر في عمل اللوب While EndWhileFrom >= StartWhileFrom DoCmd.SetWarnings False ' نوقف تحذيرات نقل البيانات ' نقوم هنا بالاستعلام عن قيمة أول اسم جدول حتي نقوم بترحيل الجدول الي القاعدة المحددة مقدما SelectTableName = DLookup("TableName", "TempLinkedTablesNames", "auto_no=" & StartWhileFrom) ' نقوم هنا بانشاء جدول جديد بنفس خصائص وقيم حقول الجدول المرتبط DoCmd.RunSQL "SELECT " & SelectTableName & ".* INTO xxx_" & SelectTableName & " FROM " & SelectTableName & "; " 'نقوم هنا بتصدير الجدول الذي قمنا بانشائه الي قاعدة البيانات المحددة DoCmd.TransferDatabase acExport, "Microsoft Access", Me.TxtFilename, acTable, "xxx_" & SelectTableName, SelectTableName, False ' نقوم هنا بحذف الجدول الذي قمنا بانشائه DoCmd.RunSQL "DROP TABLE " & "xxx_" & SelectTableName 'نقوم باضافة قيمة واحد لكي نستطيع التنقل الي الجدول التالي StartWhileFrom = StartWhileFrom + 1 ' نقوم باضافة قيمة واحد للقيمة حتي المرة القادمة ننتقل للسجل التالي DoCmd.SetWarnings True ' نقوم بتشغيل تحذيرات نقل البيانات مرة اخري Wend MsgBox "تم نسخ الجدوال المرتبطة بنجاح", vbInformation Else MsgBox "لا يوجد جدوال مرتبطة داخل قاعدة البيانات", vbInformation End If مرفق قاعدة البيانات التي بها المثال كامل Backup Linked Tables.rar بالتوفيق 1 شارك هذا الرد رابط المشاركة شارك الرد من خلال المواقع ادناه
0 قام بالرد منذ 28 Jan 2014 http://arabteam2000-forum.com/index.php/topic/285664-%D8%B7%D8%B1%D9%8A%D9%82%D8%A9-%D8%B9%D9%85%D9%84-%D9%86%D8%B3%D8%AE%D8%A9-%D8%A7%D8%AD%D8%AA%D9%8A%D8%A7%D8%B7%D9%8A%D8%A9-%D9%85%D9%86-%D8%A7%D9%84%D8%A8%D9%8A%D8%A7%D9%86%D8%A7%D8%AA-backup-data/ 0 شارك هذا الرد رابط المشاركة شارك الرد من خلال المواقع ادناه
0 قام بالرد منذ 28 Jan 2014 اشكرك اخي very على المشارمة المفيدةولكن اريد المساعدة في تحديد مسار قاعدة البياناتﻻن عند الضغط ع خصائص قاعدة البياناتيعطيني مسار دون قرص \\backupsrv\new\db1 0 شارك هذا الرد رابط المشاركة شارك الرد من خلال المواقع ادناه
0 قام بالرد منذ 29 Jan 2014 يرجى المساعدة 0 شارك هذا الرد رابط المشاركة شارك الرد من خلال المواقع ادناه
0 قام بالرد منذ 29 Jan 2014 اين الخبراء 0 شارك هذا الرد رابط المشاركة شارك الرد من خلال المواقع ادناه
0 قام بالرد منذ 4 Feb 2014 (معدل) السلام عليكم استخدم كود النسخ التالي:FileCopy "Source File", "Destination Direct" مثال علي الكود "مع تغيير المسارات":FileCopy "\\192.168.1.1\common\AAA.xlsx", "D:\Profiles\BBB.xlsx"تقدر تحط الكود في اي حدث برجاء العلم إذا كان الملف قيد التشغيل لن يعمل كود النسخ. كمان في أمثلة كتير أتقدمت في المنتدي بخصوص موضوع نسخ قاعدة البيانات ... أستخدام البحث بالتوفيق تم تعديل 4 Feb 2014 بواسطه Hisham_wz 0 شارك هذا الرد رابط المشاركة شارك الرد من خلال المواقع ادناه
0 قام بالرد منذ 4 Feb 2014 جزاك الله كل خير اخي هشامانا عامل ارتباط بقاعدة البيانات المراد عمل نسخة احتياطية لهاهل توجد تعليمة لنسخ القاعدة المرتبط بهابدل تحديد المساراي اني احتاج نسخة للبيانات 0 شارك هذا الرد رابط المشاركة شارك الرد من خلال المواقع ادناه
0 قام بالرد منذ 5 Feb 2014 اشكرك اخي هشام على الاجابة المفصله والمثال المرفقوجعله الله في ميزان حسناتك 0 شارك هذا الرد رابط المشاركة شارك الرد من خلال المواقع ادناه
تم النشر منذ
يرجى مساعدتي بانشاء نسخة احتياطية لقاعدة بيانات موجودة على الشبكة
علما ان مسار الملف
\\backupsrv\new\db1
اي ﻻ يوجد محرك اقرص مثل d ااو c
ولكم جزيل الشكر
شارك هذا الرد
رابط المشاركة
شارك الرد من خلال المواقع ادناه