منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[مثال] ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم امثلة ومشاريع VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=188)
+--- الموضوع : [مثال] ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) (/showthread.php?tid=1135)

الصفحات: 1 2


ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) - Easy4ever - 30-11-13









هذا المثال يقوم بضغط وإصلاح قواعد البيانات ذات إمتداد mdb مثل إصدار Access 2003 وإمتداد accdb مثل إصدار
Access 2007








لقطات من المثال

( 1 )



( 2 )



( 3 )



( 4 )







رابط التحميل









اتمنى ان يكون قد استفدتم من هذا المثال






أخوكم





تم رفع المرفقات الى سيرفر المنتدى


[attachment=6796]



RE: ... - sooriaty03 - 30-11-13

السلام عليكم ورحمة الله وبركاته

ما شاء الله لا قوة إلا بالله
رائع وجميل جدا

مرحبا بعودتك أخي الكريم بصراحة افتقدناك كثيرا
أسأل الله لك التوفيق والنجاح



RE: ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) - Easy4ever - 01-12-13

أجمعين آمين

الله يسلمكـ



RE: ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) - حسن الاهدل - 06-01-14

Rolleyes


RE: ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) - Easy4ever - 12-01-14

(06-01-14, 12:31 PM)حسن الاهدل كتب : Rolleyes

Confused


RE: ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) - أبو الكباتن - 19-03-15

شكراً جزيلاً

الأخوة الكرام :
آمل المساعدة بعد عمل ضغط وإصلاح لملف أكسس 2010 لم يفتح مرة ثانية فهل هناك طريقة للاستعادة الملف ..
ولكم جزيل الشكر


RE: ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) - محمد العبيدي - 20-03-15

شكراً على هذا المثال
لاكنه لايعمل على قاعدة البيانات 2007 لا المرفقة مع المثال ولا التي لدي يبدو ا المشكله لانهو لدي مايكروسوفت اوفس 2010 حيث لايستطيع الربط على قاعدة البيانات
اذا امكن تصحيح الخطأ لاني محتاج الى هذا الكود جداً


RE: ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) - محمد العبيدي - 20-03-15

تم حل المشكلة التي ظهرت لدي وهي ان البرنامج المرفق من حظرتك لايستطيع الاتصال بقاعدة البيانات من نوع 2007 او 2010  حيث قمت باستبدال الجزء التالي provider=microsoft.ace.oledb.12.0; ليصبح provider=microsoft.Jet.oledb.4.0; التي توجد في جملة الربط بقاعدة البيانات لتكون الداله بالشكل التالي

PHP كود :
     Function Access_2007(ByVal FileNameMD As StringByVal PasswordMD As String)
 
           Try
                  Dim Engine 
CreateObject("JRO.JetEngine")
 
                 Engine.CompactDatabase("provider=microsoft.Jet.oledb.4.0;Data Source=" FileNameMD ";Jet OLEDB:Database Password=" PasswordMD ";" _
                  
"Jet OLEDB:Engine Type=5;"_
                  
"provider=microsoft.Jet.oledb.4.0;" _
                  
"Jet OLEDB:Database Password=" PasswordMD ";" _
                  
"Data Source=" FileNameMD ".tmp;" _
                  
"Jet OLEDB:Engine Type=5;")
 
                 Dim FullPath As String IO.Path.GetDirectoryName(FileNameMD)
 
                 IO.File.Delete(FileNameMD)
 
                 Dim filename As String IO.Path.GetFileName(FileNameMD ".tmp")
 
                 Dim GetFileNameWithoutExtension As String IO.Path.GetFileNameWithoutExtension(FileNameMD ".tmp")
 
                 FileSystem.Rename(FileNameMD ".tmp"FullPath "\" & GetFileNameWithoutExtension)
                  EndMD = "
Successfully"
                  Return EndMD ' إرجع بقيمة تدل على إكمال العملية بنجاح
            Catch ex As Exception
                  If My.Computer.FileSystem.FileExists(FileNameMD) = False Then
                        EndMD = "
Database"
                        Return EndMD ' إرجع بقيمة تدل على فشل العملية بسبب عدم صحة مسار قاعدة البيانات
                  Else
                        EndMD = "
Failed"
                        Return EndMD ' إرجع بقيمة تدل على فشل العملية لاسباب اخرى
                  End If
            End Try

      End Function 
مع احترامي الكبير للسيد Easy4ever  لاني عدلت على كود حضرتك
علماً اني استخدم نظام Windows 8 64x مع Office 2010


RE: ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) - محمد العبيدي - 20-03-15

(20-03-15, 01:10 PM)محمد العبيدي كتب : تم حل المشكلة التي ظهرت لدي وهي ان البرنامج المرفق من حظرتك لايستطيع الاتصال بقاعدة البيانات من نوع 2007 او 2010  حيث قمت باستبدال الجزء التالي provider=microsoft.ace.oledb.12.0; ليصبح provider=microsoft.Jet.oledb.4.0; التي توجد في جملة الربط بقاعدة البيانات لتكون الداله بالشكل التالي


PHP كود :
     Function Access_2007(ByVal FileNameMD As StringByVal PasswordMD As String)
 
           Try
                  Dim Engine 
CreateObject("JRO.JetEngine")
 
                 Engine.CompactDatabase("provider=microsoft.Jet.oledb.4.0;Data Source=" FileNameMD ";Jet OLEDB:Database Password=" PasswordMD ";" _
                  
"Jet OLEDB:Engine Type=5;"_
                  
"provider=microsoft.Jet.oledb.4.0;" _
                  
"Jet OLEDB:Database Password=" PasswordMD ";" _
                  
"Data Source=" FileNameMD ".tmp;" _
                  
"Jet OLEDB:Engine Type=5;")
 
                 Dim FullPath As String IO.Path.GetDirectoryName(FileNameMD)
 
                 IO.File.Delete(FileNameMD)
 
                 Dim filename As String IO.Path.GetFileName(FileNameMD ".tmp")
 
                 Dim GetFileNameWithoutExtension As String IO.Path.GetFileNameWithoutExtension(FileNameMD ".tmp")
 
                 FileSystem.Rename(FileNameMD ".tmp"FullPath "\" & GetFileNameWithoutExtension)
                  EndMD = "
Successfully"
                  Return EndMD ' إرجع بقيمة تدل على إكمال العملية بنجاح
            Catch ex As Exception
                  If My.Computer.FileSystem.FileExists(FileNameMD) = False Then
                        EndMD = "
Database"
                        Return EndMD ' إرجع بقيمة تدل على فشل العملية بسبب عدم صحة مسار قاعدة البيانات
                  Else
                        EndMD = "
Failed"
                        Return EndMD ' إرجع بقيمة تدل على فشل العملية لاسباب اخرى
                  End If
            End Try

      End Function 
مع احترامي الكبير للسيد Easy4ever  لاني عدلت على كود حضرتك
علماً اني استخدم نظام Windows 8 64x مع Office 2010
يبدو ان هذا التعديل يجعل البرنامج يعمل على قاعدة البيانات الافتراضية المرفقة معه ولكنه لايزال لايعمل مع قاعدة بيانات ال2007 ,2010
ارجو من حضرتك ايجاد حل للمشكلة


RE: ضغط وإصلاح قواعد البيانات ( Access mdb & Access accdb ) - سعود - 20-03-15

اخي الكريم محمد العبيدي
انظر للمرفق