PRB: Dotaz SQL Distributed s způsobuje Oracle "nelze otevřít tabulku" Chyba

Překlady článku Překlady článku
ID článku: 240340 - Produkty, které se vztahují k tomuto článku.
Tento článek byl archivován. Je nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Příznaky

Při pokusu o použití dotazu s propojený server Oracle například pomocí zprostředkovatele OLE DB MSDAORA:
select * from OracleServer..demo.Product
				
může dojít k chybě podobné následujícím:
Server: Zpráva 7306, úroveň 16, 2, stav řádku 1
Nelze otevřít tabulku ' "Ukázka". "Produkt"' od 'MSDAORA zprostředkovatele OLE DB. Zadaná tabulka neexistuje.
[Zprostředkovatel OLE/DB vrátil zprávu: Zadaná tabulka neexistuje]
[Zprostředkovatel OLE/DB vrátil zprávu: ORA-00942: tabulku nebo zobrazení neexistuje]

Příčina

Dotaz nemusí fungovat kvůli rozlišování malých a velkých písmen v Oracle, protože SQL Server používá uvozovkách názvy při dodává dotazy na zprostředkovatele.

Jak potíže obejít

Při odkazování na tabulek propojený server Oracle, použijte následující pravidla:
  • Pokud názvy tabulky a sloupce byly vytvořeny v Oracle bez identifikátory v uvozovkách, použijte názvy všech velkých písmen. Například následující by měly fungovat OK:
    select * from OracleServer..DEMO.PRODUCT
    						
  • Pokud názvy tabulky a sloupce byly vytvořeny v Oracle s identifikátory v uvozovkách, použijte stejný případ pro všechny písmena názvy jako byla použita při názvy byly vytvořeny v Oracle.
Case-Sensitivity není problém, při použití funkce OtevřítDotaz nebo OpenRowset. Následující by měly fungovat OK:
SELECT * FROM OPENQUERY(OracleServer, 'select * from PrOdUct')
go
SELECT * FROM OPENRowset('MSDAORA', 'myOracleServer';'demo';'demo', 'select * from PrOdUct' )
go
				

Další informace

Microsoft SQL Server verze 7.0 poskytuje možnost provádět dotazy vůči zprostředkovatele OLE DB. To lze provést pomocí funkce OpenRowset Transact-SQL nebo OtevřítDotaz nebo pomocí dotazu s čtyři části názvy včetně názvu serveru propojen. Například:
sp_addlinkedserver 'mylinkedserver', 'product_name', 'myoledbprovider', 'data_source','location', 'provider_string', 'catalog'
SELECT * FROM OPENQUERY(mylinkedserver, 'select * from table1')
				

Kroky pro reprodukci tohoto chování

  1. Nastavit propojeného serveru Oracle Server:
    EXEC sp_addlinkedserver   'OracleServer',  'Oracle',  'MSDAORA',  'myOracleServer'
    go
    EXEC sp_addlinkedsrvlogin 'OracleServer', 'FALSE', NULL, 'demo', 'demo'
    go
    						
  2. Zadat název dotazu čtyř částí:
    SELECT * FROM OracleServer..demo.Product
    						
    jaký hlásí chyby popsané v části Příznaky.

Odkazy

Další informace na serveru SQL naleznete distribuovaných dotazy s zdroj dat Oracle SQL 7.0 Books Online téma "OLE DB Provider pro Oracle" a v následujících článcích znalostní báze Microsoft Knowledge Base:
220915PRB: Dotaz SQL Distributed s Oracle vyžaduje klienta Oracle

221552PRB: SQL Distributed dotaz s chybou uvádí NUMERIC sloupec Oracle

Vlastnosti

ID článku: 240340 - Poslední aktualizace: 28. února 2014 - Revize: 4.2
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft OLE DB Provider for Oracle Server 1.0
  • Microsoft OLE DB Provider for Oracle Server 1.0
  • Microsoft OLE DB Provider for Oracle Server 1.0
  • Microsoft OLE DB Provider for Oracle Server 1.0
  • Microsoft OLE DB Provider for Oracle Server 1.0
  • Microsoft SQL Server 2000 Standard Edition
Klíčová slova: 
kbnosurvey kbarchive kbmt kbdatabase kboracle kbprb KB240340 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:240340

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com