Open Database Connectivity ( ODBC ) è un framework che fornisce una Application Programming Interface ( API ) per consentire l'accesso indipendente dalla piattaforma per i dati memorizzati nei sistemi di database eterogenei . Livelli di isolamento delle transazioni preservare l'integrità dei dati nei sistemi di gestione di database attraverso il controllo dell'accesso ai dati simultaneo . È possibile accedere alla API ODBC direttamente attraverso diversi linguaggi di programmazione e applicazioni. ODBC consente di cinque livelli di isolamento delle transazioni : SQL_TXN_READ_UNCOMMITTED , SQL_TXN_READ_COMMITTED , SQL_TXN_REPEATABLE_READ , SQL_TXN_SERIALIZABLE e SQL_TXN_VERSIONING . I primi quattro limitare la concorrenza al fine di preservare l'integrità dei dati , mentre SQL_TXN_VERSIONING ha meno impatto sulla concorrenza . È possibile impostare il livello di isolamento utilizzando la funzione " SQLSetConnectAttr " nella fase iniziale del programma . Cose che ti serviranno
driver ODBC installati
Linguaggio di programmazione editor di base di dati
Show More Istruzioni
Configurazione
1
Avviare il linguaggio di applicazione editor di programmazione cliccando su " . Start" selezionare " Tutti i programmi ", quindi selezionare l' applicazione dal menu
2
Avviare un nuovo progetto selezionando - . sotto il menu " File " - "Nuovo" e "Progetto ". Si potrebbe quindi scegliere il tipo di progetto richiesto dalle opzioni . Per Visual C o Visual Basic, si potrebbe scegliere " Applicazione Windows ".
3
Digitare un nome per il progetto e fare clic su "Salva ".
Process + +
4
assegnare le maniglie richiesti. Innanzitutto è necessario inizializzare l'ambiente ODBC e destinare l' handle di ambiente prima di poter effettuare una qualsiasi chiamata a elementi della API ODBC . È necessario dichiarare una variabile di tipo " SQLHENV " o " SQLHANDLE " a seconda del linguaggio di programmazione , e passarlo alla funzione " SQLAllocHandle " . Secondo MSDN , la sintassi corretta è :
SQLRETURN SQLAllocHandle ( SQLSMALLINT HandleType , SQLHANDLE InputHandle , SQLHANDLE * OutputHandlePtr ) ;
Per esempio , questo è come si potrebbe implementare in Visual C + + :
SQLHANDLE OdbcEnvironmentVariable ;
SQLRETURN SQLReturnVariable ;
SQLReturnVariable = SQLAllocHandle ( SQL_HANDLE_ENV , SQL_NULL_HANDLE , e OdbcEnvironmentVariable ) ;
5
l' ambiente richiesto attributi. È necessario impostare l'attributo ambiente ODBC utilizzando la funzione SQLSetEnvAttr ( ) . Questo dirà l'applicazione quale versione di ODBC che si sta utilizzando . La sintassi è :
SQLRETURN SQLSetEnvAttr ( SQLHENV EnvironmentHandle , SQLINTEGER Attributo , SQLPOINTER ValuePtr , SQLINTEGER StringLength ) ;
Per esempio , per impostare l'ambiente per ODBC 3.0 utilizzando Visual C + + , è necessario digitare :
SQLReturnVariable = SQLSetEnvAttr ( OdbcEnvironmentVariable , SQL_ATTR_ODBC_VERSION , ( SQLPOINTER ) SQL_OV_ODBC3 , SQL_IS_INTEGER ) ;
6
Allocare l'handle di connessione . È necessario impostare un handle di connessione per consentire all'applicazione di connettersi al database . È necessario dichiarare una variabile di tipo " SQLHDBC " o " SQLHANDLE " e passare alla funzione " SQLAllocHandle " con un " HandleType " di Per esempio :
SQLHANDLE DBConnectionHandle ;
< " SQL_HANDLE_DBC . " p > SQLReturnVariable = SQLAllocHandle ( SQL_HANDLE_DBC , OdbcEnvironmentVariable , e DBConnectionHandle ) economici 7
stabilire un collegamento e impostare gli attributi di connessione . È possibile impostare il livello di isolamento della transazione , a questo punto , utilizzando la funzione " SQLSetConnectAttr " . La sintassi è :
SQLRETURN SQLSetConnectAttr ( SQLHDBC ConnectionHandle , SQLINTEGER Attributo , SQLPOINTER ValuePtr , SQLINTEGER StringLength ) ;
Si imposta il " attributo " a " SQL_ATTR_TXN_ISOLATION " e il " ValuePtr " per SQL_TXN_READ_UNCOMMITTED , SQL_TXN_READ_COMMITTED , SQL_TXN_REPEATABLE_READ o SQL_TXN_SERIALIZABLE , a seconda del livello di isolamento richiesto. Per esempio :
SQLReturnVariable = SQLSetConnectAttr ( DBConnectionHandle , SQL_ATTR_TXN_ISOLATION , SQL_TXN_READ_UNCOMMITTED , 0 ) ;