Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Vous permet aux sources de données d'accès comme données de chaîne lorsque vous n'avez aucune connaissance du schéma du magasin de données (structure sous-jacente).
class CXMLAccessor : public CDynamicStringAccessorW
Membres
Méthodes
Récupère des informations sur les colonnes. |
|
Extrait tout le contenu d'une table par des lignes. |
Notes
Toutefois, CXMLAccessor diffère d' CDynamicStringAccessorW car il convertit toutes les données accessibles le magasin de données au format XML (référencé) au format XML.Cela est particulièrement utile pour la sortie dans des pages Web XML-averties.Les noms de balises XML correspondent aux noms des colonnes du magasin de données mieux possible.
Utilisez les méthodes CDynamicAccessor pour récupérer des informations sur les colonnes.Vous utilisez ces informations sur les colonnes pour créer un accesseur de manière dynamique au moment de l'exécution.
Les informations sur les colonnes sont stockées dans une mémoire tampon qui est créée et managée par cette classe.Obtenez des informations sur la colonne à l'aide de GetXMLColumnData ou obtenir des données de la colonne par des lignes à l'aide de GetXMLRowData.
Exemple
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();
}
Configuration requise
Header: atldbcli.h
Voir aussi
Référence
CDynamicParameterAccessor, classe
CDynamicStringAccessor, classe
CDynamicStringAccessorA, classe
CDynamicStringAccessorW, classe