ODBC: استدعاء وظائف ODBC API مباشرة

فئات قاعدة البيانات توفر واجهة أبسط لـ مصدر البيانات أكثر مما تفعل ODBC. نتيجة لذلك، لا تغلف الفئات كافة ODBC API. للحصول على أية وظائف تقع خارج قدرات الفئات، يجب استدعاء وظائف API ODBC مباشرة. على سبيل المثال، يجب استدعاء دالات كتالوج ODBCـ ( :: SQLColumns ،:: SQLProcedures ،:: SQLTables و غيرها) مباشرة.

ملاحظة

مصادر البيانات ODBC يتم الوصول إليها من خلال الفئات MFC ODBC كما هو موضح في هذا الموضوع أو عبر فئات "كائن MFC للوصول للبيانات" (DAO).

لاستدعاء دالة API ODBC مباشرةً، يجب أن تتخذ نفس الخطوات التي كنت ستتخذها عند إجراء الاستدعاء بدون إطار العمل. الخطوات هي:

  • تخصيص التخزين لأية نتائج يقوم بإرجاعها الإستدعاء.

  • تمرير (handle)مؤشر ODBCـ HDBC أو HSTMT اعتماداً على توقيع معلمة الدالة. استخدم الماكرو AFXGetHENV لاسترداد مؤشر ODBC.

    المتغيرات الأعضاء CDatabase::m_hdbc و CRecordset::m_hstmt متوفرة بحيث لا تحتاج لتخصيصها و تهيئها بنفسك.

  • ربما يمكنك القيام باستدعاء وظائف ODBC إضافية لتحضير أو متابعة الاستدعاء الرئيسي.

  • إلغاء تخصيص التخزين عند الانتهاء.

لمزيد من المعلومات حول هذه الخطوات، راجع SDK اتصالات قواعد البيانات المفتوحة (ODBC) في وثائق MSDN.

بالإضافة إلى هذه الخطوات، تحتاج إلى اتخاذ خطوات إضافية للتحقق من إرجاع القيم ، تأكد من عدم انتظار البرنامج لاستدعاء غير متزامن للانتهاء وهكذا. يمكنك تكرار هذه الخطوات الأخيرة باستخدام وحدات الماكرو AFX_SQL_ASYNC و AFX_SQL_SYNC. لمزيد من المعلومات، راجع وحدات الماكرو و العموميات في مرجع MFC.

راجع أيضًا:

المبادئ

أساسيات ODBC