Record e flussi

ADO fornisce attualmente l'oggetto Recordset come mezzo primario per accedere alle informazioni nelle origini dati, ad esempio database relazionali. Tuttavia, alcuni provider supportano gli oggetti Record e Stream come oggetti alternativi o complementari con i quali è possibile modificare i dati dai provider. Per informazioni specifiche sul comportamento record , vedere la documentazione del provider.

Record

Gli oggetti record funzionano essenzialmente come recordsetdi una riga. Tuttavia, i record hanno funzionalità limitate rispetto ai set di record e hanno proprietà e metodi diversi. L'origine dei dati in un oggetto Record può essere un comando che restituisce una riga di dati dal provider. L'uso di oggetti Record anziché oggetti Recordset per ricevere i risultati da una query che restituisce una riga di dati elimina il sovraccarico dell'istanza dell'oggetto Recordset più complesso.

Gli oggetti record possono servire a un altro scopo, in particolare con provider per origini dati diverse da database relazionali tradizionali, ad esempio il provider Microsoft OLE DB per La pubblicazione Internet. Gran parte delle informazioni che devono essere elaborate esiste, non come tabelle nei database, ma come messaggi nei sistemi di posta elettronica e nei file nei file system moderni. Gli oggetti Record e Stream facilitano l'accesso alle informazioni archiviate in origini diverse dai database relazionali.

L'oggetto Record può rappresentare e gestire dati, ad esempio directory e file in un file system o cartelle e messaggi in un sistema di posta elettronica. A tale scopo, l'origine per record può essere la riga corrente di un recordset aperto, un URL assoluto o un URL relativo insieme a un oggetto Connection aperto.

In genere, un oggetto Recordset può essere usato per rappresentare un contenitore o un elemento padre in una gerarchia, ad esempio una cartella o una directory. Un record può essere usato per restituire informazioni specifiche su un nodo nel contenitore padre, ad esempio un file o un documento. Il motivo principale per cui i record vengono usati per rappresentare questo tipo di informazioni è che queste origini di dati sono eterogenee. Ciò significa che ogni record può avere un set e un numero diverso di campi. I set di record tradizionali contenenti righe di un database sono omogenei, il che significa che ogni riga ha lo stesso numero e tipo di campi.

Per altre informazioni sull'uso dell'oggetto Record per l'elaborazione di questi dati eterogenei da provider come il provider di pubblicazione Internet, vedere Uso di ADO per La pubblicazione Internet.

Flussi

L'oggetto Stream fornisce i mezzi per leggere, scrivere e gestire un flusso di byte. Questo flusso di byte può essere di testo o binario ed è limitato solo dalle risorse di sistema. In genere, gli oggetti ADO Stream vengono usati ai fini seguenti:

  • Per contenere i dati di un oggetto Recordset salvato in formato XML. Questi flussi XML da recordsetsalvati possono essere usati come origine quando si apre un nuovo oggetto Recordset. Per altre informazioni, vedere Flussi e persistenza.

  • Per contenere commandStream da eseguire nel provider come alternativa a CommandText. Ad esempio, gli UpdateGram XML possono essere usati come origine per un comando sul provider Microsoft OLE DB per SQL Server.

  • Per ricevere i risultati dal provider in un formato diverso da un oggetto Recordset, ad esempio i risultati XML del provider Microsoft OLE DB per SQL Server. Per altre informazioni, vedere Recupero dei set di risultati in flussi.

  • Per contenere il testo o i byte che comprendono un file o un messaggio, in genere usati con provider come il provider Microsoft OLE DB per La pubblicazione Internet. Per altre informazioni sull'uso di oggetti Stream , vedere Uso di ADO per La pubblicazione Internet.

È possibile aprire un oggetto Stream su:

  • File semplice specificato con un URL.

  • Campo di un oggetto Record o Recordset contenente un oggetto Stream .

  • Flusso predefinito di un oggetto Record o Recordset che rappresenta una directory o un file composto.

  • Campo risorsa contenente l'URL di un file semplice.

  • Nessuna fonte specifica. In questo caso, un oggetto Stream viene aperto in memoria. I dati possono essere scritti in esso e quindi salvati in un altro flusso o file.

  • Campo BLOB in un oggetto Recordset.

In questa sezione vengono trattati gli argomenti seguenti.