Oprava: Chybová zpráva při spuštění balíčku SQL Server 2005, SQL Server 2008 nebo SQL Server 2008 R2 Integration Services (SSIS) po instalaci rozhraní.NET Framework 2.0 SP2 nebo rozhraní.NET Framework 3.5 SP1: "ADO NET zdroj [1424]"

Společnost Microsoft distribuuje Microsoft SQL Server 2005, Microsoft SQL Server 2008 a Microsoft SQL Server 2008 R2 řeší jako jeden soubor ke stažení. Protože jsou kumulativní opravy, 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 2005, Microsoft SQL Server 2008 nebo SQL Server 2008 R2 release.

Příznaky

Jde o takovouto situaci:
  • Spuštění balíčku Microsoft SQL Server 2005, Microsoft SQL Server 2008 nebo SQL Server 2008 R2 Integration Services (SSIS) v počítači, který má jednu z následujících instalací rozhraní.NET Framework:
    • Rozhraní.NET Framework 2.0 Service Pack 2 (SP2)
    • Rozhraní.NET Framework 3.5 Service Pack 1 (SP1)
  • Direktivy SSI balíček používá ovladač ODBC od jiného výrobce, že dovozy znaková data.
Však při spuštění balíčku SSIS zobrazit následující chybové zprávy:
[ADO NET zdroj [1424]] Chyba: SSIS chyba kód DTS_E_INDUCEDTRANSFORMFAILUREONERROR. "Složkou"ADO NET zdroj"(1424)" se nezdařilo, protože došlo k chybě kódu 0x80131937 a dispozice řádek chyba na "výstupní sloupec"Název_sloupce"(číslo)" Určuje selhání při chybě. Na zadaný objekt zadané součásti došlo k chybě. Mohou existovat chybové zprávy, které jsou zaúčtovány před tím s dalšími informacemi o chybě.

Chyba 0xc0209029: Datový tok úkolů: "Komponenta"součásti"(1)" se nezdařilo, protože došlo k chybě kódu 0x80131937...

[ADO NET zdroj [1424]] Chyba: Součást "ADO NET zdroj" (1424) se nepodařilo zpracovat data. Komponenta příležitosti vrátil kód chyby HRESULT 0xC0209029 z volání metody.

[SSIS. Kanál] Chyba: kód chyby SSIS DTS_E_PRIMEOUTPUTFAILED. Metoda PrimeOutput na součást "ADO NET zdroj" (1424) vrátilo kód chyby 0xC02090F5. Součást vrátil kód chyby při PrimeOutput() potrubí motoru. Je definován význam kódu chyby komponenty, ale chyba je závažná a potrubí zastavit provádění. Mohou existovat chybové zprávy, které jsou zaúčtovány před tím s dalšími informacemi o chybě.
Tento problém se týká ovladače rozhraní ODBC, které jsou přístupné ze spravovaného zprostředkovatele ODBC, pokud jsou splněny následující podmínky:
  • ExecuteReader funkce je volána CommandBehavior.SequentialAccess parametr. Toto volání a parametr slouží za následujících okolností:
    • Pokud balíček direktivy SSI serveru SQL Server 2005 čte data z objektu DataReader zdroje nebo SQL Server 2008 SSIS balíček čte data z spravované zdroje dat ADO.NET.
    • Není zdroj dat nakonfigurován k přesměrování chyb a zkrácení hodnoty.
  • OdbcDataReader.IsDbNull funkce je volána. Direktivy SSI balíček používá tuto metodu, chcete-li zjistit, zda je hodnota v poli hodnotu NULL nebo není.
  • Jeden z následujících funkcí se nazývá:
    • Funkce OdbcDataReader.GetBytes nazývá určité typy dat, například DT_BYTES, získat od poskytovatele spravované ODBC.
    • Funkce OdbcDataReader.GetChars nazývá určité typy dat řetězec, například DT_WSTR, získat od poskytovatele spravované ODBC.

Příčina

Rozhraní.NET Framework 2.0 SP2 a rozhraní.NET Framework 3.5 SP1 zavádí změnu spravovaného zprostředkovatele ODBC, podle kterého jsou číst řetězce z nativní ovladače ODBC v situaci, která je popsána v části "Příznaky". Vzhledem k této změně používá spravovaného zprostředkovatele ODBC, která je volána pro nativní ovladače ODBC, pomocí rozhraní API funkce SQLGetData vyrovnávací paměť o velikosti 0. Kompatibilní ovladače ODBC nemají problémy toto volání. Nekompatibilní ovladače ODBC však nemusí za těchto okolností. Kompatibilní ovladače ODBC funkce SQLGetData API vrátí je zjistil SUCCESS_WITH_INFO při vyrovnávací paměť o velikosti 0. Nekompatibilní ovladače ODBC volání vrátí NO_DATA.

Řešení

Informace o opravě hotfix

Společnost Microsoft má k dispozici podporovanou opravu hotfix. Tato oprava hotfix je však určena pouze problému popsanému v tomto článku. Použití této opravy hotfix pouze u systémů, ve kterých dochází k tomuto konkrétnímu problému. Tato oprava hotfix může být dále testována. Proto pokud nejste vážně ohrožen tímto problémem, doporučujeme počkat na další aktualizaci softwaru, která obsahuje tuto opravu hotfix.

Pokud je oprava hotfix k dispozici ke stažení, je v horní části tohoto článku znalostní báze Knowledge Base oddíl "Oprava Hotfix je dostupná ke stažení" . Pokud tato sekce není uvedena, obraťte se na Zákaznický servis a podporu společnosti Microsoft k získaní opravy hotfix.

Poznámka: Pokud nastanou další problémy nebo bude nutné další řešení potíží, bude možná třeba vytvořit další samostatný požadavek na služby. Běžná cena za technickou podporu se vztahuje k dodatečným otázkám podpory a k problémům, které se netýkají této konkrétní opravy hotfix. Úplný seznam telefonních čísel služeb zákazníkům společnosti Microsoft a podpoře nebo vytvořit zvláštní požadavek na službu naleznete na následujícím webu společnosti Microsoft:Poznámka: Ve formuláři „Oprava hotfix je dostupná ke stažení“ se zobrazují jazyky, pro které je oprava hotfix k dispozici. Pokud váš jazyk není zobrazen, to je protože oprava hotfix není k dispozici pro daný jazyk.

Předpoklady

Musíte mít rozhraní.NET Framework 2.0 Service Pack 2 nainstalován.

Informace o restartování počítače

Po instalaci této opravy hotfix nemusíte restartovat počítač.

Informace o registrech

Není nutné změnit registr.

Informace o souborech opravy hotfix

Tato oprava hotfix obsahuje pouze soubory, které jsou nutné k opravě problémů uvedených v tomto článku jsou uvedeny. Tato oprava hotfix nemusí obsahovat všechny soubory nutné k plné aktualizaci produktu na nejnovější verzi. Anglická verze této opravy hotfix má atributy souborů (nebo novější) uvedené v následující tabulce. Kalendářní data a časy jednotlivých souborů jsou uvedeny v koordinovaném světovém čase (UTC). Při zobrazení informací o souboru je převeden na místní čas. Chcete-li najít rozdíl mezi časem UTC a místním časem, použijte kartu časové pásmo v položce datum a čas v okně Ovládací panely.
Rozhraní.NET Framework 2.0 pro systém Windows 2000, Windows Server 2003, Windows XP, 32bitové verze
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
System.data.dll2.0.50727.40632,933,76019-05:08x86
Rozhraní.NET Framework 2.0 pro systém Windows 2000, Windows Server 2003, Windows XP, x64 verze
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
System.data.dll2.0.50727.40633,008,51218-23:51x64
System.data.dll2.0.50727.40632,933,76019-05:08x86
Rozhraní.NET Framework 2.0 pro systém Windows 2000, Windows Server 2003, Windows XP, IA-64 verze
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
System.data.dll2.0.50727.40632,933,76019-05:08x86
System.data.dll2.0.50727.40633,234,81619-01:09IA-64
Rozhraní.NET Framework 2.0 pro systém Windows Vista, Windows Server 2008, 32bitové verze
Název souboruVerze souboruVelikost souboruDatumČas
System.data.dll2.0.50727.44002,933,76010-Sep-200911:54
Rozhraní.NET Framework 2.0 pro systém Windows Vista, Windows Server 2008, x64 verze
Název souboruVerze souboruVelikost souboruDatumČas
System.data.dll2.0.50727.44003,008,51210-Sep-200911:54
Rozhraní.NET Framework 2.0 pro systém Windows Vista, Windows Server 2008 IA-64 verze
Název souboruVerze souboruVelikost souboruDatumČas
System.data.dll2.0.50727.44003,234,81610-Sep-200911:54

Jak potíže obejít

Chcete-li tento problém vyřešit, použijte jednu z následujících metod.

Metoda 1

Upravte balíček SSIS konfigurace chyba a zkrácení přesměrování na zdroj objektu DataReader nebo spravované zdroje dat ADO.NET. Po úpravě balíčku direktivy SSI přesměrovat výstup chyb do místa určení bude úspěšně spustit balíček, i když jsou napsány žádné řádky k cíli. Chcete-li to provést, postupujte takto.

Poznámka: Následující postup předpokládá, že používáte SQL Server 2005 SSIS balíček, který načítá data z objektu DataReader zdroje.
  1. Spusťte balíček SSIS v SQL Server Business Intelligence Development Studio.
  2. Otevřete dialogové okno Upřesnit zdroj objektu DataReader v návrháři datového toku.
  3. Klepněte na kartu vstup a výstup vlastnosti a potom rozbalte uzel Výstup objektu DataReader ve stromové struktuře vstupů a výstupů .
  4. Rozbalte uzel Výstupních sloupců .
  5. Každý sloupec klepněte na Výstupní sloupce uzel a potom si prohlédněte vlastnost DataType . Pro každý sloupec, jehož vlastnost DataType DT_WSTR, DT_NTEXT, DT_BYTES nebo DT_IMAGE, upravit následující dvě vlastnosti:
    • Nastavte ErrorRowDisposition vlastnost RD_RedirectRow.
    • Nastavte TruncationRowDisposition vlastnost RD_RedirectRow.
  6. Klepněte na tlačítko OK uložte změny.
  7. V návrháři datového toku přidáte nové umístění. Například přidáte cíl plochý soubor nebo cílového serveru SQL Server.

  8. Pomocí připojení k nově přidané cíli červená šipka z objektu DataReader zdroje. Tato operace bude přímé řádky s chybou a zkrácení řádky cíl ušetřit řádky s chybou.

  9. Opakujte kroky 1 až 8 pro všechny úkoly tok dat, které přístup ODBC řetězec nebo obrázek sloupce a že se nezdaří s chybové zprávy, které jsou uvedeny v části "Příznaky".

Metoda 2

Odinstalace aktualizace rozhraní.NET Framework 2.0 SP2 nebo aktualizaci rozhraní.NET Framework 3.5 SP1. Odinstalování aktualizace service pack, protože to sacrifices spolehlivost, funkce, vylepšení a optimalizaci výkonu, které nabízí aktualizace service pack však nedoporučujeme.



Chcete-li obnovit systém do stavu, který byl před instalací rozhraní.NET Framework 2.0 SP2 a rozhraní.NET Framework 3.5 SP1, postupujte takto:
  1. V Ovládacích panelech poklepejte na panel Přidat nebo odebrat programy.
  2. Microsoft.NET Framework 3.5 SP1 vyhledejte a potom odinstalujte ji.
  3. Vyhledejte Microsoft rozhraní.NET Framework 3.0 SP2 a potom odinstalujte ji.
  4. Vyhledejte Microsoft rozhraní.NET Framework 2.0 SP2 a potom odinstalujte ji.
  5. Znovu nainstalujte původní verzi na rozhraní.NET Framework 3.5. Tento krok přeinstaluje rozhraní.NET Framework 2.0 SP1 a aktualizace rozhraní.NET Framework 3.0 SP1. Chcete-li získat na rozhraní.NET Framework 3.5, naleznete na následujícím webu společnosti Microsoft:

Metoda 3

Obraťte se na dodavatele ovladače ODBC od jiného výrobce k určení, zda má dodavatel aktualizaci pro ovladač, který chcete-li vyřešit tento problém.

Stav

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

ID článku: 969845 - Poslední kontrola: 13. 1. 2017 - Revize: 1

Váš názor