Introduzione al provider SQLXMLOLEDB (SQLXML 4.0)
Il provider SQLXMLOLEDB è un provider OLE DB che espone la funzionalità Microsoft SQLXML tramite ActiveX Data Objects (ADO). Il provider può tuttavia eseguire i comandi solo nella modalità di scrittura in un flusso di output di ADO. Il provider SQLXMLOLEDB non è un provider di set di righe. Quando si esegue un comando, è necessario specificare il flag adExecuteStream, che indirizza ADO all'uso del flusso di output specificato.
Nell'esempio seguente viene illustrata la sintassi del comando Execute in cui viene specificato il flag adExecuteStream:
Dim oTestCommand As New ADODB.Command
...
oTestCommand.Properties("Output Stream").Value = oTestStream
oTestCommand.Execute , , adExecuteStream
...
Proprietà specifiche del provider SQLXMLOLEDB
Il provider SQLXMLOLEDB espone le proprietà di connessione specifiche riportate di seguito.
Connessione proprietà |
Predefinito (se disponibile) |
Descrizione |
---|---|---|
Provider di dati | Specifica il PROGID del provider OLE DB tramite il quale SQLXMLOLEDB esegue i comandi. A partire da SQLXML 4.0 e SQL Server 2005, questo provider è contenuto all'interno del SQL Server Native Client; pertanto, questo valore della proprietà è limitato a "SQLNCLI11". Per altre informazioni, vedere Programmazione in SQL Server Native Client. |
Il provider SQLXMLOLEDB espone le proprietà dei comandi specifiche riportate di seguito.
Comando proprietà |
Predefinito (se disponibile) |
Descrizione |
---|---|---|
Percorso base | "" | Specifica il percorso file di base. Tale percorso viene utilizzato per specificare la posizione dei file XSL (XML Stylesheet Language) o dei file dello schema di mapping. Il percorso del file di base viene usato anche per risolvere i percorsi relativi dei file di schema XSL o mapping specificati nelle proprietà XSL o Mapping Schema. Per un esempio in cui viene usata questa proprietà, vedere Esecuzione di query XPath (provider SQLXMLOLEDB) . |
ClientSideXML | Falso | Impostare questa proprietà su False se si desidera che il processo di conversione del set di righe in XML venga eseguito sul client anziché sul server. Questa operazione si rivela utile quando si desidera spostare il carico delle prestazioni al livello intermedio. Per un esempio in cui viene usata questa proprietà, vedere Esecuzione di query SQL (provider SQLXMLOLEDB) o esecuzione di modelli contenenti query SQL (provider SQLXMLOLEDB) . |
Tipo di contenuto | Restituisce il tipo di contenuto di output. Si tratta di una proprietà READ ONLY. Questa proprietà fornisce informazioni al browser sul tipo di contenuto, ad esempio TEXT/XML, TEXT/HTML, image/jpeg e così via. Il valore di questa proprietà diventa il campo di tipo contenuto inviato al browser come parte dell'intestazione HTTP, che contiene il tipo MIME (Estensioni posta Internet multiuso) del documento inviato come corpo. |
|
Schema di mapping | NULL | Se un'applicazione client esegue una query XPath su uno schema di mapping (XDR o XSD), questa proprietà viene utilizzata per specificare il nome dello schema di mapping. Il percorso specificato può essere relativo (xyz/abc/Schema.xml) o assoluto (C:\Cartella\abc\Schema.xml). Se viene specificato un percorso relativo, viene usato il percorso di base specificato dalla proprietà Percorso di base per risolvere il percorso relativo. Se non è stato specificato alcun percorso nella proprietà Percorso di base, il percorso relativo è relativo alla directory corrente. Se si specifica un valore per la proprietà Schema di mapping, è possibile specificare un percorso della directory locale o un URL (http://...). Se si specifica un URL, è necessario configurare WinHTTP per accedere ai server HTTP e HTTPS tramite un server proxy. A tale scopo, eseguire l'utilità Proxycfg.exe. Per ulteriori informazioni, vedere l'argomento relativo all'utilizzo dell'utilità di configurazione proxy WinHTTP in MSDN Library. Per un esempio in cui viene usata questa proprietà, vedere Esecuzione di query XPath (provider SQLXMLOLEDB) . |
spazi dei nomi | Questa proprietà consente l'esecuzione delle query XPath che utilizzano gli spazi dei nomi. Per un esempio in cui viene usata questa proprietà, vedere Esecuzione di query XPath con spazi dei nomi (provider SQLXMLOLEDB). | |
ss Stream Flags | Questa proprietà viene utilizzata per specificare tipi particolari di restrizioni di sicurezza. È ad esempio possibile che non si desideri consentire la specifica di riferimenti URL a file o di percorsi assoluti di file, ad esempio siti esterni, o che non si desideri consentire l'inserimento di query nei modelli. È possibile assegnare alla proprietà i valori seguenti: 1 = STREAM_FLAGS_DISALLOW_URL 2 = STREAM_FLAGS_DISALLOW_ABSOLUTE_PATH 4 = STREAM_FLAGS_DISALLOW_QUERY 8 = STREAM_FLAGS_ DONTCACHEMAPPINGSCHEMA 16 = STREAM_FLAGS_DONTCACHETEMPLATE 32 = STREAM_FLAGS_DONTCACHEXSL Nella tabella che segue sono contenute informazioni aggiuntive su tali valori. |
|
xml root | Questa proprietà viene utilizzata per definire un tag radice per il codice XML risultante. Se, ad esempio, si eseguono query SQL sul database e il documento XML risultante non contiene un singolo elemento radice, il valore della proprietà viene utilizzato per aggiungere tale elemento al documento. Per un esempio in cui viene usata questa proprietà, vedere Esecuzione di query SQL (provider SQLXMLOLEDB). |
|
xsl | Questa proprietà viene utilizzata per specificare il nome file XSL quando si desidera applicare la trasformazione XSL al documento XML restituito dalla query. Il percorso specificato può essere relativo (xyz/abc/XSL.xsl) o assoluto (C:\Cartella\abc\XSL.xsl). Se viene specificato un percorso relativo, viene usato il percorso di base specificato dalla proprietà Percorso di base per risolvere il percorso relativo. Se non è stato specificato alcun percorso nella proprietà Percorso di base, il percorso relativo è relativo alla directory corrente. Per un esempio in cui viene usata questa proprietà, vedere Applicazione di una trasformazione XSL (provider SQLXMLOLEDB). |
La tabella seguente contiene descrizioni dei valori delle proprietà flag di flusso di ss.
Valore proprietà | Descrizione |
---|---|
STREAM_FLAGS_DISALLOW_URL | Gli URL non sono consentiti per gli schemi di mapping o XSL. |
STREAM_FLAGS_DISALLOW_ABSOLTE_PATH | Un percorso specificato per uno schema di mapping o per XSL deve essere relativo al percorso di base del modello stesso. |
STREAM_FLAGS_DISALLOW_QUERY | Le query non sono consentite in un modello. |
STREAM_FLAGS_DONTCACHEMAPPINGSCHEMA | Lo schema di mapping non viene memorizzato nella cache. Il valore di questa proprietà è utile durante la fase di sviluppo del database, quando gli schemi del database sono soggetti a modifiche. |
STREAM_FLAGS_DONTCACHETEMPLATE | I modelli non vengono memorizzati nella cache. |
STREAM_FLAGS_DONTCACHEXSL | XSL non viene memorizzato nella cache. |