Поделиться через


Класс CXMLAccessor

Позволяет к источникам данных access в качестве строковых данных, когда неизвестна схема хранилища данных (базовая структура).

class CXMLAccessor : public CDynamicStringAccessorW

Члены

a8f7s7hh.collapse_all(ru-ru,VS.110).gifМетоды

GetXMLColumnData

Извлекает сведения о столбцах.

GetXMLRowData

Извлекает все содержимое таблицы строками.

Заметки

Однако CXMLAccessor отличается от CDynamicStringAccessorW, поскольку преобразование все данные из хранилища данных в формате XML (заключенные в теги) данные.Это особенно полезно для вывода на XML-осведомленным страницам.Имена тегов XML будут соответствовать именам столбцов хранилища данных.

Используйте методы CDynamicAccessor для получения информации о столбцах.Информация о столбцах используется для динамического создания метода доступа во время выполнения.

Информация о столбцах хранится в буфере, созданном и управляемым данным классом.Получение сведений о столбцах с помощью GetXMLColumnData или получите данные столбца строками с помощью GetXMLRowData.

Пример

void DoCXMLAccessorTest()
{
   HRESULT hr = CoInitialize(NULL);

   CDataSource ds;
   CSession ss;

   CTable<CXMLAccessor> rs;

   // The following is an example initialization string:
   hr = ds.OpenFromInitializationString(L"Provider=Microsoft.Jet.OLEDB.4.0;"
      L"User ID=Admin;Data Source=Snippet.mdb;Mode=Share Deny None;"
      L"Extended Properties=\"\";Jet OLEDB:System database=\"\";"
      L"Jet OLEDB:Registry Path=\"\";Jet OLEDB:Database Password=\"\";"
      L"Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;"
      L"Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;"
      L"Jet OLEDB:New Database Password=\"\";Jet OLEDB:Create System Database=False;"
      L"Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;"
      L"Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False");

   hr = ss.Open(ds);
   hr = rs.Open(ss, L"Customer"); // Customer is a table name in the database.

   CStringW strColumnInfo;
   rs.GetXMLColumnData(strColumnInfo);
   wprintf_s(L"%s\n", strColumnInfo);

   hr = rs.MoveFirst();
   while(SUCCEEDED(hr) && hr != DB_S_ENDOFROWSET)
   {
      CStringW strRowData;
      rs.GetXMLRowData(strRowData);
      wprintf_s(L"%s\n", strRowData);
      hr = rs.MoveNext();
   }

   ss.Close();
   ds.Close();
   CoUninitialize();
}

Требования

Заголовок: atldbcli.h

См. также

Ссылки

Класс CAccessor

Класс CDynamicAccessor

Класс CDynamicParameterAccessor

Класс CDynamicStringAccessor

Класс CDynamicStringAccessorA

Класс CDynamicStringAccessorW

Класс CManualAccessor

Основные понятия

Шаблоны потребителей OLE DB (C++)

Справочник по шаблонам OLE DB объекта-получателя