Microsoft levitab Microsoft SQL Server 2005, Microsoft SQL Server 2008 ja Microsoft SQL Server 2008 R2 parandusi ühe allalaaditava failina. Kuna parandused on kumulatiivsed, sisaldab iga uus väljaanne kõiki kiirparandusi ja kõiki turbeparandusi, mis olid kaasatud eelmises SQL Server 2005, Microsoft SQL Server 2008 või SQL Server 2008 R2 paranduse väljaandes.
Sümptomid
Vaatame järgmist näidet.
Käivitate Microsoft SQL Server 2005, Microsoft SQL Server 2008 või SQL Server 2008 R2 integreerimisteenuste paketi (SSIS) arvutis, kus on üks järgmistest .NET raamistik installidest:
- .NET raamistik 2.0 hoolduspakett Service Pack 2 (SP2)
- .NET raamistik 3.5 hoolduspakett Service Pack 1 (SP1)
SSIS-pakett kasutab muu tootja ODBC-draiverit, mis impordib märgiandmed.
Kui aga käivitate SSIS-paketi, kuvatakse järgmised tõrketeated:
Märkus.
[ADO NET Source [1424]] Tõrge: SSIS-i tõrkekoodi DTS_E_INDUCEDTRANSFORMFAILUREONERROR. "Komponent "ADO NET Source" (1424)" nurjus, kuna ilmnes tõrkekood 0x80131937 ja tõrkerea likvideerimisel "output columnname" (Number) määrab tõrke tõrke. Määratud komponendi määratud objektil ilmnes tõrge. Enne seda võidakse tõrke kohta lisateabega postitatud tõrketeateid.
Tõrge 0xc0209029: Andmevoo tööülesanne: komponent "ComponentName" (1)" nurjus, kuna ilmnes tõrkekood 0x80131937...
[ADO NET Source [1424]] Tõrge. Komponent "ADO NET Source" (1424) ei saanud andmeid töödelda. Konveierikomponent tagastas meetodikutsest HRESULT-i tõrkekoodi 0xC0209029.
[SSIS. Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. Komponendi ADO NET Source (1424) meetod PrimeOutput tagastas tõrkekoodi 0xC02090F5. Komponent tagastas tõrkekoodi, kui konveierimootor PrimeOutput(). Tõrkekoodi tähenduse määratleb komponent, kuid tõrge on pöördumatu ja konveier lõpetas käivitamise. Enne seda võidakse tõrke kohta lisateabega postitatud tõrketeateid.
See probleem mõjutab ODBC-draivereid, millele hallatava ODBC pakkuja juurde pääsevad, kui täidetud on järgmised tingimused:
Funktsiooni ExecuteReader kutsub parameeter CommandBehavior.SequentialAccess. Seda kutset ja parameetrit kasutatakse järgmistel juhtudel.
- Kui SQL Server 2005 SSIS pakett loeb andmeid DataReaderi allikast või kui SQL Server 2008 SSIS pakett loeb andmeid hallatavast ADO.NET andmeallikast.
- Andmeallikas pole konfigureeritud tõrke- ja kärpimisväärtusi ümber suunama.
Kutsutakse funktsioon OdbcDataReader.IsDbNull. SSIS-pakett kasutab seda meetodit, et teha kindlaks, kas välja väärtus on nullväärtusega või mitte.
Nimetatakse ühte järgmistest funktsioonidest.
- Funktsiooni OdbcDataReader.GetBytes kutsutakse hankima hallatavast ODBC-pakkujast teatud andmetüüpe (nt DT_BYTES).
- Funktsiooni OdbcDataReader.GetChars kutsutakse hankima hallatavast ODBC-pakkujast teatud stringi andmetüüpe (nt DT_WSTR).
Põhjus
.NET raamistik 2.0 SP2 ja .NET raamistik 3.5 SP1 muudavad hallatavat ODBC-pakkujat, mille abil loetakse stringe kohalikust ODBC-draiverist stsenaariumis, mida kirjeldatakse jaotises "Sümptomid". Selle muutuse tõttu kasutab ODBC-draiveris funktsiooni SQLGetData API abil kutsutud hallatav ODBC-pakkuja puhvrit suurusega 0. Ühilduvatel ODBC-draiveritel pole selles kõnes probleeme. Nendel asjaoludel võivad siiski nurjuda mitteühilduvad ODBC draiverid. Ühilduva ODBC-draiveri korral tagastab funktsioon SQLGetData API SUCCESS_WITH_INFO, kui tuvastatakse suuruse 0 puhver. Mittevõrdse ODBC-draiveri korral tagastab kutse NO_DATA.
Lahendus
Kiirparanduse teave
Microsoftilt on saadaval toetatud kiirparandus. Kuid see kiirparandus on ette nähtud ainult selles artiklis kirjeldatud probleemi lahendamiseks. Rakendage see kiirparandus ainult süsteemidele, kus esineb see konkreetne probleem. See kiirparandus võib saada täiendavat testimist. Seega, kui see probleem ei mõjuta teid tõsiselt, soovitame oodata järgmist tarkvaravärskendust, mis sisaldab seda kiirparandust.
Kui kiirparandus on allalaadimiseks saadaval, on selle teabebaasi artikli ülaosas jaotis "Kiirparanduse allalaadimine saadaval". Kui seda jaotist ei kuvata, võtke kiirparanduse hankimiseks ühendust Microsofti klienditeeninduse ja -toega.
Märkus. Kui ilmnevad täiendavad probleemid või kui on vaja teha tõrkeotsingut, peate võib-olla looma eraldi hooldustaotluse. Tavalised tugiteenusega seotud kulud rakenduvad täiendavatele toega seotud küsimustele ja probleemidele, mis ei vasta sellele konkreetsele kiirparandusele. Microsofti klienditeeninduse ja -toe telefoninumbrite täieliku loendi või eraldi teenusetaotluse loomiseks külastage järgmist Microsofti veebisaiti:
http://support.microsoft.com/contactus/?ws=support Märkus Vorm "Kiirparanduse allalaadimine on saadaval" kuvab keeled, mille kiirparandus on saadaval. Kui te ei näe oma keelt, see on sellepärast, et kiirparandus ei ole saadaval selle keele.
Eeltingimused
Teil peab olema installitud .NET raamistik 2.0 hoolduspakett Service Pack 2.
Uuesti käivitamise teave
Te ei pea pärast selle kiirparanduse rakendamist arvuti taaskäivitama.
Registriteave
Registrit pole vaja muuta.
Kiirparanduse failiteave
See kiirparandus sisaldab ainult neid faile, mis on vajalikud nende probleemide lahendamiseks, mida selles artiklis loetletakse. See kiirparandus ei pruugi sisaldada kõiki faile, mida peate toote täielikuks värskendamiseks uusimale järgule. Selle kiirparanduse ingliskeelne versioon sisaldab faili atribuute (või uuemad failiatribuudid), mis on loetletud järgmises tabelis. Nende failide kuupäevad ja kellaajad on loetletud koordineeritud maailmaaja (UTC) järgi. Failiteabe vaatamisel teisendatakse see kohalikuks kellaajaks. UTC ja kohaliku kellaaja erinevuse leidmiseks kasutage Juhtpaneel üksuse Kuupäev ja kellaaeg vahekaarti Ajavöönd.
.NET raamistik 2.0 Windows 2000, Windows Server 2003, Windows XP, 32-bitise versiooni jaoks
| Faili nimi | Failiversioon | Faili maht | Kuupäev | Kellaaeg | Platvorm |
|---|---|---|---|---|---|
| System.data.dll | 2.0.50727.4063 | 2,933,760 | 19- | 05:08 | x86 |
.NET raamistik 2.0 Windows 2000, Windows Server 2003, Windows XP, x64 versioonide jaoks
| Faili nimi | Failiversioon | Faili maht | Kuupäev | Kellaaeg | Platvorm |
|---|---|---|---|---|---|
| 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 raamistik 2.0 Windows 2000, Windows Server 2003, Windows XP, IA-64 versioonide jaoks
| Faili nimi | Failiversioon | Faili maht | Kuupäev | Kellaaeg | Platvorm |
|---|---|---|---|---|---|
| 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 raamistik 2.0 Windows Vista, Windows Server 2008, 32-bitise versiooni jaoks
| Faili nimi | Failiversioon | Faili maht | Kuupäev | Kellaaeg |
|---|---|---|---|---|
| System.data.dll | 2.0.50727.4400 | 2,933,760 | 10. sept 2009 | 11:54 |
.NET raamistik 2.0 Windows Vista, Windows Server 2008, x64 versioonide jaoks
| Faili nimi | Failiversioon | Faili maht | Kuupäev | Kellaaeg |
|---|---|---|---|---|
| System.data.dll | 2.0.50727.4400 | 3,008,512 | 10. sept 2009 | 11:54 |
.NET raamistik 2.0 Windows Vista, Windows Server 2008, IA-64 versioonide jaoks
| Faili nimi | Failiversioon | Faili maht | Kuupäev | Kellaaeg |
|---|---|---|---|---|
| System.data.dll | 2.0.50727.4400 | 3,234,816 | 10. sept 2009 | 11:54 |
Ajutine lahendus
Probleemi lahendamiseks kasutage ühte järgmistest meetoditest.
1. meetod
Redigeerige SSIS-paketti, et konfigureerida tõrke ja kärpimise ümbersuunamine andmeallikas DataReader või hallatavas ADO.NET andmeallikas. Pärast seda, kui redigeerite SSIS-paketti tõrkeväljundi sihtkoha ümbersuunamiseks, töötab pakett edukalt, kuigi ühtegi rida pole sihtkohta kirjutatud. Selleks tehke järgmist.
Märkus. Järgmistes juhistes eeldatakse, et kasutate SQL Server 2005 SSIS-paketti, mis loeb andmeid andmeallikast DataReader.
Avage SSIS-pakett SQL Server Business Intelligence Development Studios.
Avage andmevoo kujundajas dialoogiboksi DataReader Source (Andmereaderi allikas) Täpsem redaktor.
Klõpsake vahekaarti Sisendi ja väljundi atribuudid ja laiendage siis puus Sisendid ja väljundid sõlme DataReader Output.
Laiendage sõlme Väljundveerud .
Klõpsake igat sõlme Väljundveerud all olevat veergu ja uurige siis atribuuti DataType. Redigeerige iga veeru puhul, mille atribuut DataType on DT_WSTR (DT_NTEXT, DT_BYTES või DT_IMAGE) järgmist kahte atribuuti.
- Seadke atribuudi ErrorRowDisposition väärtuseks RD_RedirectRow.
- Seadke atribuudi TruncationRowDisposition väärtuseks RD_RedirectRow.
Muudatuste salvestamiseks klõpsake nuppu OK.
Lisage andmevoo kujundajas uus sihtkoht. Näiteks saate lisada lamefaili sihtkoha või SQL Server sihtkoha.
Kasutage andmeallika DataReader punast noolt, et ühendada see äsja lisatud sihtkohaga. Selle toiminguga suunatakse vearead ja kärpimisread tõrkeridade salvestamiseks sihtkohta.
Korrake juhiseid 1–8 kõigi andmevoo ülesannete puhul, mis pöörduvad ODBC-stringi või pildiveergude poole ja mis nurjuvad jaotises "Sümptomid" mainitud tõrketeadetega.
2. meetod
Desinstallige .NET raamistik 2.0 SP2 või .NET raamistik 3.5 SP1. Siiski ei soovita me hoolduspaketti desinstallida, kuna see ohverdab hoolduspaketi pakutavate töökindluse, funktsioonide täiustuste ja jõudluse optimeerimise.
Süsteemi taastamiseks olekusse, milles see oli enne .NET raamistik 2.0 SP2 või .NET raamistik 3.5 SP1 installimist, tehke järgmist.
Topeltklõpsake Juhtpaneel käsku Programmide lisamine või eemaldamine.
Otsige üles Microsoft .NET raamistik 3.5 SP1 ja seejärel desinstallige see.
Otsige üles Microsoft .NET raamistik 3.0 SP2 ja seejärel desinstallige see.
Otsige üles Microsoft .NET raamistik 2.0 SP2 ja seejärel desinstallige see.
Installige uuesti .NET raamistik 3.5 algne väljaanne. Selle toiminguga installitakse uuesti .NET raamistik 2.0 SP1 ja .NET raamistik 3.0 SP1. .NET raamistik 3.5 hankimiseks külastage järgmist Microsofti veebisaiti:
http://www.microsoft.com/download/details.aspx?FamilyId=333325FD-AE52-4E35-B531-508D977D32A6&displaylang=en
3. meetod
Pöörduge kolmanda osapoole ODBC-draiveri tarnija poole, et teha kindlaks, kas hankijal on selle probleemi lahendamiseks draiveri jaoks värskendus.
Olek
Microsoft on kinnitanud, et see on jaotises „Rakenduskoht“ loetletud Microsofti toodete korral esinev probleem.