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 2005, 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 2005, Microsoft SQL Server 2008 lub SQL Server 2008 R2 Release.

Objawy

Rozważ następujący scenariusz:

  • Uruchom pakiet Microsoft SQL Server 2005, Microsoft SQL Server 2008 lub SQL Server 2008 R2 Integration Services (SSIS) na komputerze, który ma jedno z następujących instalacji.NET Framework:

    • .NET Framework 2.0 z dodatkiem Service Pack 2 (SP2)

    • .NET Framework 3.5 z dodatkiem Service Pack 1 (SP1)

  • Pakietu SSIS używa sterownika ODBC innej firmy, który importuje dane znakowe.

Jednak po uruchomieniu pakietu SSIS pojawić następujące komunikaty o błędach:

[Źródło netto ADO [1424]] Błąd: Kod błędu SSIS — DTS_E_INDUCEDTRANSFORMFAILUREONERROR. "Składnik"Źródło netto ADO"(1424)" nie powiodło się, ponieważ wystąpił kod błędu 0x80131937, błąd Dyspozycja wiersza na "kolumna wyprowadzenia"columnname"(numer)" Określa awarii na błąd. Wystąpił błąd w określonym obiekcie określonego składnika. Mogą występować komunikaty o błędach zaksięgowane wcześniej to więcej informacji na temat błędu.

Błąd 0xc0209029: Dane przepływu zadań: "Składnik"NazwaSkładnika"(1)" nie powiodło się, ponieważ wystąpił błąd o kodzie 0x80131937...

[Źródło netto ADO [1424]] Błąd: Składnik "Źródło netto ADO" (1424) nie mógł przetwarzać dane. Składnik potoku zwrócił kod błędu HRESULT 0xC0209029 przez wywołanie metody.

[SSIS. Rurociąg] błąd: kod błędu SSIS DTS_E_PRIMEOUTPUTFAILED. Metoda na składnik "Źródło netto ADO" (1424) zwrócony kod błędu 0xC02090F5. Składnik zwrócił kod błędu, gdy silnik rurociąg o nazwie PrimeOutput(). Znaczenie kodu błędu jest zdefiniowana przez składnik, ale znajduje się błąd krytyczny i rurociąg przestał być wykonywany. Mogą występować komunikaty o błędach zaksięgowane wcześniej to więcej informacji na temat błędu.

Ten problem dotyczy sterowniki ODBC, które są dostępne z zarządzanego dostawcy ODBC, gdy spełnione są następujące warunki:

  • Funkcja ExecuteReader jest wywoływana przez parametr CommandBehavior.SequentialAccess . To wywołanie i parametr są używane w następujących okolicznościach:

    • Kiedy pakiet SQL Server 2005 SSIS odczytuje dane ze źródła elementu DataReader lub pakiet SQL Server 2008 SSIS odczytuje dane ze źródła danych ADO.NET zarządzanych.

    • Źródło danych nie jest skonfigurowany do przekierowania błędu i obcięcie wartości.

  • Funkcja OdbcDataReader.IsDbNull jest wywoływana. Pakietu SSIS używa tej metody do ustalenia, czy wartość w polu jest NULL.

  • Nazywa się jeden z następujących funkcji:

    • Funkcja OdbcDataReader.GetBytes jest wywoływana uzyskać pewne typy danych, takie jak DT_BYTES, z zarządzanego dostawcy ODBC.

    • Funkcja OdbcDataReader.GetChars jest wywoływana uzyskać pewne typy danych string, takich jak DT_WSTR, z zarządzanego dostawcy ODBC.

Przyczyna

.NET Framework 2.0 z dodatkiem SP2 oraz.NET Framework 3.5 z dodatkiem SP1 należy wprowadzić zmiany w zarządzanego dostawcy ODBC, w którym ciągi są odczytywane z macierzysty sterownik ODBC w scenariuszu, który jest opisany w sekcji "Symptomy". Z powodu tej zmiany zarządzanego dostawcy ODBC, która jest wywoływana w macierzysty sterownik ODBC za pomocą funkcji API SQLGetData używa bufor o rozmiarze 0. Sterowniki zgodne z ODBC nie mają problemy w to wywołanie. Jednak niezgodnych sterowników ODBC może się nie powieść w tych okolicznościach. Zgodny sterownik ODBC funkcja SQLGetData interfejsu API zwraca wartość SUCCESS_WITH_INFO, gdy bufor o rozmiarze 0 jest wykrywany. Dla niezgodnego sterownika ODBC wywołanie zwraca NO_DATA.

Rozwiązanie

Informacje o poprawce

Obsługiwana poprawka jest udostępniana przez firmę Microsoft. Jednak ta poprawka jest przeznaczona tylko do usunięcia problemu opisanego w tym artykule. Tylko w systemach, których dotyczy ten problem, należy zastosować tę poprawkę. Ta poprawka może być wciąż w fazie testowania. Jeśli dany system nie jest poważnie narażony na ten problem, firma Microsoft zaleca, aby poczekać na następną aktualizację oprogramowania zawierającą tę poprawkę.

Jeśli poprawka jest dostępna do pobrania, pojawi się sekcja "Poprawka dostępna do pobrania" na początku tego artykułu z bazy wiedzy Knowledge Base. Jeśli nie ma tej sekcji, skontaktuj się z Obsługą i Wsparciem Klienta Microsoft w celu uzyskania poprawki.

Uwaga Jeśli wystąpią dodatkowe błędy lub konieczność rozwiązania problemu, być może trzeba będzie utworzyć osobne zlecenie usługi. Zwykłe koszty obsługi będą zastosowane do dodatkowych pytań i problemów, których nie można rozwiązać przy użyciu określonej poprawki. Aby uzyskać pełną listę numerów telefonów działu obsługi klienta firmy Microsoft lub utworzyć osobne zlecenie usługi odwiedź następującą witrynę firmy Microsoft w sieci Web:

http://support.microsoft.com/contactus/?ws=supportUwaga "Poprawka dostępna do pobrania" zawiera listę języków, dla których dostępna jest poprawka. Jeśli odpowiedni język nie jest widoczny, to dlatego, że poprawka nie jest dostępna dla danego języka.

Wymagania wstępne

Musi mieć.NET Framework 2.0 z dodatkiem Service Pack 2.

Informacje dotyczące ponownego uruchamiania

Nie musisz ponownie uruchomiać komputera po zastosowaniu tej poprawki.

Informacje dotyczące rejestru

Nie masz zmiany w rejestrze.

Informacje o plikach poprawki

Ta poprawka zawiera tylko te pliki, które są wymagane do rozwiązania problemów wymienionych w tym artykule zamieszczono listę. Ta poprawka może nie zawierać wszystkich plików niezbędnych do pełnej aktualizacji produktu do nowszej kompilacji. Angielska wersja anglojęzyczna tej poprawki ma atrybuty plików (lub nowsze) wymienione w poniższej tabeli. Daty i godziny odpowiadające tym plikom zostały podane w formacie uniwersalnego czasu koordynowanego (UTC, Coordinated Universal Time). Po wyświetleniu informacji o pliku są konwertowane na czas lokalny. Aby zobaczyć różnicę między czasem UTC i czasem lokalnym, należy użyć z karty Strefa czasowa w aplecie Data i godzina w Panelu sterowania.

.NET Framework 2.0 dla systemu Windows 2000, Windows Server 2003, Windows XP, wersje 32-bitowe

Nazwa pliku

Wersja pliku

Rozmiar pliku

Data

Godzina

Platforma

System.data.dll

2.0.50727.4063

2,933,760

19-

05:08

x86

.NET Framework 2.0 dla systemu Windows 2000, Windows Server 2003, Windows XP, x64 wersje

Nazwa pliku

Wersja pliku

Rozmiar pliku

Data

Godzina

Platforma

System.data.dll

2.0.50727.4063

3,008,512

18-

23:51

x64

System.data.dll

2.0.50727.4063

2,933,760

19-

05:08

x86

.NET Framework 2.0 dla systemu Windows 2000, Windows Server 2003, wersje systemu Windows XP, IA-64

Nazwa pliku

Wersja pliku

Rozmiar pliku

Data

Godzina

Platforma

System.data.dll

2.0.50727.4063

2,933,760

19-

05:08

x86

System.data.dll

2.0.50727.4063

3,234,816

19-

01:09

IA-64

.NET Framework 2.0 dla systemu Windows Vista, Windows Server 2008, wersje 32-bitowe

Nazwa pliku

Wersja pliku

Rozmiar pliku

Data

Godzina

System.data.dll

2.0.50727.4400

2,933,760

10-Sep-2009

11:54

.NET Framework 2.0 dla systemu Windows Vista, Windows Server 2008, x64 wersje

Nazwa pliku

Wersja pliku

Rozmiar pliku

Data

Godzina

System.data.dll

2.0.50727.4400

3,008,512

10-Sep-2009

11:54

.NET Framework 2.0 dla systemu Windows Vista, Windows Server 2008, wersje IA-64

Nazwa pliku

Wersja pliku

Rozmiar pliku

Data

Godzina

System.data.dll

2.0.50727.4400

3,234,816

10-Sep-2009

11:54

Obejście problemu

Aby obejść ten problem, użyj jednej z następujących metod.

Metoda 1

Edycja pakietu SSIS, aby skonfigurować błąd i obcinania przekierowanie na źródło elementu DataReader lub w źródle danych ADO.NET zarządzanych. Po zakończeniu edycji pakietu SSIS, aby przekierować dane wyjściowe trafią do miejsca docelowego, pakiet zostanie uruchomiony pomyślnie, nawet jeśli żadne wiersze są zapisywane do miejsca docelowego. Aby to zrobić, wykonaj następujące kroki.

Uwaga Następujące kroki założono, że używasz programu SQL Server 2005 SSIS pakiet, który odczytuje dane ze źródła elementu DataReader.

  1. Otwórz pakietu SSIS w SQL Server Business Intelligence Development Studio.

  2. Otwórz okno dialogowe Zaawansowany edytor źródła elementu DataReader w Projektancie przepływu danych.

  3. Kliknij kartę dane wejściowe i wyjściowe właściwości , a następnie rozwiń węzeł Elementu DataReader wyjścia w drzewie wejść i wyjść .

  4. Rozwiń węzeł Kolumn wyjściowych .

  5. Kliknij przycisk każdej kolumny w węźle Kolumn wyjściowych , a następnie sprawdź właściwości typu danych . Dla każdej kolumny, których właściwość DataType jest DT_WSTR, DT_NTEXT, DT_BYTES lub DT_IMAGE, edytować następujące dwie właściwości:

    • Ustaw właściwość ErrorRowDisposition na RD_RedirectRow.

    • Ustaw właściwość TruncationRowDisposition na RD_RedirectRow.

  6. Kliknij przycisk OK , aby zapisać zmiany.

  7. W Projektancie przepływu danych dodawać nowe miejsce docelowe. Na przykład dodać płaski plik docelowy lub docelowego programu SQL Server.

  8. Użyj czerwona strzałka ze źródła elementu DataReader podłączyć go do nowo dodane miejsca docelowego. Tej operacji będzie bezpośrednie wierszy błędów i obcinania wierszy do miejsca docelowego, aby zapisać wierszy błędów.

  9. Powtórz kroki od 1 do 8 dla wszystkich zadań przepływu danych, które dostępu ODBC ciąg lub obraz kolumn i które zostały odrzucone z komunikatami o błędach, które są wymienione w sekcji "Symptomy".

Metoda 2

Odinstalowywanie programu.NET Framework 2.0 z dodatkiem SP2 lub.NET Framework 3.5 SP1. Zaleca się jednak odinstalowanie dodatku service pack, ponieważ zwiększa to niezawodność, ulepszenia funkcji i optymalizacji wydajności, które oferuje dodatek service pack.



Aby przywrócić system do stanu, w którym znajdował się przed zainstalowaniem programu.NET Framework 2.0 z dodatkiem SP2 lub.NET Framework 3.5 z dodatkiem SP1, wykonaj następujące kroki:

  1. W Panelu sterowania kliknij dwukrotnie ikonę Dodaj lub usuń programy.

  2. Zlokalizuj program Microsoft.NET Framework 3.5 z dodatkiem SP1, a następnie odinstaluj go.

  3. Zlokalizuj program Microsoft.NET Framework 3.0 z dodatkiem SP2, a następnie odinstaluj go.

  4. Zlokalizuj program Microsoft.NET Framework 2.0 z dodatkiem SP2, a następnie odinstaluj go.

  5. Ponowna instalacja oryginalnej wersji systemu.NET Framework 3.5. W tym kroku ponownie zainstaluje.NET Framework 2.0 z dodatkiem SP1 oraz.NET Framework 3.0 z dodatkiem SP1. Aby uzyskać programu.NET Framework 3.5, odwiedź następującą witrynę firmy Microsoft w sieci Web:

    http://www.microsoft.com/downloads/details.aspx?FamilyId=333325FD-AE52-4E35-B531-508D977D32A6&displaylang=en

Metoda 3

Skontaktuj się z dostawcą sterownika ODBC firm ustalenie, czy dostawca ma aktualizację sterownika rozwiązać ten problem.

Stan

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

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ę!

×