تقدم هذه المقالة بشكل أساسي شرحًا تفصيليًا لمعلمات الأسلوب adodb.recordset.open(rs.open) التي يمكن للأصدقاء المحتاجين الرجوع إليها.
كائن مجموعة سجلات ADO
يتم استخدام كائن ADO Recordset للاحتفاظ بمجموعة سجلات من جدول قاعدة البيانات. يتكون كائن مجموعة السجلات من السجلات والأعمدة (الحقول).
في ADO، يعد هذا الكائن هو الكائن الأكثر أهمية والأكثر استخدامًا للعمل على البيانات الموجودة في قاعدة البيانات.
معرف البرنامج
تعيين objRecordset=Server.CreateObject(ADODB.recordset)
عند فتح مجموعة السجلات لأول مرة، سيشير مؤشر السجل الحالي إلى السجل الأول، وستكون خصائص BOF وEOF False. إذا لم تكن هناك سجلات، تكون خصائص BOF وEOF صحيحة.
يمكن أن تدعم كائنات مجموعة السجلات نوعين من التحديثات:
التحديث الفوري - بمجرد استدعاء أسلوب التحديث، تتم كتابة كافة التغييرات على قاعدة البيانات على الفور. التحديث الدفعي - سيقوم الموفر بتخزين تغييرات متعددة ثم نقل هذه التغييرات إلى قاعدة البيانات باستخدام أسلوب UpdateBatch.
في ADO، يتم تعريف 4 أنواع مختلفة من المؤشر (المؤشر):
• المؤشرات الديناميكية - تتيح لك عرض الإضافات والتغييرات والحذف التي أجراها مستخدمون آخرون
•مؤشر مجموعة المفاتيح - يشبه المؤشر الديناميكي، باستثناء أنه لا يمكنك رؤية الإضافات التي أجراها مستخدمون آخرون، ويمنعك من الوصول إلى السجلات التي تم حذفها بواسطة مستخدمين آخرين. لا تزال تغييرات البيانات التي أجراها مستخدمون آخرون مرئية.
• المؤشر الثابت - يوفر نسخة ثابتة من مجموعة السجلات التي يمكن استخدامها للعثور على البيانات أو إنشاء التقارير. بالإضافة إلى ذلك، لن تكون الإضافات والتغييرات والحذف التي أجراها مستخدمون آخرون مرئية. هذا هو نوع المؤشر الوحيد المسموح به عند فتح كائن Recordset للعميل.
• المؤشر الأمامي فقط - يسمح فقط بالتمرير للأمام في مجموعة السجلات. بالإضافة إلى ذلك، لن تكون الإضافات والتغييرات والحذف التي أجراها مستخدمون آخرون مرئية.
يمكن تعيين نوع المؤشر من خلال خاصية CursorType أو معلمة CursorType في الأسلوب Open.
ملاحظة: لا يدعم كافة الموفرين كافة الأساليب والخصائص الخاصة بكائن Recordset.
يمكن للأصدقاء الذين يريدون معرفة المزيد عن كائنات ADO Recordset الانتقال إلى هنا لعرض المزيد من المحتوى.
إذا كان للقراءة فقط ولا يتضمن عمليات التحديث، فاستخدم 1، 1
إذا كان الأمر يتضمن عمليات القراءة والتحديث، فيمكنك استخدام 1,3 أو 3,2
فتح النموذج الأولي للأسلوب لكائن Recordset:
فتح([المصدر]،[ActiveConnection]،[CursorType]،[LockType]،[خيارات])
نوع المؤشر نوع المؤشر:
كونست adOpenForwardOnly = 0
المؤشر الأمامي هو المؤشر الافتراضي ويوفر أسرع أداء قيد التشغيل. استخدمه لفتح مجموعة السجلات والحصول على جميع النتائج بالترتيب من الزوج إلى النهاية. لا يدعم التمرير للخلف ويسمح فقط بالتنقل في اتجاه واحد بين النتائج.
كونست adOpenKeyset = 1
يعكس المؤشر الثابت حالة البيانات الموجودة في الجدول عند فتح المؤشر لأول مرة، ولا يمكن للمؤشر معرفة ما إذا كان قد تم تحديث صفوف البيانات في الجدول الأساسي أو حذفها أو إضافة بيانات جديدة. ومع ذلك، على عكس مؤشرات القارة، التي يمكنها التحرك للأمام فقط، يمكن للمؤشرات الثابتة التمرير للأمام والخلف بين النتائج.
كونست adOpenDynamic = 2
يمكن للمؤشرات التي تعتمد على لوحة المفاتيح الاستعلام عن بعض التغييرات، وليس كلها، في صفوف البيانات الأساسية في الجدول. وعلى وجه الخصوص، فإنه يعكس بدقة ما إذا كان قد تم تحديث البيانات. ولكن لا يمكنه معرفة ما إذا كان المستخدمون الآخرون قد قاموا بحذف صفوف البيانات (ستؤدي صفوف البيانات المحذوفة إلى ترك ثغرات في مجموعة السجلات). تدعم المؤشرات التي تعتمد على لوحة المفاتيح التمرير للأمام والخلف خلال النتائج.
كونست adOpenStatic = 3
المؤشرات الديناميكية هي أغنى أنواع المؤشرات. عندما يكون المؤشر مفتوحًا، يمكنك الاستعلام عن أي تغييرات تم إجراؤها على الجدول بواسطة مستخدمين آخرين ودعم التمرير.
نوع القفل: نوع القفل:
كونست adLockReadOnly = 1
نوع القفل الافتراضي، القفل للقراءة فقط، يسمح لعدة مستخدمين بقراءة نفس البيانات في نفس الوقت، ولكن لا يمكنهم تغيير البيانات.
كونست adLockPessimistic = 2
افتح كائن البيانات بقفل متشائم. يفترض هذا الأسلوب أن المستخدمين الآخرين سيكون لديهم حق الوصول إلى البيانات أثناء قيامك بتحرير السجل. عند هذه النقطة، بمجرد البدء في تحرير سجل، لن يتمكن المستخدمون الآخرون من الوصول إلى البيانات.
كونست adLockOptimistic = 3
افتح كائن البيانات باستخدام القفل المتفائل. يفترض هذا الأسلوب أنه لن يتمكن أي مستخدمين آخرين من الوصول إلى البيانات أثناء قيامك بتحرير السجل. لا يمكن للمستخدمين الآخرين الوصول إلى السجل حتى يتم إجراء التغييرات.
كونست adLockBatchOptimistic = 4
استخدم هذا النوع عند إجراء تحديثات دفعية متعددة الصفوف
معلمات الخيارات:
تشير المعلمة Options إلى نوع سلسلة الأوامر المستخدمة لفتح مجموعة السجلات. يساعد إخبار معلومات ADO حول محتويات السلسلة التي يتم تنفيذها على تنفيذ سلسلة الأوامر بكفاءة.
adCMDTable. تحتوي السلسلة التي يتم تنفيذها على اسم الجدول.
adCMDText. تحتوي السلسلة التي يتم تنفيذها على نص أمر.
adCMDStoredProc. تحتوي السلسلة التي يتم تنفيذها على اسم الإجراء المخزن.
adCMDUUnknown. لم يتم تحديد محتويات السلسلة. (هذه هي القيمة الافتراضية.)
بكل بساطة:
RS.OPEN SQL، CONN، A، B
ج: ADOPENFORWARDONLY (=0) للقراءة فقط، ولا يمكن نقل سجل البيانات الحالي إلا للأسفل
ADOPENSTATIC (=3) للقراءة فقط، ويمكن نقل سجل البيانات الحالي بحرية
يمكن قراءة ADOPENKEYSET(=1) وكتابته، ويمكن نقل سجل البيانات الحالي بحرية
ADOPENDYNAMIC(=2) يمكن قراءته وكتابته، ويمكن نقل سجل البيانات الحالي بحرية، ويمكن رؤية السجلات الجديدة
ب: القيمة الافتراضية ADLOCKREADONLY(=1)، المستخدمة لفتح سجلات للقراءة فقط
ADLOCKPESSIMISTIC(=2) قفل متشائم
ADLOCKOPTIMISTIC(=3) قفل متفائل
ADLOCKBATCHOPTIMISTIC(=4) قفل متفائل للدفعة