Guida di MicroStation CONNECT Edition

Interfaccia di database OLE DB

L'interfaccia OLE DB fornisce un accesso aperto ai dati e utilizza un insieme standard di interfacce COM per accedere e manipolare molti tipi di dati. Le interfacce OLE DB possono accedere a database relazionali o semplici database di dati. Questo consente l'accesso a dati a cui con l'attuale tecnologia ODBC non si potrebbe accedere.

L'elenco seguente riporta i provider OLE DB supportati:

Provider OLE DB supportati
Provider Microsoft Jet 3.51 OLE DB
Provider Microsoft Jet 4.0 OLE DB
Provider Oracle per OLE DB
Provider Microsoft OLE DB per SQL Server
Nota: Nonostante Microsoft supporti anche un provider OLE DB per Oracle, Bentley consiglia l'uso di un provider fornito da Oracle.

I database seguenti sono supportati con un collegamento OLE DB:

Database supportati con un collegamento OLE DB
Access 97
Access 2000
Oracle 9i
Oracle 10g
Oracle 11g
SQL Server 2000
La tabella SQL Server esegue il bloccaggio dei livelli della tabella. Questo può portare il database e MicroStation in una situazione di deadlock. Ad esempio, questo si può verificare nel seguente scenario:
  1. La modalità di applicazione Auto è impostata su off (SESSION AUTOCOMMIT OFF).
  2. Un record viene inserito nella tabella del database utilizzando la Finestra SQL.
  3. Viene eseguita un'interrogazione della stessa tabella utilizzando VSQL o un'altra applicazione del database MDL.

Queste condizioni bloccheranno MicroStation poiché rimarrà in attesa di un ritorno dal database. SQL Server sarà inoltre in una situazione di deadlock in attesa dell'istruzione Insert.

Per risolvere questo problema, è possibile eseguire una lettura dirty o uncommitted della tabella. Questo consente al database di leggere dal database i record non applicati. Tuttavia, questi record potrebbero essere eliminati se si eseguisse il rollback della transazione originale. L'impostazione di MS_OLEDBUNCOMMITTEDREAD evita la situazione di deadlock, ma implica il rischio di perdere i record.