Oprava: CLR uložená procedura vrací NULL po je provedena nová kompilace v SQL Server 2008 R2 nebo SQL Server 2008

Překlady článku Překlady článku
ID článku: 2536225 - Produkty, které se vztahují k tomuto článku.
Společnost Microsoft distribuuje Microsoft SQL Server 2008 R2 nebo Microsoft SQL Server 2008 řeší jako jeden soubor ke stažení. Protože opravy jsou kumulativní a každá nová verze tedy obsahuje všechny opravy hotfix a opravit všechny opravy zabezpečení, které byly součástí předchozích SQL Server 2008 R2 nebo SQL Server 2008 release.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Příznaky

Zvažte následující scénář:
  • Microsoft SQL Server 2008 R2 nebo Microsoft SQL Server 2008 databázi vytvoříte společný postup language runtime (CLR) uloženy.
  • CLR uložené procedury je implementován jako veřejná statická metoda vrátí celočíselnou hodnotu Microsoft.NET Framework.
  • Spuštění aplikace, která volá proceduru CLR uloženy. CLR uložené procedury vrátí správnou hodnotu.
  • Provádění některých operací, které překompilovat plán vykonání CLR uložené procedury.

    Poznámka: Další informace o tom, jak Rekompilovat plán spuštění uložené procedury v části "Další informace".
  • Spuštění aplikace znovu.
V tomto scénáři CLR uložené procedury nesprávně vrací hodnotu NULL. Navíc je nutné restartování služby serveru SQL Server k obnovení z tohoto problému.

Řešení

Informace o kumulativní aktualizaci

SQL Server 2008 Service Pack 3

Oprava tohoto problému vydání kumulativní aktualizace 2 pro SQL Server 2008 Service Pack 3. Další informace o tomto balíčku kumulativní aktualizace klepněte na následující číslo článku:
2633143 Balíček kumulativní aktualizace 2 pro SQL Server 2008 Service Pack 3
Poznámka: Protože sestavení jsou kumulativní, každá nová verze oprava obsahuje všechny opravy hotfix a opravit všechny opravy zabezpečení, které byly součástí předchozích SQL Server 2008 release. Společnost Microsoft doporučuje zvážit použití nejnovější vydání oprava, která obsahuje opravy hotfix. Další informace získáte klepnutím na následující číslo článku:
2629969 Vytvoří SQL Server 2008, které byly vydány po vydání aktualizace Service Pack 3 pro SQL Server 2008
Opravy hotfix Microsoft SQL Server 2008 jsou vytvořeny pro konkrétní aktualizace service Pack pro SQL Server. K instalaci aktualizace Service Pack 3 pro SQL Server 2008, je třeba použít opravu hotfix serveru SQL Server 2008 Service Pack 3. Ve výchozím nastavení žádné opravy hotfix, která je k dispozici v aktualizaci service pack serveru SQL Server je součástí další aktualizaci service pack pro SQL Server.

Aktualizace Service Pack 1 pro SQL Server 2008 R2

Oprava tohoto problému vydání kumulativní aktualizace 2 pro aktualizaci Service Pack 1 pro SQL Server 2008 R2. Další informace o získání tohoto balíčku kumulativní aktualizace klepněte na následující číslo článku:
2567714 Kumulativní aktualizace 2 pro aktualizaci Service Pack 1 pro SQL Server 2008 R2
Poznámka: Protože sestavení jsou kumulativní, každá nová verze oprava obsahuje všechny opravy hotfix a opravit všechny opravy zabezpečení, které byly součástí předchozích SQL Server 2008 R2 release. Doporučujeme zvážit použití nejnovější vydání oprava, která obsahuje opravy hotfix. Další informace získáte klepnutím na následující číslo článku:
2567616 SQL Server 2008 R2 vytvoří vydané po aktualizaci Service Pack 1 pro SQL Server 2008 R2 byla vydána.

SQL Server 2008 R2

Oprava tohoto problému vydání kumulativní aktualizace 8. Další informace o získání tohoto balíčku kumulativní aktualizace pro SQL Server 2008 R2 klepnutím na následující číslo článku:
2534352 Kumulativní balíček aktualizace 8 pro SQL Server 2008 R2
Poznámka: Protože sestavení jsou kumulativní, každá nová verze oprava obsahuje všechny opravy hotfix a opravit všechny opravy zabezpečení, které byly součástí předchozích SQL Server 2008 R2 release. Doporučujeme zvážit použití nejnovější vydání oprava, která obsahuje opravy hotfix. Další informace získáte klepnutím na následující číslo článku:
981356 SQL Server 2008 R2 sestavení, které byly vydány po vydání serveru SQL Server 2008 R2

Další informace

Chcete-li znovu zkompilujte plán spuštění uložené procedury, proveďte následující operace:
  • Spustit DBCCFREEPROCCACHE prohlášení.
  • Tabulka nebo zobrazení spustíte jeden z následujících příkazů:
    • ALTER TABLE
    • ZMĚNIT ZOBRAZENÍ
  • Spusťte plán provádění, který změní nebo odstraní indexy.
  • Provádění Aktualizace statistické údaje, které jsou používány plán vykonání operace.

    Poznámka: Můžete spustit příkaz provést Aktualizace operace, nebo Aktualizace operaci lze provést automaticky.
  • Spustit sp_recompile prohlášení.
  • Proveďte mnoho změn klíče.

    Například pomocí uživatelského účtu, který aktualizuje tabulku, na který se odkazuje pomocí příkazu Spustit VLOŽIT nebo ODSTRANIT prohlášení.
  • Vložení nebo odstranění více řádků z tabulky, která obsahuje aktivační události.
  • Použít S KOMPILACE možnost spuštění uložené procedury.

Prohlášení

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části "Platí pro".

Odkazy

Další informace o modulu CLR uložené procedury na následujícím webu MSDN:
Obecné informace o modulu CLR uložené procedury

Další informace o dílčích modelů obsluhu pro SQL Server klepněte na následující číslo článku:
935897Dílčí Model obsluhy je k dispozici tým serveru SQL Server k doručení opravy hotfix nahlášených problémů
Další informace o schéma názvů pro aktualizace serveru SQL Server klepněte na následující číslo článku:
822499Nové schéma přidělování názvů balíčkům aktualizací softwaru Microsoft SQL Server pro
Další informace o terminologii aktualizace softwaru získáte klepnutím na následující číslo článku:
824684 Popis standardní terminologie používané při popisu aktualizací softwaru společnosti Microsoft

Vlastnosti

ID článku: 2536225 - Poslední aktualizace: 22. listopadu 2011 - Revize: 5.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Web
  • Microsoft SQL Server 2008 R2 Workgroup
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Workgroup
Klíčová slova: 
kbqfe kbfix kbexpertiseadvanced kbsurveynew kbmt KB2536225 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:2536225

Dejte nám zpětnou vazbu

 

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