Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Permite obtener acceso a orígenes de datos como datos de cadena cuando no se conoce el esquema del almacén de datos (estructura subyacente).
class CXMLAccessor : public CDynamicStringAccessorW
Members
Métodos
Recupera la información de columna. |
|
Recupera el contenido completo de una tabla por filas. |
Comentarios
Sin embargo, CXMLAccessor diferencia de CDynamicStringAccessorW en que convierte todos los datos acceso de almacén como datos (etiquetados) con formato XML.Esto es especialmente útil para la salida de las páginas Web XML-enteradas.Los nombres de etiqueta XML con los nombres de columna del almacén de datos lo más posible.
Para obtener información de columnas, utilice métodos CDynamicAccessor.Utilice esta información de columna para crear un descriptor de acceso dinámicamente en tiempo de ejecución.
La información de columnas se almacena en un búfer creado y administrado por esta clase.Obtener información de columna mediante GetXMLColumnData u obtener los datos de columna por filas mediante GetXMLRowData.
Ejemplo
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();
}
Requisitos
Header: atldbcli.h
Vea también
Referencia
CDynamicParameterAccessor (Clase)
CDynamicStringAccessor (Clase)
CDynamicStringAccessorA (Clase)
CDynamicStringAccessorW (Clase)