Provider Microsoft OLE DB per Oracle (Motore di database)
Il provider Microsoft OLE DB per Oracle consente l'esecuzione di query distribuite sui dati di database Oracle.
Per creare un server collegato per l'accesso a un'istanza di un database Oracle
Assicurarsi che il livello del software client Oracle nel server che esegue SQL Server corrisponda al livello richiesto dal provider. Per eseguire il provider Microsoft OLE DB per Oracle sono necessari Oracle Client Software Support File versione 7.3.3.4.0 o successiva e SQL*Net versione 2.3.3.0.4.
Nel server che esegue SQL Server, creare un nome alias SQL*Net che punta a un'istanza del database Oracle. Per ulteriori informazioni, vedere la documentazione di Oracle.
Eseguire sp_addlinkedserver per creare il server collegato, specificando
MSDAORA
come provider_name e il nome alias SQL*Net per l'istanza del database come data_ source.Nell'esempio seguente si presume che sia stato definito il nome alias SQL*Net come
OracleDB
.sp_addlinkedserver 'OrclDB ','Oracle',' MSDAORA','OracleDB'
Utilizzare sp_addlinkedsrvlogin per creare mapping degli account di accesso dagli account di accesso di SQL Server agli account di accesso di Oracle.
Nell'esempio seguente viene eseguito il mapping tra l'account di accesso di SQL Server
Joe
e il server collegato definito nel passaggio 3 utilizzando l'account di accessoOrclUsr
e la passwordOrclPwd
di Oracle:sp_addlinkedsrvlogin 'OrclDB', false, 'Joe', 'OrclUsr', 'OrclPwd'
Ogni istanza di un database Oracle include un solo catalogo con un nome vuoto. Per fare riferimento alle tabelle di un server collegato Oracle, è necessario utilizzare un nome in quattro parti nel formato OracleLinkedServerName**..OwnerUserName.**TableName. Ad esempio, l'istruzione SELECT
seguente fa riferimento alla tabella SALES
il cui proprietario è l'utente di Oracle MARY
nel server mappato al server collegato OrclDB
:
SELECT *
FROM OrclDB..MARY.SALES
Per fare riferimento alle tabelle di un server collegato Oracle, è necessario rispettare le regole seguenti:
- Se i nomi della tabella e delle colonne sono stati creati in Oracle senza identificatori tra virgolette, specificare tutti i nomi in lettere maiuscole.
- Se i nomi della tabella e delle colonne sono stati creati in Oracle con identificatori tra virgolette, specificare i nomi con la stessa combinazione di maiuscole e minuscole con cui sono stati definiti in Oracle.
- Nelle istruzioni INSERT è necessario specificare valori per tutte le colonne di una tabella, anche per colonne NULL o con valori predefiniti.
Voci del Registro di sistema
Per consentire l'utilizzo del provider OLE DB per Oracle con il software client Oracle, è necessario modificare il Registro di sistema del client eseguendo un file del Registro di sistema da una riga di comando. È consigliabile non eseguire più istanze del software client contemporaneamente. Nella tabella seguente vengono elencati i file del Registro di sistema, disponibili nella stessa struttura di directory in cui sono archiviati i file di installazione di Microsoft Data Access Components (MDAC), normalmente C:\Programmi\File comuni\System\OLE DB.
Client Oracle | Windows NT o 9x | Windows 2000 |
---|---|---|
7.x |
mtxoci7x_winnt.reg |
mtxoci7x_win2k.reg |
8.0 |
mtxoci80_winnt.reg |
mtxoci80_win2k.reg |
8.1 |
mtxoci81_winnt.reg |
mtxoci81_win2k.reg |
Vedere anche
Concetti
Query distribuite
Provider OLE DB testati con SQL Server