Oprava: "Neplatný název objektu" Chyba při aktualizaci uložená procedura v jiné databázi


Příznaky


Je vrácena následující chyba, kde je název objektu název tabulky, kterou chcete aktualizovat:
Neplatný název objektu název objektu
Této chybě dochází při splnění následujících podmínek:
  • SQL Server uložené procedury v jedné databázi, který vybere záznamy z tabulky v jiné databázi existuje.
  • Výsledná sada záznamů se vrátí do aplikace nebo služby.
  • Této sady záznamů je pak předán out-of-process jako odpojené sadu záznamů ADO (ActiveX Data Objects) do jiné aplikace klienta.
  • Je proveden pokus o aktualizaci odpojené sady záznamů.

Pokud sada záznamů je nikdy zařazen mimo proces, ale je dodávána přímo do procesu, který se pokouší aktualizovat ji, bude úspěšné příkazu Aktualizovat .

Příčina


Remoting část ADO (Msdaprst.dll) je neúmyslně přepisování částí metadata obsažené v sadě záznamů. Při vytváření následně příkazu UPDATE , tato metadata není k dispozici a je generována nesprávná syntaxe.

Zkoumání trasovací protokoly ukazují, že database.owner.tablename správné syntaxe byla použita při výběru záznamů, ale pouze název tabulky byla použita při vytváření příkazu UPDATE .

Protože připojení aktuálně odkazuje na databázi obsahující uloženou proceduru a tabulka neexistuje v databázi, jsou vráceny chyby "Neplatný název objektu".

Řešení


Podporovaná oprava je nyní k dispozici od společnosti Microsoft, ale je určena pouze k odstranění problému popsaného v tomto článku. Použijte ji pouze u počítačů, ve kterých dochází k tomuto konkrétnímu problému. Tato oprava pravděpodobně projde dalším testováním. Proto pokud jste závažně tento problém, společnost Microsoft doporučuje počkat další aktualizaci service pack pro Microsoft Data Access, která obsahuje tuto opravu hotfix.

Chcete-li tento problém vyřešit okamžitě, obraťte se na služby technické podpory pro tuto opravu získat. Úplný seznam telefonních čísel služeb technické podpory společnosti Microsoft a informace o cenách podpory naleznete na následujícím webu společnosti Microsoft:Poznámka: ve zvláštních případech mohou být stornovány poplatky, které jsou třeba obvykle zaplatit za telefonní hovory, pokud pracovník služeb podpory společnosti Microsoft určí, že konkrétní aktualizace odstraní váš problém. Náklady typické podporu použije dalších otázek a problémů, které nelze vyřešit konkrétní aktualizací.

Anglická verze této opravy má následující atributy souborů nebo novější:
   Date              Version      Size    File name      
-----------------------------------------------------
7/22/99 2.10.4321 203KB msdaprst.dll




Stav


Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti uvedených na začátku tohoto článku.

Tento problém byl opraven v součástech MDAC 2.5.

Nejnovější verzi Microsoft Data Access Components (MDAC) naleznete na následujícím webu společnosti Microsoft:

Další informace





DŮLEŽITÉ!

Není doporučeno nainstalovat tuto opravu hotfix v počítači, který je aktuálně spuštěn MDAC 2.1 SP2 (verze 2.12.4202) nebo novější. Tuto opravu hotfix lze používat pouze s počítačích spuštěn MDAC 2.1 SP1 (verze 2.10.3711) nebo starší.

Za účelem zmírnění problémů fragmentace paměti, byly provedeny změny významné kód mezi MDAC 2.1 SP1 a MDAC 2.1 SP2. Zatímco se neočekává žádné závažné chyby dojít, pokud tato oprava hotfix platí pro součásti MDAC 2.1 SP2, což je důrazně se nedoporučuje.

Samostatná oprava hotfix neexistuje řešení tohoto problému v aktualizaci SP2 MDAC 2.1.

Naleznete v části odkazy tohoto článku pro další informace.

Ruční instalace

  1. Zavření nebo zastavení aplikací nebo služeb, které používají Msdaprst.dll. To může zahrnovat Internet Information Server (IIS), Microsoft Transaction Server (MTS), Microsoft koordinátor DTC (Distributed Transaction) a všechny aplikace rozhraní ADO nebo OLE DB.
  2. Stáhněte verzi opravy hotfix Msdaprst.dll do dočasné složky.
  3. Vyhledejte a přejmenujte aktuální verzi Msdaprst.dll, která by měla být ve složce \Program Files\Common files\System\msadc.
  4. Zkopírujte verzi opravy hotfix Msdaprst.dll do stejného umístění a restartování služeb a aplikací.


Důležité upozornění pro uživatele systému Microsoft Windows 95/98

Pokud instalujete tuto opravu do počítače se systémem Windows 95 nebo počítač v původní verzi systému Windows 98, může být nutné nainstalovat knihovny DLL systému Windows 98 přenesení součástí této opravy.

Poznámka: čtení souboru Migrate_qfe.txt, který je obsažen v souboru Migration.exe součástí stahování.



ODKAZY


Informace o této opravě hotfix jako platí pro součásti MDAC 2.1 SP2, naleznete v následujícím článku znalostní báze Microsoft Knowledge Base nalezen:

238092 neplatný objekt název chyby při aktualizaci pomocí uložená procedura v jiné databázi


Další informace o odkazované výše problém fragmentace paměti naleznete v následujícím článku znalostní báze Microsoft Knowledge Base nalezen::
230101 data dotazů sporadicky vrací prázdné sady záznamů