Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Firma Microsoft rozpowszechnia Microsoft SQL Server 2008 i Microsoft SQL Server 2008 R2 ustala się jako jeden plik do pobrania. Ponieważ poprawki są zbiorcze, każde nowe wydanie zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały dołączone do poprzedniego programu SQL Server 2008 lub SQL Server 2008 R2 Release.

Symptomy

Rozpatrzmy następujący scenariusz:

  • Można utworzyć procedurę przechowywaną w Microsoft SQL Server 2008 lub Microsoft SQL Server 2008 R2.

  • Procedura składowana używa zmiennej dużego obiektu binarnego (BLOB).

  • Zmienna obiektu BLOB jest używana funkcja ciąg.

  • Wykonanie procedury przechowywanej.

W tym scenariuszu nie jest buforowany plan kwerend dla procedury przechowywanej.

Rozwiązanie

Informacje dotyczące zbiorczej aktualizacji

Dodatek Service Pack 1 dla programu SQL Server 2008

Poprawkę dotyczącą tego problemu został wydany w 10 aktualizacja zbiorcza dla dodatku Service Pack 1 dla programu SQL Server 2008. Aby uzyskać więcej informacji na temat tego pakietu aktualizacji zbiorczej kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

2279604 Pakiet aktualizacji zbiorczej 10 dla dodatku Service Pack 1 dla programu SQL Server 2008Uwaga Ponieważ są zbiorcze, każde nowe wydanie zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały dołączone do poprzedniego programu SQL Server 2008 Release. Firma Microsoft zaleca, aby rozważyć zastosowanie najnowszej wersji poprawki, zawierający tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

970365 SQL Server 2008 buduje wydane po wydaniu dodatku Service Pack 1 dla programu SQL Server 2008 Microsoft SQL Server 2008 poprawki są tworzone dla określonych dodatków service Pack dla programu SQL Server. Do instalacji programu SQL Server 2008 z dodatkiem Service Pack 1, należy zastosować poprawkę dodatku Service Pack 1 dla programu SQL Server 2008. Domyślnie wszystkie poprawki, która jest dostępna w dodatku service pack dla programu SQL Server znajduje się w następnym dodatku service pack dla programu SQL Server.

Dodatek Service Pack 2 dla programu SQL Server 2008

Poprawkę dotyczącą tego problemu został wydany w zbiorczej aktualizacji 1 dla programu SQL Server 2008 Service Pack 2. Aby uzyskać więcej informacji na temat tego pakietu aktualizacji zbiorczej kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

2289254 Zbiorcza aktualizacja 1 dla dodatku Service Pack 2 dla programu SQL Server 2008Uwaga Ponieważ są zbiorcze, każde nowe wydanie zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały dołączone do poprzedniego programu SQL Server 2008 Release. Firma Microsoft zaleca, aby rozważyć zastosowanie najnowszej wersji poprawki, zawierający tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

2402659 SQL Server 2008 buduje wydane po wydaniu dodatku Service Pack 2 dla programu SQL Server 2008

Program SQL Server 2008 R2

Poprawkę dotyczącą tego problemu najpierw została wydana w zbiorczej aktualizacji 4. Aby uzyskać więcej informacji dotyczących sposobu uzyskiwania tego pakietu aktualizacji zbiorczej dla programu SQL Server 2008 R2 kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

2345451 Skumulowany pakiet aktualizacji 4 dla programu SQL Server 2008 R2 Uwaga Ponieważ są zbiorcze, każde nowe wydanie zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały dołączone do poprzedniego programu SQL Server 2008 R2 Release. Firma Microsoft zaleca, aby rozważyć zastosowanie najnowszej wersji poprawki, zawierający tę poprawkę. Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

981356 SQL Server 2008 R2 buduje wydane po wydaniu programu SQL Server 2008 R2

Stan

Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji „Dotyczy”.

Więcej informacji

Aby odtworzyć ten problem, wykonaj następujące kroki:

  1. Uruchom poniższy kod, aby utworzyć dwie procedury przechowywane ("p_test1" i "p_test2"). Użyto zmiennej obiektu BLOB, "P_test1" i "p_test2" używa zmiennej nvarchar(100).use tempdbgoif OBJECT_ID('p_test1') is not null drop proc p_test1if OBJECT_ID('p_test2') is not null drop proc p_test2gocreate proc p_test1@s nvarchar(max)asbeginselect * from sys.objects where name = UPPER(@s)endgocreate proc p_test2@s nvarchar(100)asbeginselect * from sys.objects where name = UPPER(@s)endgo

  2. Uruchom poniższy kod, aby wyczyścić pamięć podręczna procedury i wykonać dwie procedury przechowywane:dbcc freeproccachegoexec p_test1 N'abc'exec p_test2 N'abc'go

  3. Uruchom poniższy kod, aby sprawdzić buforowanego planu: select object_name(CONVERT(int, a.value)), cp.*from sys.dm_exec_cached_plans cpcross apply sys.dm_exec_plan_attributes(cp.plan_handle) awhere cp.objtype = 'Proc'and a.attribute = 'objectid'

Uwaga: W przypadku wielu jednoczesnych egzekucji tego rodzaju procedura przechowywana programu Microsoft SQL Server 2008 lub wystąpienie programu Microsoft SQL Server 2008 R2, mogą wystąpić blokowanie powodowanego przez blokady compile na wystąpienie. Aby uzyskać więcej informacji dotyczących opisu programów SQL Server blokuje spowodowane przez blokady compile zobacz następujący artykuł z bazy wiedzy Microsoft Knowledge Base:

263889 Opis programu SQL Server blokuje spowodowane blokadami kompilacji

Informacje

Aby uzyskać więcej informacji na temat funkcji łańcuchowych (Transact-SQL) odwiedź następujące witryny firmy Microsoft:

Funkcje tekstowe (Transact-SQL)Aby uzyskać więcej informacji o przyrostowych modelu obsługi programu SQL Server kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

935897 Przyrostowe modelu obsługi jest dostępne z zespołu programu SQL Server do dostarczania poprawki dla problemów zgłoszonychAby uzyskać więcej informacji na temat schematu nazewnictwa dla aktualizacji programu SQL Server kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

822499Nowy schemat nazewnictwa dla pakietów aktualizacji oprogramowania Microsoft SQL ServerAby uzyskać więcej informacji dotyczących terminologii aktualizacji oprogramowania, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

824684 Opis standardowej terminologii używanej do opisywania aktualizacji oprogramowania firmy Microsoft

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×