أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

كيفية ضغط قاعدة بيانات Microsoft Access من خلال ADO

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

230501
إخلاء مسؤولية من محتوى قديم في قاعدة المعارف
عن تقديم الدعم التقني لهاو لذلك تظهر هذه المقالة كما هي و لن يتم تحديثها Microsoft تمت كتابة هذه المقالة بخصوص منتجات توقفت
الموجز
على الرغم من أنه لا يوفر مواصفات ADO الكائنات على ضغط قواعد بيانات Microsoft Access، يمكن تحقيق هذه الإمكانية باستخدام ملحق ADO: موفر Microsoft Jet OLE DB وكائنات النسخ المتماثل (JRO). تم تنفيذ هذه الإمكانية لأول مرة في موفر JET OLE DB الإصدار 4.0 (Msjetoledb40.dll) والإصدار JRO 2.1 (Msjro.dll). تتوفر ملفات DLL هذه بعد تثبيت MDAC 2.1. يمكنك تحميل أحدث إصدار MDAC من موقع التالي على الويب:
معلومات أخرى
لضغط قاعدة بيانات Access باستخدام ADO، MDAC 2.1 أو أحدث يجب بشكل صحيح تثبيت على جهاز الكمبيوتر. فيما يلي الخطوات الأساسية لضغط قاعدة بيانات Microsoft Access باستخدام Visual Basic و Visual c + +:

Visual Basic: ضغط قاعدة بيانات Access خلال ADO

  1. في Visual Basic IDE، في القائمة المشاريع ، انقر " مراجع".
  2. إضافة Microsoft Jet ومكتبة X.X كائنات النسخ المتماثل، حيث (X.X أكبر من أو تساوي 2, 1).
  3. إضافة سطور التعليمات البرمجية التالية إلى Visual Basic، استبدال مسارات قاعدة البيانات المصدر والوجهة عند الحاجة:
    Dim jro As jro.JetEngineSet jro = New jro.JetEnginejro.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\nwind2.mdb;Jet OLEDB:Database Password=test", _ "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\abbc2.mdb;Jet OLEDB:Engine Type=4;Jet OLEDB:Database Password=test"					
ملاحظة: في 3.60 DAO، أسلوب ريبيرداتاباسي لم يعد متوفراً. ويظهر رمز أعلاه استخدام الأسلوب CompactDatabase. يستبدل هذا الأسلوب أسلوب ريبيرداتاباسي 3.5 DAO.

Visual c + +: ضغط قاعدة بيانات Access خلال ADO

  1. بالإضافة إلى # import، Msado15.dll (MDAC2.1)، أضف العبارة # import التالية إنشاء فئات المجمع ل JRO لفئات بعض الملفات الخاصة بك (بدلاً من ذلك، يمكنك إنشاء فئات المجمع أكثر كفاءة باستخدام السمات no_implementation و implementation_only من العبارة بريبروسيسور # import):
    #import "C:\PROGRAM FILES\COMMON FILES\System\ado\MSJRO.DLL" no_namespace 					
  2. أضف الأمر التالي (تحديد مسارات قاعدة البيانات المصدر والوجهة الخاص بك) إلى ملف بعض الملفات حيث تريد ضغط قاعدة البيانات:
    ...try{   IJetEnginePtr jet(__uuidof(JetEngine));  jet->CompactDatabase( "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\\nwind2.mdb;Jet OLEDB:Database Password=test", "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\\abbc.mdb;" \ "Jet OLEDB:Engine Type=4;Jet OLEDB:Database Password=test");}catch(_com_error &e) {          ::MessageBox(NULL, (LPCTSTR)e.Description( ), "", MB_OK) ;    }					
ملاحظة: نوع OLEDB:Engine Jet = 4 فقط من أجل ملفات MDB تنسيق 3.x Jet. إذا تم استبعاد هذه القيمة، يتم ترقية قاعدة البيانات تلقائياً إلى الإصدار 4.0 (نوع OLEDB:Engine Jet = 5). راجع الجدول التالي القيم المناسبة لنوع OLEDB:Engine Jet:
نوع OLEDB:Engine jetX.x jet ملفات MDB تنسيق
1JET10
2JET11
3JET2X
4JET3X
5JET4X
مراجع
لمزيد من المعلومات، الرجاء راجع ما يليالمقالة في "قاعدة المعارف ل Microsoft":
230496 ضغط قاعدة بيانات Microsoft Access بواسطة OLE DB
باحث CompactDatabase ريبيرداتاباسي

تحذير: تمت ترجمة هذا المقال تلقائياً

خصائص

رقم الموضوع: 230501 - آخر مراجعة: 05/16/2012 07:05:00 - المراجعة: 1.0

  • kbhowto kbjet kbprovider kbmt KB230501 KbMtar
تعليقات
script>