La Connection consente di stabilire una connessione con una 
"sorgente dati" (database), essa fornisce un meccanismo per 
inizializzare il collegamento, eseguire query ed utilizzare
le transazioni sul sottostante database. 
Il driver di database che viene utilizzato non e' necessario che sia 
un driver ODBC, possono essere utilizzati driver di ogni genere purche' 
supportino le corrette interfacce di connessione con ADO. 
Il metodo 
Open della Connection consente di stabilire 
la connessione con il database, con ODBC, una applicazione puo' 
utilizzare le informazioni memorizzate nel Pannello di Controllo per 
stabilire la connessione senza dover specificare informazioni aggiuntive,
nel caso e' possibile usare un driver ODBC specificando tutti i
parametri di connessione direttamente, evitando cosi' la necessita' 
di configurare la connessione nel Pannello di Controllo ma usando 
ugualmente l'interfaccia verso ODBC per la comunicazione, in questo 
caso si parla di connessione DSN-Less. 
Prima di stabilire una connessione, una applicazione deve impostare 
una Stringa di Connessione, specificando i parametri necessari 
(timeout, database, attributi vari). 
Le transazioni possono essere controllate tramite l'oggetto 
Connection mediante i metodi 
BeginTrans,
CommitTrans e
RollbackTrans.
 
Torna alla mappa 
 
 
| 
 
Attributes
 
 | 
 
E' di lettura/scrittura e consente di impostare svariate 
caratteristiche dell'oggetto connessione. Il suo valore e' la 
combinazione di una o piu' costanti:
 
- adXactCommitRetaining
 
Esegue una conferma, vale a dire che quando si richiama 
CommitTrans viene automaticamente avviata una nuova 
transazione. 
Non e' supportata da tutti i driver di database. 
- adXactAbortRetaining
 
Esegue un'interruzione, vale a dire che quando si richiama 
RollbackTrans viene automaticamente avviata una nuova 
transazione. 
Non e' supportata da tutti i driver di database. 
  | 
 
| 
 
CommandTimeout
 
 | 
 
Indica il tempo da attendere prima di ritornare un errore di 
"tempo scaduto per l'operazione". Il valore deve essere indicato 
in secondi. Il default e' di 30 secondi.
 
 | 
 
| 
 
ConnectionString
 
 | 
 
Questa proprieta' e' di lettura/scrittura e consente l'impostazione 
o il reperimento della stringa di connessione che viene usata 
per accedere al database. 
La stringa di connessione e' in genere composta da una serie di 
parametri specificati come parametro=valore; 
ADO supporta quattro parametri per la proprieta' ConnectionString.
Eventuali altri paraemetri sono passati direttamente al provider 
senza essere elaborati. I parametri supportati sono i seguenti:
 
- Provider=
 
Specifica il nome di un provider (driver) da utilizzare per 
la connessione. 
- File Name=
 
Specifica il nome di un file specifico del provider, ad esempio 
un oggetto di fonte dati che deve rimanere fisso, contenente 
informazioni di connessione preimpostate. 
- Remote Provider
 
Specifica il nome di un provider da utilizzare quando viene 
aperta una connessione del client. Solo per Remote Data 
Service. 
- Remote Server=
 
Specifica il nome di percorso del server da utilizzare quando 
viene aperta una connessione del client. Solo per Remote Data 
Service. 
  
Se si utilizza la stringa di connessione nel metodo Open, questa 
stringa sostituira' quella indicata nella ConnectionString.
 
 | 
 
| 
 
ConnectionTimeOut
 
 | 
 
Indica il tempo di attesa da considerare durante il tentativo di 
stabilire una connessione prima di terminare il tentativo e 
generare un errore. 
Il valore va' indicato in secondi, lo standard e' 15 secondi.
 
 | 
 
| 
 
CursorLocation
 
 | 
 
Imposta o restituisce la posizione del motore del cursore. 
Questa proprieta' consente di scegliere tra varie librerie di 
cursori accessibili da parte del driver. E' in genere possibile 
scegliere se utilizzare una libreria di cursori del client oppure 
una presente sul server. L'impostazione della proprieta' non ha 
effetto sulle connessioni gia' aperte. Inoltre non e' possibile 
modificarla se la connessione e' gia' aperta. 
I cursori Connection.Execute erediteranno quest'impostazione. 
I Recordset erediteranno automaticamente quest'impostazione dalle 
relative connessioni. 
Utilizzo di Remote Data Service: quando viene utilizzata su un 
oggetto Recordset o Connection del client (ADOR), la proprieta' 
CursorLocation puņ essere impostata solo
adUseClient. 
Valori possibili:
 
- adUseNone
 
Non sono utilizzati servizi del cursore. Questa costante non 
e' aggiornata ed e' disponibile solo per garantire la 
compatibilita' con le versioni precedenti. 
- adUseClient
 
Utilizza i cursori del client forniti da una libreria di 
cursori locale. I motori di cursore locale consentono in 
genere di eseguire molte funzioni non supportate dai cursori 
forniti da driver. Utilizzando quindi tale impostazione 
sara' possibile usufruire dei vantaggi offerti dalle funzioni 
che verranno abilitate. Per garantire la compatibilita' con le 
versioni precedenti, e' supportato anche il sinonimo 
adUseClientBatch. 
- adUseServer
 
Predefinita. Utilizza cursori forniti da driver o dal provider 
di dati. Si tratta a volte di cursori molto flessibili che 
garantiscono una riservatezza supplementare per le modifiche 
apportate da altri utenti alla fonte dati. Alcune funzioni del
Microsoft Client Cursor Provider, quali i recordset non associati,
non possono essere simulate con i cursori del server, rendendo 
quindi tali funzioni non disponibili con questa impostazione. 
  | 
 
| 
 
DefaultDatabase
 
 | 
 
Consente di specificare il nome del database di default per la 
connessione. 
Se e' disponibile un database predefinito, nelle stringhe SQL sara' 
possibile utilizzare una sintassi non completa per accedere agli 
oggetti del database. Per accedere agli oggetti di un database diverso 
da quello specificato nella proprieta' DefaultDatabase, sara' 
necessario fornire i nomi completi degli oggetti specificando anche il 
nome del database desiderato. Dopo la connessione, il provider 
scrivera' le informazioni sul database predefinito nella proprieta'
DefaultDatabase. 
Alcuni provider consentono l'utilizzo di un solo database per 
connessione. In tal caso non sara' possibile modificare la proprieta'
DefaultDatabase. 
E' possibile che alcuni provider e fonti dati non supportino questa 
funzione e restituiscano un errore o una stringa vuota.
 
 | 
 
| 
 
IsolationLevel
 
 | 
 
Utilizzare la proprieta' IsolationLevel per impostare il 
livello di isolamento per un oggetto Connection. 
La proprieta' IsolationLevel e' di lettura/scrittura. 
L'impostazione ha effetto solo quando viene chiamato il metodo 
BeginTrans. Se il livello di isolamento richiesto non e' disponibile,
il provider potra' restituire il livello di isolamento superiore 
successivo. 
I valori disponibili sono:
 
- adXactUnspecified
 
Indica che il provider utilizza un IsolationLevel diverso da 
quello specificato, che tuttavia non puo' essere determinato. 
- adXactChaos
 
Valore predefinito. Indica che non e' possibile sovrascrivere 
le modifiche in sospeso con transazioni isolate a un livello 
superiore. 
- adXactBrowse
 
Indica che e' possibile visualizzare in una transazione 
le modifiche non confermate in altre transazioni. 
- adXactReadUncommitted
 
Stessa funzione di adXactBrowse. 
- adXactCursorStability
 
Valore predefinito. Indica che e' possibile visualizzare in 
una transazione le modifiche apportate in altre transazioni solo 
dopo averle confermate. 
- adXactReadCommitted
Stessa funzione di adXactCursorStability. 
 
- adXactRepeatableRead
 
Indica che non e' possibile visualizzare in una transazione 
le modifiche apportate in altre transazioni, ma che eseguendo 
una nuova query e' possibile ottenere nuovi recordset. 
- adXactIsolated
 
Indica che le transazioni vengono eseguite in isolamento 
rispetto alle altre transazioni.  
- adXactSerializable
 
Stessa funzione di adXactIsolated. 
 
 | 
 
| 
 
Mode
 
 | 
 
Utilizzare la proprieta' Mode per impostare o restituire le 
autorizzazioni di accesso utilizzate dal provider per la 
connessione corrente. E' possibile impostare la proprieta'
Mode solo quando l'oggetto Connection e' chiuso. 
I valori possibili sono:
 
- adModeUnknown
 
Valore predefinito. Indica che le autorizzazioni non sono 
state ancora impostate oppure che non possono essere 
determinate.  
- adModeRead
 
Indica le autorizzazioni di sola lettura.  
- adModeWrite
 
Indica le autorizzazioni di sola scrittura.  
- adModeReadWrite
 
Indica le autorizzazioni di lettura/scrittura.  
- adModeShareDenyRead
 
Impedisce ad altri utenti di aprire la connessione con le 
autorizzazioni di lettura.  
- adModeShareDenyWrite
 
Impedisce ad altri utenti di aprire la connessione con le 
autorizzazioni di scrittura.  
- adModeShareExclusive
 
Impedisce ad altri utenti di aprire la connessione.  
- adModeShareDenyNone
 
Impedisce ad altri utenti di aprire la connessione con 
qualsiasi tipo di autorizzazione. 
 
 | 
 
| 
 
Provider
 
 | 
 
Utilizzare la proprieta' Provider per impostare o restituire il 
nome del provider per una connessione. E' inoltre possibile impostare 
questa proprieta' in base al contenuto della proprieta' 
ConnectionString o dell'argomento StringaConnessione del 
metodo Open. 
Specificando tuttavia un provider in piu' oggetti durante la 
chiamata del metodo Open, e' possibile che si ottengano risultati 
non prevedibili. Se non si specifica alcun provider, la proprieta' 
verra' impostata su MSDASQL, ovvero il provider Microsoft OLE DB 
per ODBC. 
La proprieta' Provider e' di lettura/scrittura quando la connessione 
e' chiusa e di sola lettura quando e' aperta. L'impostazione diventa 
effettiva solo quando si apre l'oggetto Connection o si accede 
all'insieme Properties dell'oggetto Connection. Se l'impostazione 
non e' valida, verra' restituito un errore.
 
 | 
 
| 
 
State
 
 | 
 
La proprieta' State puņ essere utilizzata per determinare lo 
stato corrente di un determinato oggetto in qualsiasi momento. 
Si tratta di una proprieta' di sola lettura. 
- adStateClosed
 
Predefinita. L'oggetto e' chiuso.  
- adStateOpen
 
L'oggetto e' aperto.  
 
 | 
 
| 
 
Version
 
 | 
 
La proprieta' Version viene utilizzata per la restituzione 
del numero di versione dell'implementazione di ADO.
 
 | 
 
 
 
 
| 
 
Open
 
 | 
 
Apre la connessione fisica con il database. 
Sintassi
 
connessione.Open StringaConnessione, IDUtente, Password, Opzioni
 
Parametri
 
- StringaConnessione
 
Elemento String che contiene informazioni sulla connessione 
(opzionale).
Per ulteriori informazioni sulle impostazioni valide, vedere 
la proprieta' ConnectionString. 
- IDUtente
 
Elemento String che contiene il nome utente da utilizzare quando 
si stabilisce la connessione (opzionale). 
- Password
 
Elemento String che contiene la password da utilizzare quando 
si stabilisce la connessione (opzionale). 
- Opzioni
 
Questo valore e' opzionale, puo' essere impostato su una 
delle seguenti costanti: 
- adConnectAsync
 
- adConnectSync (default)
 
 
  
Utilizzando il metodo Open su un
oggetto Connection si stabilisce 
la connessione fisica a una fonte dati. 
Se il metodo viene completato correttamente, la connessione verra' 
stabilita e sara' possibile inoltrare comandi ed elaborare i 
risultati. 
Utilizzare l'argomento 
StringaConnessione
opzionale per specificare una stringa di connessione contenente 
una serie di istruzioni 
argomento=valore separate da punti
e virgola (;). 
La proprieta' ConnectionString
eredita automaticamente il valore utilizzato per l'argomento
StringaConnessione. 
E' quindi possibile impostare la proprieta'
ConnectionString dell'oggetto
Connection prima di aprirlo 
oppure utilizzare l'argomento 
StringaConnessione per 
impostare o ignorare i parametri di connessione correnti durante 
la chiamata del metodo
Open. 
Se si passano l'ID utente e la password sia nell'argomento
StringaConnessione che
negli argomenti opzionali
IDUtente e
Password, questi ultimi
avranno la priorita'. 
Una volta concluse le operazioni su un oggetto
Connection aperto, utilizzare il
metodo Close per rendere 
disponibili le risorse di sistema associate. Se si chiude un oggetto,
questo non verra' rimosso dalla memoria. Per eliminare 
completamente un oggetto dalla memoria, impostare la variabile 
oggetto su Nothing. 
 | 
 
| 
 
Execute
 
 | 
 
Esegue la query, l'istruzione SQL, la stored procedure o il testo 
specifico del provider. 
 
Sintassi 
Per una stringa di comando che non restituisce valori:
 
connessione.Execute Comando, Record, Opzioni 
 
Per una stringa di comando che restituisce righe:
 
Set recordset = connessione.Execute (Comando, Record, Opzioni)
 
In questo caso la Execute costruisce e ritorna un oggetto di tipo
Recordset. 
Parametri
 
- Comando
 
Elemento String contenente l'istruzione SQL, il nome della 
tabella, la stored procedure oppure il testo specifico del 
provider da eseguire. 
- Record
 
Variabile Long a cui il provider restituisce il numero di 
record interessati dall'operazione (opzionale). 
- Opzioni
 
Valore Long che indica come il provider deve valutare 
l'argomento Comando (opzionale). Puo' essere una delle seguenti 
costanti: 
- adCmdText
 
Indica che il provider deve valutare Comando come una 
definizione in formato testo di un comando.  
- adCmdTable
 
Indica che ADO deve generare una query SQL per restituire tutte 
le righe della tabella indicata in Comando.  
- adCmdTableDirect
 
Indica che il provider deve restituire tutte le righe della 
tabella indicata in Comando.   
- adCmdStoredProc
 
Indica che il  provider deve valutare Comando come una 
stored procedure.  
- adCmdUnknown
 
Indica che il tipo di comando non e' conosciuto.  
- adExecuteAsync
 
Indica che il comando deve essere eseguito in modalita' 
asincrona. 
- adFetchAsync
 
Indica che sulle righe rimanenti dopo la quantita' iniziale 
specificata nella proprieta' CacheSize deve essere eseguito 
il fetch in modalita' asincrona. 
 
 
 
Note
 
Utilizzando il metodo Execute su un oggetto Connection si esegue 
qualsiasi query passata al metodo nell'argomento Comando sulla 
connessione specificata. Se l'argomento Comando specifica una query 
che restituisce righe, qualsiasi risultato generato dall'esecuzione 
verra' memorizzato in un nuovo oggetto Recordset. Se il comando non e'
una query che restituisce righe, il provider restituira' un oggetto 
Recordset chiuso.
 
L'oggetto Recordset restituito e' sempre un cursore a scorrimento 
in avanti di sola lettura. Se e' necessario un oggetto Recordset 
con piu' funzionalita', creare innanzitutto un oggetto Recordset 
con le impostazioni delle proprieta' desiderate, quindi utilizzare 
il metodo Open dell'oggetto Recordset per eseguire la query e
restituire il tipo di cursore desiderato. 
Il contenuto dell'argomento Comando e' specifico del provider e 
puo' essere nella sintassi SQL standard o in un qualsiasi formato 
speciale supportato dal provider.
 
Al termine di questa operazione viene inoltrato un evento 
ExecuteComplete.
 
 | 
 
| 
 
BeginTrans, CommitTrans, RollBackTrans
 
 | 
 
Questi metodi di transazione gestiscono l'elaborazione delle 
transazioni all'interno di una Connection secondo le modalita' 
elencate di seguito. 
- BeginTrans
 
avvia una nuova transazione. 
- CommitTrans
 
salva le modifiche e termina la transazione corrente.
Puo' anche avviare una nuova transazione. 
- RollbackTrans
 
annulla qualsiasi modifica apportata durante la 
transazione corrente e termina la transazione stessa. Puo'
anche avviare una nuova transazione.  
 
Sintassi
 
livello = connection.BeginTrans()
connection.BeginTrans
connection.CommitTrans
connection.RollbackTrans
 
Valore restituito 
BeginTrans puņ essere chiamato come una funzione che restituisce 
una variabile Long indicante il livello di nidificazione della 
transazione. 
Nota: Non tutti i provider supportano le transazioni. 
Verificare che la proprieta' "Transaction DDL" definita dal 
provider sia presente nell'insieme Properties dell'oggetto
Connection. 
In questo modo, sara' possibile verificare che il provider 
supporti le transazioni. 
In caso contrario, la chiamata di uno di questi metodi comportera' 
un errore. 
 
Dopo che e' stato chiamato il metodo BeginTrans, il provider non 
confermera' piu' istantaneamente le modifiche effettuate finche' 
non verra' chiamato il metodo CommitTrans o RollbackTrans per 
terminare la transazione. 
Nel caso di provider che supportano transazioni nidificate, se si 
chiama il metodo BeginTrans nell'ambito di una transazione aperta 
verra' avviata una nuova transazione nidificata. Il valore restituito 
indica il livello di nidificazione: "1" indica che e' stata aperta 
una transazione di primo livello, ovvero una transazione non 
nidificata nell'ambito di un'altra transazione, "2" indica che 
e' stata aperta una transazione di secondo livello, ovvero una 
transazione nidificata in una transazione di primo livello, e cosi' 
via. La chiamata del metodo CommitTrans o RollbackTrans interessa 
solo la transazione aperta piu' di recente. Prima di potere risolvere 
qualsiasi transazione di primo livello, e' necessario chiudere oppure 
annullare la transazione corrente. 
Se si chiama il metodo CommitTrans, verranno salvate le modifiche 
apportate alla connessione in una transazione aperta e verra' 
terminata la transazione stessa. Se si chiama il metodo 
RollbackTrans, verranno annullate tutte le modifiche in una 
transazione aperta e verra' terminata la transazione stessa. Se 
si chiama uno di questi due metodi quando non ci sono transazioni 
aperte, verra' generato un errore. 
A seconda della proprieta' Attributes dell'oggetto Connection, se 
si chiama il metodo CommitTrans o RollbackTrans verra' automaticamente
avviata una nuova transazione. Se la proprieta' Attributes e' 
impostata su adXactCommitRetaining, il provider avviera'
automaticamente una nuova transazione dopo una chiamata CommitTrans.
Se invece la proprieta' Attributes e' impostata su 
adXactAbortRetaining, il provider avviera' automaticamente una nuova 
transazione dopo una chiamata RollbackTrans. 
Remote Data Service 
I metodi BeginTrans, CommitTrans e RollbackTrans non sono 
disponibili per un oggetto Connection sul lato client. 
 | 
 
| 
 
Cancel
 
 | 
 
Annulla l'esecuzione di una chiamata asincrona del metodo 
Execute o Open in attesa. 
Sintassi
 
connection.Cancel
 
Utilizzare il metodo Cancel per terminare l'esecuzione di una 
chiamata asincrona del metodo Execute o Open, ovvero il metodo 
chiamato con l'opzione adConnectAsync, adExecuteAsync o 
adFetchAsync. Se l'opzione adRunAsync non e' stata utilizzata nel
metodo che si sta tentando di terminare, Cancel restituira' un 
errore in fase di esecuzione.
 
 | 
 
| 
 
Close
 
 | 
 
Chiude la connessione ed i relativi oggetti dipendenti. 
Sintassi
 
connection.Close
 
Se si utilizza il metodo Close per chiudere un oggetto Connection, 
verranno chiusi anche tutti gli oggetti Recordset attivi associati 
alla connessione. Un oggetto Command associato all'oggetto Connection 
che si sta chiudendo restera' aperto ma non sara' piu' associato a 
un oggetto Connection, vale a dire che la proprieta' ActiveConnection 
verra' impostata su Nothing. Tutti i parametri definiti dal provider
verranno inoltre cancellati dall'insieme Parameters dell'oggetto 
Command. 
E' possibile chiamare in un secondo momento il metodo Open per 
ristabilire la connessione con la stessa o con un'altra fonte dati. 
Mentre l'oggetto Connection viene chiuso, se si chiama un metodo 
qualsiasi che richiede una connessione aperta con la fonte dati si
generera' un errore. 
Se si chiude un oggetto Connection mentre ci sono oggetti Recordset 
aperti sulla connessione, verra' annullata qualsiasi modifica in 
sospeso in tutti gli oggetti Recordset. Se durante una transazione 
si chiude un oggetto Connection chiamando il metodo Close, si 
generera' un errore. Se un oggetto Connection non e' compreso 
nell'area di validita' mentre e' in corso una transazione, la 
transazione verra' annullata automaticamente. 
Nota: Quando un'oggetto viene chiuso, la memoria occupata 
non viene liberata, per ripulire completamente la memoria e' 
necessario assegnare all'oggetto il valore 
Nothing. 
 | 
 
| 
 
OpenSchema
 
 | 
 
Ottiene informazioni sullo schema del database dal provider. 
Sintassi
 
Set recordset=connessione.OpenSchema( Tipo, Criteri, IDSchema )
 
Valori restituiti 
Restituisce un oggetto
Recordset che contiene le 
informazioni sullo schema. Il Recordset verra' aperto come 
cursore statico di sola lettura. 
Parametri 
- Tipo
 
Tipo di query di schema da eseguire. 
- Criteri  
 
Matrice di vincoli di query per ciascuna opzione Tipo dell'elenco
che segue (opzionale). 
- IDSchema  
 
GUID per una query di schema 'schema provider' non definito 
dalla specifica OLE DB. Tale parametro sara' obbligatorio se 
Tipo e' impostato su adSchemaProviderSpecific,
altrimenti non verra' utilizzato. 
 
| Tipo | 
Criteri | 
 
| adSchemaAsserts | 
CONSTRAINT_CATALOG 
CONSTRAINT_SCHEMA 
CONSTRAINT_NAME 
 | 
 
| adSchemaCatalogs | 
CATALOG_NAME
 | 
 
| adSchemaCharacterSets | 
CHARACTER_SET_CATALOG CHARACTER_SET_SCHEMA CHARACTER_SET_NAME
 | 
 
| adSchemaCheckConstraints | 
CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME
 | 
 
| adSchemaCollations | 
COLLATION_CATALOG COLLATION_SCHEMA COLLATION_NAME
 | 
 
| adSchemaColumnDomainUsage | 
DOMAIN_CATALOG DOMAIN_SCHEMA DOMAIN_NAME COLUMN_NAME
 | 
 
| adSchemaColumnPrivileges | 
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME 
COLUMN_NAME GRANTOR GRANTEE
 | 
 
| adSchemaColumns | 
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME
 | 
 
| adSchemaConstraintColumnUsage | 
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME
 | 
 
| adSchemaConstraintTableUsage | 
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME
 | 
 
| adSchemaForeignKeys | 
PK_TABLE_CATALOG PK_TABLE_SCHEMA PK_TABLE_NAME 
FK_TABLE_CATALOG FK_TABLE_SCHEMA FK_TABLE_NAME
 | 
 
| adSchemaIndexes | 
TABLE_CATALOG TABLE_SCHEMA INDEX_NAME 
TYPE TABLE_NAME
 | 
 
| adSchemaKeyColumnUsage | 
CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME 
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME
 | 
 
| adSchemaPrimaryKeys | 
PK_TABLE_CATALOG PK_TABLE_SCHEMA PK_TABLE_NAME
 | 
 
| adSchemaProcedureColumns | 
PROCEDURE_CATALOG PROCEDURE_SCHEMA 
PROCEDURE_NAME COLUMN_NAME
 | 
 
| adSchemaProcedureParameters | 
PROCEDURE_CATALOG PROCEDURE_SCHEMA 
PROCEDURE_NAME PARAMTER_NAME
 | 
 
| adSchemaProcedures | 
PROCEDURE_CATALOG PROCEDURE_SCHEMA 
PROCEDURE_NAME PARAMTER_TYPE
 | 
 
| adSchemaProviderSpecific | 
vedere Osservazioni
 | 
 
| adSchemaProviderTypes | 
DATA_TYPE BEST_MATCH
 | 
 
| adSchemaReferentialConstraints | 
CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME
 | 
 
| adSchemaSchemata | 
CATALOG_NAME SCHEMA_NAME SCHEMA_OWNER
 | 
 
| adSchemaSQLLanguages | 
nessuna
 | 
 
| adSchemaStatistics | 
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME
 | 
 
| adSchemaTableConstraints | 
CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME 
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME CONSTRAINT_TYPE
 | 
 
| adSchemaTablePrivileges | 
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME GRANTOR GRANTEE
 | 
 
| adSchemaTables | 
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE
 | 
 
| adSchemaTranslations | 
TRANSLATION_CATALOG TRANSLATION_SCHEMA TRANSLATION_NAME
 | 
 
| adSchemaUsagePrivileges | 
OBJECT_CATALOG OBJECT_SCHEMA OBJECT_NAME 
OBJECT_TYPE GRANTOR GRANTEE
 | 
 
| adSchemaViewColumnUsage  | 
VIEW_CATALOG VIEW_SCHEMA VIEW_NAME
 | 
 
| adSchemaViewTableUsage  | 
VIEW_CATALOG VIEW_SCHEMA VIEW_NAME
 | 
 
| adSchemaViews  | 
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME
 | 
 
 
Osservazioni
 
Il metodo OpenSchema restituisce informazioni sulla fonte dati, 
ad esempio informazioni sulle tabelle del server e le colonne delle 
tabelle. L'argomento Criteri e' una matrice di valori che possono 
essere utilizzati per limitare i risultati di una query di schema.
Ciascuna query di schema supporta un differente gruppo di parametri.
Gli schemi effettivi sono definiti dalla specifica OLE DB per 
l'interfaccia IDBSchemaRowset. Gli schemi supportati in ADO sono 
elencati piu' sopra. 
Se il provider definisce query di schema personalizzate non standard,
per l'argomento Tipo verra' utilizzata la costante
adSchemaProviderSpecific.
Quando questa costante viene utilizzata, e' richiesto l'argomento 
IDSchema per passare il GUID della query di schema da eseguire. 
Se Tipo e' impostato su
adSchemaProviderSpecific ma 
IDSchema non viene fornito, si verifichera' un errore. 
I provider non devono necessariamente supportare tutte le query 
di schema OLE DB standard:
adSchemaTables,
adSchemaColumns e
adSchemaProviderTypes sono 
infatti le uniche query di schema richieste dalla specifica OLE DB.
Il provider non deve supportare necessariamente i vincoli Criteri 
sopra elencati per queste query di schema. 
Utilizzo di Remote Data Service
 
Il metodo OpenSchema non e' disponibile su un oggetto Connection 
sul lato client.
 
 | 
 
 
 
 
 |