KB2658474 — Poprawka: nieprawidłowe wyniki, gdy metoda sqlnetconnection. GetSchema pobiera informacje o schemacie tabeli w programie SQL Server 2008, w programie SQL Server 2008 R2 lub SQL Server 2012

Firma Microsoft rozpowszechnia pakiet Microsoft SQL Server 2008 z dodatkiem Service Pack 3 (SP3), Microsoft SQL Server 2008 R2 lub Microsoft SQL Server 2012 w postaci jednego pliku do pobrania. Ponieważ poprawki są kumulatywne, każda nowa wersja zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały uwzględnione w poprzednim dodatku SQL Server 2008 Service Pack 3 (SP3), SQL Server 2008 R2 lub SQL Server 2012 rozwiązanie.

Symptomy

Załóżmy, że masz aplikację kliencką, która używa metody SqlConnection. GetSchema w celu pobrania informacji o schemacie tabeli. Ta tabela zawiera nazwę kolumny zawierającą kropkę (.). Na przykład jedna z nazw kolumn w tabeli to "Kolumna1. A". W takiej sytuacji brakuje kolumny, której nazwa zawiera kropkę, w wynikach, które zwraca metoda sqlnetconnection. GetSchema .Uwaga Ten problem nie występuje, gdy jest używana metoda OleDbConnection. GetSchema .

Przyczyna

Aby ocenić uprawnienia dla kolumn, dodatek Service Pack 1 do programu SQL Server 2008 używa funkcji HAS_PERMS_BY_NAME zamiast funkcji uprawnień w widoku system sys.spt_columns_view_managed . Jeśli jednak nazwa kolumny zawiera kropkę i nie jest uwzględniona w funkcji cytat , funkcja HAS_PERMS_BY_NAME uzna, że użytkownik nie ma wystarczających uprawnień dla tej kolumny. Dlatego występuje problem opisany w sekcji "Symptomy".

Rozwiązanie

Informacje o aktualizacji zbiorczej

SQL Server 2008 R2 z dodatkiem Service Pack 2

Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 1 dla programu SQL Server 2008 R2 z dodatkiem Service Pack 2. Aby uzyskać więcej informacji na temat sposobu uzyskiwania tego zbiorczego pakietu aktualizacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

2720425 Pakiet aktualizacji zbiorczej 1 dla programu SQL Server 2008 R2 z dodatkiem Service Pack 2Uwaga Ponieważ kompilacja jest zbiorcza, każdy nowy pakiet poprawek zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń dołączone do poprzedniej wersji poprawki SQL Server 2008 R2. Zalecamy zastosowanie najnowszego wydania poprawki zawierającego 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:

2730301 Kompilacja programu SQL Server 2008 R2 opublikowanych po wydaniu programu SQL Server 2008 R2 z dodatkiem Service Pack 2

Program SQL Server 2012

Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 2 dla programu SQL Server 2012. Aby uzyskać więcej informacji na temat tego zbiorczego pakietu aktualizacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

2703275 Pakiet aktualizacji zbiorczej 2 dla programu SQL Server 2012Uwaga Ponieważ kompilacja jest zbiorcza, każdy nowy pakiet poprawek zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które zostały dołączone do poprzedniej wersji poprawki SQL Server 2012. Firma Microsoft zaleca zastosowanie najnowszego wydania poprawki zawierającego 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:

2692828 Kompilacje programu SQL Server 2012 wydane po wydaniu programu SQL Server 2012 Musisz zastosować poprawkę SQL Server 2012 do instalacji programu SQL Server 2012.

SQL Server 2008 R2 z dodatkiem Service Pack 1

Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 7 dla programu SQL Server 2008 R2 z dodatkiem Service Pack 1. Aby uzyskać więcej informacji na temat sposobu uzyskiwania tego zbiorczego pakietu aktualizacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

2703282 Pakiet aktualizacji zbiorczej 7 dla programu SQL Server 2008 R2 z dodatkiem Service Pack 1Uwaga Ponieważ kompilacja jest zbiorcza, każdy nowy pakiet poprawek zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń dołączone do poprzedniej wersji poprawki SQL Server 2008 R2. Zalecamy zastosowanie najnowszego wydania poprawki zawierającego 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:

2567616 Kompilacje programu SQL Server 2008 R2, które zostały wydane po opublikowaniu dodatku Service Pack 1 dla programu SQL Server 2008 R2

SQL Server 2008 R2

Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 13. Aby uzyskać więcej informacji na temat sposobu uzyskiwania tego zbiorczego pakietu aktualizacji 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:

2679366 Pakiet aktualizacji zbiorczej 13 dla programu SQL Server 2008 R2 Uwaga Ponieważ kompilacja jest zbiorcza, każdy nowy pakiet poprawek zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń dołączone do poprzedniej wersji poprawki SQL Server 2008 R2. Zalecamy zastosowanie najnowszego wydania poprawki zawierającego 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 Kompilacje programu SQL Server 2008 R2, które zostały wydane po opublikowaniu programu SQL Server 2008 R2

Pakiet aktualizacji zbiorczej 4 dla programu SQL Server 2008 z dodatkiem SP3

Poprawka dotycząca tego problemu została wydana po raz pierwszy w aktualizacji zbiorczej 4. Aby uzyskać więcej informacji na temat sposobu uzyskiwania tego zbiorczego pakietu aktualizacji dla programu SQL Server 2008 z dodatkiem Service Pack 4, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

2673383 Pakiet aktualizacji zbiorczej 4 dla programu SQL Server 2008 z dodatkiem Service Pack 3Uwaga Ponieważ kompilacja jest zbiorcza, każdy nowy pakiet poprawek zawiera wszystkie poprawki i wszystkie poprawki zabezpieczeń, które uwzględniono w poprzedniej wersji programu SQL Server 2008 z dodatkiem Service Pack 4. Zalecamy zastosowanie najnowszego wydania poprawki zawierającego 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:

2629969 Kompilacje programu SQL Server 2008 wydane po opublikowaniu dodatku Service Pack 3 dla programu SQL Server 2008

Więcej informacji

Aby uzyskać więcej informacji na temat metody SqlConnection. GetSchema , odwiedź następującą witrynę MSDN w sieci Web:

Ogólne informacje na temat metody sqlnetconnection. GetSchema

Stan

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

Potrzebna dalsza pomoc?

Rozwijaj swoje umiejętności
Poznaj szkolenia
Uzyskuj nowe funkcje w pierwszej kolejności
Dołącz do niejawnych testerów firmy Microsoft

Czy te informacje były pomocne?

Dziękujemy za opinię!

Dziękujemy za opinię! Wygląda na to, że połączenie Cię z jednym z naszych agentów pomocy technicznej pakietu Office może być pomocne.

×