كيفية استخدام هوية SQL Server قوالب OLE DB و OLE DB لـ ODBC في Visual C++

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

194678
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
ملاحظة Microsoft Visual C++ .NET 2002 Microsoft Visual C++ .NET 2003 يدعم كل من طراز التعليمات البرمجية المدارة التي تم توفيرها من قبل Microsoft .NET Framework و نموذج التعليمات البرمجية غير المُدارة Microsoft Windows الأصلي. تنطبق المعلومات الواردة في هذه المقالة فقط على التعليمات البرمجية غير المُدارة Visual C++.يعتمد Microsoft Visual C++ 2005 كلا تعليمات برمجية تمت إدارتها الطراز المتوفر من خلال Microsoft .NET Framework و طراز التعليمات البرمجية غير المُدارة الأصلي Microsoft Windows.
الموجز
عند استخدام قوالب OLE DB مع قاعدة بيانات SQL Server ، فمن الضروري غالباً إضافة سجلات إلى جدول الذي يحتوي على عمود هوية.

الحصول على عمود هوية لزيادة بشكل صحيح مع OLE DB الموفر ODBC يأتي مع 6.0 Visual C++ ، Msdasql.dll ، يتطلب أن يتم استخدام ماكرو COLUMN_ENTRY_STATUS.
معلومات أخرى
يوضح نموذج التعليمات البرمجية التالي كيفية استخدام هذا الماكرو عند تعريف مخطط أسلوب استرجاع قيمة مع Visual C++ 6.0 OLE DB المستهلك قوالب:

رمز نموذج

   class CMyTableAccessor   {   public:      LONG m_id;          // This is an identity column      DWORD m_id_status;  // Status variable for id column      TCHAR m_name[11];   BEGIN_COLUMN_MAP(CMyTableAccessor)     COLUMN_ENTRY_STATUS(1, m_id, m_id_status)     COLUMN_ENTRY(2, m_name)   END_COLUMN_MAP()   ...   };				
هل تشبه إلى إضافة سجل جديد إلى الجدول التعليمات البرمجية التالية:
   CMyTable rs;   rs.Open();   rs.ClearRecord();  //Null out current structure   strcpy(rs.m_name , "New Name");   rs.m_id_status = DBSTATUS_S_IGNORE;  //Tells the provider to ignore this                                        // column when updating.   rs.Insert();  // Insert new record into the table letting server update                // of the identity column.   rs.Close();				
مراجع
الرجاء راجع المواضيع التالية في الوثائق الفورية MSDN:

  • VC ++ وثائق COLUMN_ENTRY_STATUS
  • OLE DB موضوع تحمل العنوان "الحالة" تعريف "DBSTATUS_S_IGNORE"

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

خصائص

رقم الموضوع: 194678 - آخر مراجعة: 02/24/2014 08:35:06 - المراجعة: 3.0

  • Microsoft Visual C++ 2005 Express Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
  • Microsoft Visual C++ .NET 2002 Standard Edition
  • Microsoft Visual C++ 6.0 Enterprise Edition
  • Microsoft Visual C++ 6.0 Professional Edition
  • Microsoft Visual C++, 32-bit Learning Edition 6.0
  • Microsoft Data Access Components 2.5
  • kbnosurvey kbarchive kbmt kbconsumer kbdatabase kbhowto kbprovider KB194678 KbMtar
تعليقات