Μετάβαση στο κύριο περιεχόμενο
Υποστήριξη
Είσοδος με Microsoft
Είσοδος ή δημιουργία λογαριασμού.
Γεια σας,
Επιλέξτε διαφορετικό λογαριασμό.
Έχετε πολλούς λογαριασμούς
Επιλέξτε τον λογαριασμό με τον οποίο θέλετε να εισέλθετε.

Η Microsoft διανέμει Microsoft SQL Server 2005, Microsoft SQL Server 2008, και Microsoft SQL Server 2008 R2 επιδιορθώνει μορφή ενός αρχείου λήψης. Επειδή οι ενημερώσεις κώδικα είναι αθροιστικές, κάθε νέα έκδοση περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που είχαν περιληφθεί σε προηγούμενες SQL Server 2005, Microsoft SQL Server 2008 ή SQL Server 2008 R2 έκδοση της ενημέρωσης κώδικα.

Συμπτώματα

Εξετάστε το ακόλουθο σενάριο:

  • Μπορείτε να εκτελέσετε ένα πακέτο Microsoft SQL Server 2005, Microsoft SQL Server 2008 ή υπηρεσιών ενοποίησης του SQL Server 2008 R2 (SSIS) σε έναν υπολογιστή που έχει μία από τις παρακάτω εγκαταστάσεις του .NET Framework:

    • Το .NET Framework 2.0 Service Pack 2 (SP2)

    • Το .NET Framework 3.5 Service Pack 1 (SP1)

  • Το πακέτο SSIS χρησιμοποιεί ένα πρόγραμμα οδήγησης ODBC άλλου κατασκευαστή που εισάγει δεδομένα χαρακτήρων.

Ωστόσο, όταν εκτελείτε το πακέτο SSIS, λαμβάνετε τα ακόλουθα μηνύματα λάθους:

[ADO NET προέλευσης [1424]] Σφάλμα: Κωδικός σφάλματος SSIS DTS_E_INDUCEDTRANSFORMFAILUREONERROR. Το "στοιχείο"ADO NET αρχείου προέλευσης"(1424)" απέτυχε, επειδή παρουσιάστηκε σφάλμα κώδικα 0x80131937 και τη διάταξη της γραμμής σφάλματος σε "στήλη εξόδου"columnname"(αριθμός)" Καθορίζει αποτυχία σχετικά με το σφάλμα. Παρουσιάστηκε σφάλμα στο καθορισμένο αντικείμενο του καθορισμένου στοιχείου. Μπορεί να υπάρχουν μηνύματα λάθους που καταχωρούνται πριν αυτό με περισσότερες πληροφορίες σχετικά με την αποτυχία.

Σφάλμα 0xc0209029: Δεδομένα ροής εργασίας: το "στοιχείο"ΌνομαΣτοιχείου είναι"(1)" απέτυχε, επειδή παρουσιάστηκε σφάλμα κώδικα 0x80131937...

[ADO NET προέλευσης [1424]] Σφάλμα: Το στοιχείο "ADO NET αρχείου προέλευσης" (1424) δεν ήταν δυνατό να επεξεργαστεί τα δεδομένα. Στοιχείο διοχέτευσης επέστρεψε HRESULT κωδικού σφάλματος 0xC0209029 από μια κλήση μεθόδου.

[SSIS. Διοχέτευση] σφάλμα: κωδικός σφάλματος SSIS DTS_E_PRIMEOUTPUTFAILED. Η μέθοδος PrimeOutput στο στοιχείο "ADO NET προέλευσης" (1424) επιστρέφεται σφάλμα κώδικα 0xC02090F5. Το στοιχείο επέστρεψε έναν κωδικό αποτυχίας κατά τον μηχανισμό αγωγών που ονομάζεται PrimeOutput(). Την έννοια του κωδικού αποτυχίας καθορίζεται από το στοιχείο, αλλά το σφάλμα είναι ανεπανόρθωτο και διοχέτευση σταματήσει να εκτελείται. Μπορεί να υπάρχουν μηνύματα λάθους που καταχωρούνται πριν αυτό με περισσότερες πληροφορίες σχετικά με την αποτυχία.

Αυτό το ζήτημα επηρεάζει τα προγράμματα οδήγησης ODBC που είναι προσπελάσιμα από τη διαχειριζόμενη υπηρεσία παροχής ODBC όταν ισχύουν οι ακόλουθες συνθήκες:

  • Η κλήση της συνάρτησης ExecuteReader είναι από την παράμετρο CommandBehavior.SequentialAccess . Αυτή η κλήση και την παράμετρο χρησιμοποιούνται υπό τις ακόλουθες συνθήκες:

    • Όταν ένα πακέτο SSIS του SQL Server 2005 διαβάζει δεδομένα από μια προέλευση DataReader ή όταν ένα πακέτο SSIS του SQL Server 2008 διαβάζει δεδομένα από ένα διαχειριζόμενο αρχείο προέλευσης δεδομένων ADO.NET.

    • Το αρχείο προέλευσης δεδομένων δεν έχει ρυθμιστεί για να ανακατευθύνετε τις τιμές σφάλματος και περικοπή.

  • Κλήση της συνάρτησης OdbcDataReader.IsDbNull . Το πακέτο SSIS χρησιμοποιεί αυτήν τη μέθοδο για να προσδιορίσετε εάν η τιμή σε ένα πεδίο είναι NULL ή όχι.

  • Ονομάζεται μία από τις ακόλουθες λειτουργίες:

    • Καλείται η λειτουργία OdbcDataReader.GetBytes για την απόκτηση ορισμένων τύπων δεδομένων, όπως DT_BYTES, από τη διαχειριζόμενη υπηρεσία παροχής ODBC.

    • Καλείται η συνάρτηση OdbcDataReader.GetChars για να αποκτήσετε ορισμένων συμβολοσειρά τύπους δεδομένων, όπως DT_WSTR, από τη διαχειριζόμενη υπηρεσία παροχής ODBC.

Αιτία

Το .NET Framework 2.0 SP2 και το .NET Framework 3.5 SP1 εισάγουν μια αλλαγή στη διαχειριζόμενη υπηρεσία παροχής ODBC, με την οποία οι συμβολοσειρές διαβάζονται από το εγγενές πρόγραμμα οδήγησης ODBC στο σενάριο που περιγράφεται στην ενότητα "Συμπτώματα". Εξαιτίας αυτής της αλλαγής, η διαχειριζόμενη υπηρεσία παροχής ODBC που ονομάζεται στο εγγενές πρόγραμμα οδήγησης ODBC, χρησιμοποιώντας τη συνάρτηση SQLGetData API χρησιμοποιεί ένα buffer μεγέθους 0. Συμβατό με τα προγράμματα οδήγησης ODBC δεν αντιμετωπίζετε προβλήματα σε αυτήν την κλήση. Ωστόσο, οι μη σύμμορφοι προγράμματα οδήγησης ODBC μπορεί να αποτύχει υπό αυτές τις συνθήκες. Για ένα συμβατό πρόγραμμα οδήγησης του ODBC, η συνάρτηση SQLGetData API επιστρέφει εντοπίζεται SUCCESS_WITH_INFO όταν ένα buffer μεγέθους 0. Για ένα μη σύμμορφο πρόγραμμα οδήγησης ODBC, η κλήση επιστρέφει NO_DATA.

Προτεινόμενη αντιμετώπιση

Πληροφορίες άμεσης επιδιόρθωσης

Μια υποστηριζόμενη άμεση επιδιόρθωση είναι διαθέσιμη από τη Microsoft. Ωστόσο, αυτή η άμεση επιδιόρθωση προορίζεται για τη διόρθωση μόνο του προβλήματος που περιγράφεται σε αυτό το άρθρο. Εφαρμόστε αυτήν την άμεση επιδιόρθωση μόνο σε συστήματα που αντιμετωπίζουν το συγκεκριμένο πρόβλημα. Αυτή η άμεση επιδιόρθωση ενδέχεται να υποβληθεί σε πρόσθετο έλεγχο. Επομένως, εάν αυτό το ζήτημα δεν σας επηρεάζει ιδιαίτερα, σας συνιστούμε να περιμένετε έως την επόμενη ενημέρωση λογισμικού που περιέχει αυτήν την άμεση επιδιόρθωση.

Εάν η άμεση επιδιόρθωση είναι διαθέσιμη για λήψη, τότε υπάρχει μια ενότητα με τίτλο "Διαθέσιμη λήψη άμεσης επιδιόρθωσης" στην αρχή αυτού του άρθρου της Γνωσιακής βάσης. Εάν αυτή η ενότητα δεν εμφανίζεται, επικοινωνήστε με την Υπηρεσία εξυπηρέτησης πελατών και υποστήριξης της Microsoft για να αποκτήσετε την άμεση επιδιόρθωση.

Σημείωση Εάν προκύψουν πρόσθετα ζητήματα ή απαιτείται αντιμετώπιση προβλημάτων, ίσως χρειαστεί να δημιουργήσετε ξεχωριστή αίτηση εξυπηρέτησης. Για πρόσθετες ερωτήσεις υποστήριξης και θέματα που δεν αφορούν τη συγκεκριμένη άμεση επιδιόρθωση, ισχύουν οι συνηθισμένες χρεώσεις υποστήριξης. Για μια πλήρη λίστα αριθμών τηλεφώνου υπηρεσία εξυπηρέτησης πελατών της Microsoft και υποστήριξη ή για να δημιουργήσετε μια ξεχωριστή αίτηση εξυπηρέτησης, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:

http://support.microsoft.com/contactus/?ws=supportΣημείωση Η φόρμα "Διαθέσιμη λήψη άμεσης επιδιόρθωσης" εμφανίζει τις γλώσσες για τις οποίες είναι διαθέσιμη η άμεση επιδιόρθωση. Εάν η γλώσσα σας δεν εμφανίζεται, τότε η άμεση επιδιόρθωση δεν είναι διαθέσιμη για αυτήν τη γλώσσα.

Προϋποθέσεις

Πρέπει να έχετε το .NET Framework 2.0 Service Pack 2.

Πληροφορίες επανεκκίνησης

Δεν χρειάζεται να κάνετε επανεκκίνηση του υπολογιστή μετά την εφαρμογή αυτής της άμεσης επιδιόρθωσης.

Πληροφορίες μητρώου

Δεν πρέπει να τροποποιήσετε το μητρώο.

Πληροφορίες αρχείου επείγουσας επιδιόρθωσης

Αυτή η επείγουσα επιδιόρθωση περιέχει μόνο τα αρχεία που απαιτούνται για να διορθώσετε τα ζητήματα που αναφέρονται σε αυτό το άρθρο. Αυτή η επείγουσα επιδιόρθωση μπορεί να μην περιέχει όλα τα αρχεία που πρέπει να έχετε για να ενημερώσετε πλήρως ένα προϊόν στην πιο πρόσφατη έκδοση. Η αγγλική έκδοση αυτής της επείγουσας επιδιόρθωσης έχει τα χαρακτηριστικά αρχείου (ή νεότερα χαρακτηριστικά αρχείου) που παρατίθενται στον παρακάτω πίνακα. Οι ημερομηνίες και οι ώρες για τα αρχεία αυτά αναφέρονται σε Συντονισμένη παγκόσμια ώρα (UTC). Όταν προβάλλετε τις πληροφορίες του αρχείου, μετατρέπεται σε τοπική ώρα. Για να βρείτε τη διαφορά μεταξύ της ώρας UTC και της τοπικής ώρας, χρησιμοποιήστε την καρτέλα ζώνη ώρας στο στοιχείο " ημερομηνία και ώρα " στον πίνακα ελέγχου.

.NET framework 2.0 για Windows 2000, Windows Server 2003, Windows XP, εκδόσεις 32-bit

Όνομα αρχείου

Έκδοση αρχείου

Μέγεθος αρχείου

Ημ/νία

Ώρα

Πλατφόρμα

System.data.dll

2.0.50727.4063

2,933,760

19-

05:08

x86

.NET framework 2.0 για Windows 2000, Windows Server 2003, Windows XP, x64 εκδόσεις

Όνομα αρχείου

Έκδοση αρχείου

Μέγεθος αρχείου

Ημ/νία

Ώρα

Πλατφόρμα

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 για Windows 2000, Windows Server 2003, εκδόσεις των Windows XP, IA-64

Όνομα αρχείου

Έκδοση αρχείου

Μέγεθος αρχείου

Ημ/νία

Ώρα

Πλατφόρμα

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 για εκδόσεις 32-bit των Windows Vista, Windows Server 2008

Όνομα αρχείου

Έκδοση αρχείου

Μέγεθος αρχείου

Ημ/νία

Ώρα

System.data.dll

2.0.50727.4400

2,933,760

10-Sep-2009

11:54

.NET framework 2.0 για Windows Vista, Windows Server 2008, x64 εκδόσεις

Όνομα αρχείου

Έκδοση αρχείου

Μέγεθος αρχείου

Ημ/νία

Ώρα

System.data.dll

2.0.50727.4400

3,008,512

10-Sep-2009

11:54

.NET framework 2.0 για Windows Vista, Windows Server 2008, εκδόσεις IA-64

Όνομα αρχείου

Έκδοση αρχείου

Μέγεθος αρχείου

Ημ/νία

Ώρα

System.data.dll

2.0.50727.4400

3,234,816

10-Sep-2009

11:54

Εναλλακτικός τρόπος αντιμετώπισης

Για να επιλύσετε αυτό το ζήτημα, χρησιμοποιήστε μία από τις ακόλουθες μεθόδους.

Μέθοδος 1

Επεξεργαστείτε το πακέτο SSIS για να ρυθμίσετε σφαλμάτων και ανακατεύθυνσης περικοπή στην πηγή DataReader ή σε διαχειριζόμενο ADO.NET προέλευσης δεδομένων. Αφού επεξεργαστείτε το πακέτο SSIS για να ανακατευθύνετε την έξοδο σφάλματος σε έναν προορισμό, το πακέτο θα εκτελεστεί με επιτυχία, ακόμη και αν δεν υπάρχουν γραμμές εγγράφονται στον προορισμό. Για να γίνει αυτό, ακολουθήστε τα εξής βήματα.

Σημείωση Τα παρακάτω βήματα προϋποθέτουν ότι χρησιμοποιείτε ένα πακέτο SSIS του SQL Server 2005 που διαβάζει δεδομένα από μια προέλευση DataReader.

  1. Ανοίξτε το πακέτο SSIS σε SQL Server Business Intelligence Development Studio.

  2. Ανοίξτε το παράθυρο διαλόγου Για προχωρημένους επεξεργασίας για DataReader προέλευσης στη Σχεδίαση ροής δεδομένων.

  3. Κάντε κλικ στη σελίδα εισόδου και εξόδου ιδιότητες και, στη συνέχεια, αναπτύξτε τον κόμβο DataReader εξόδου στο δέντρο εισόδων και των εξόδων .

  4. Αναπτύξτε τον κόμβο Στήλες εξόδου .

  5. Κάντε κλικ σε κάθε στήλη κάτω από τον κόμβο Στηλών εξόδου και, στη συνέχεια, εξετάστε την ιδιότητα τύπου δεδομένων . Για κάθε στήλη του οποίου η ιδιότητα τύπου δεδομένων είναι DT_WSTR, DT_NTEXT, DT_BYTES ή DT_IMAGE, επεξεργαστείτε τις παρακάτω ιδιότητες δύο:

    • Ορίστε την ιδιότητα ErrorRowDisposition για να RD_RedirectRow.

    • Ορίστε την ιδιότητα TruncationRowDisposition σε RD_RedirectRow.

  6. Κάντε κλικ στο κουμπί OK για να αποθηκεύσετε τις αλλαγές.

  7. Στη Σχεδίαση ροής δεδομένων, προσθέτετε ένα νέο προορισμό. Για παράδειγμα, προσθέσετε ένα απλό αρχείο προορισμού ή έναν προορισμό του SQL Server.

  8. Χρησιμοποιήστε το κόκκινο βέλος από την προέλευση DataReader για να συνδεθεί στον προορισμό που μόλις προσθέσατε. Αυτή η λειτουργία θα κατευθύνουν τις γραμμές σφάλματος και περικοπή στον προορισμό για να αποθηκεύσετε τις γραμμές σφάλματος.

  9. Επαναλάβετε τα βήματα 1 έως 8 για όλες τις εργασίες που στηλών συμβολοσειρά ή την εικόνα του ODBC πρόσβασης και που αποτυγχάνουν με τα μηνύματα λάθους που αναφέρονται στην ενότητα "Συμπτώματα" ροή δεδομένων.

Μέθοδος 2

Καταργήστε την εγκατάσταση του .NET Framework 2.0 SP2 ή το .NET Framework 3.5 SP1. Ωστόσο, συνιστάται να απεγκαταστήσετε ένα service pack, επειδή αυτό sacrifices την αξιοπιστία, βελτιώσεις δυνατοτήτων και βελτιστοποίηση απόδοσης που προσφέρει το service pack.



Για να επαναφέρετε το σύστημά σας στην κατάσταση που βρισκόταν πριν να εγκαταστήσετε το .NET Framework 2.0 SP2 ή το .NET Framework 3.5 SP1, ακολουθήστε τα εξής βήματα:

  1. Στον πίνακα ελέγχου, κάντε διπλό κλικ στο " Προσθαφαίρεση προγραμμάτων".

  2. Εντοπίστε το Microsoft.NET Framework 3.5 SP1 και, στη συνέχεια, καταργήσετε την εγκατάστασή του.

  3. Εντοπίστε το Microsoft .NET Framework 3.0 SP2 και, στη συνέχεια, καταργήσετε την εγκατάστασή του.

  4. Εντοπίστε το Microsoft .NET Framework 2.0 SP2 και, στη συνέχεια, καταργήσετε την εγκατάστασή του.

  5. Εγκαταστήστε ξανά την αρχική έκδοση του .NET Framework 3.5. Αυτό το βήμα θα επανεγκαταστήσει το .NET Framework 2.0 SP1 και το .NET Framework 3.0 SP1. Για να αποκτήσετε το .NET Framework 3.5, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:

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

Η μέθοδος 3

Επικοινωνήστε με τον προμηθευτή του προγράμματος οδήγησης ODBC άλλου κατασκευαστή για να προσδιορίσετε αν ο προμηθευτής έχει μια ενημερωμένη έκδοση για να επιλύσετε αυτό το ζήτημα.

Κατάσταση

Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα των προϊόντων της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".

Χρειάζεστε περισσότερη βοήθεια;

Θέλετε περισσότερες επιλογές;

Εξερευνήστε τα πλεονεκτήματα της συνδρομής, περιηγηθείτε σε εκπαιδευτικά σεμινάρια, μάθετε πώς μπορείτε να προστατεύσετε τη συσκευή σας και πολλά άλλα.

Οι κοινότητες σάς βοηθούν να κάνετε και να απαντάτε σε ερωτήσεις, να δίνετε σχόλια και να ακούτε από ειδικούς με πλούσια γνώση.

Σας βοήθησαν αυτές οι πληροφορίες;

Πόσο ικανοποιημένοι είστε με τη γλωσσική ποιότητα;
Τι επηρέασε την εμπειρία σας;
Πατώντας "Υποβολή" τα σχόλια σας θα χρησιμοποιηθούν για τη βελτίωση των προϊόντων και των υπηρεσιών της Microsoft. Ο διαχειριστής IT θα έχει τη δυνατότητα να συλλέξει αυτά τα δεδομένα. Δήλωση προστασίας προσωπικών δεδομένων.

Σας ευχαριστούμε για τα σχόλιά σας!

×