CSV-Datei in SQL-Server importieren ...

8

Hallo Leute, Ich versuche, CSV-Datei in SQL Server-Datenbank ohne Erfolg zu importieren. Ich bin immer noch Neuling auf SQL-Server, danke.

%Vor%     
Bart 26.05.2010, 04:40
quelle

6 Antworten

6

Sie haben wirklich zwei Hauptprobleme bei Ihrem Import:

  

Fehler 0xc002f210: Tabelle (n) löschen SQL   Aufgabe 1: Ausführen der Abfrage "drop   Tabelle [dbo]. [Test] "fehlgeschlagen mit der   Folgefehler: "Kann nicht fallen lassen   Tabelle 'dbo.test', weil es nicht   existieren oder Sie haben keine Erlaubnis. ".

Es sieht so aus, als ob du versuchst, einen Tisch fallen zu lassen, der gar nicht existiert. Lösung: tu es einfach nicht!

  

Fehler 0xc02020a1: Datenfluss Aufgabe 1:   Datenkonvertierung fehlgeschlagen. Die Daten   Konvertierung für die Spalte "Code"   gab Status 4 und Status zurück   Text "Text wurde abgeschnitten oder ein oder   mehr Charaktere hatten keine Übereinstimmung in der   Zielcode-Seite. ".

Ihre Spalte "Code" ist offensichtlich länger als die resultierende Spalte in Ihrer Zieltabelle. Überprüfen Sie die Zuordnungen - vielleicht ist dies eine sehr lange Zeichenfolge, und die Standardlänge für die VARCHAR-Spalte in SQL Server ist zu klein. Ändern Sie den Datentyp der Zielspalte in z. VARCHAR(MAX) - das gibt Ihnen 2 GByte Speicherplatz! Das sollte genug sein ....

Es scheint auch, dass Spalte "Code" Zeichen enthält, die nicht in Ihrer derzeit ausgewählten Codepage in SQL Server vorhanden sind - können Sie diese zusätzlichen Sonderzeichen vor dem Importieren entfernen? Wenn nicht, müssen Sie möglicherweise NVARCHAR(MAX) für den Datentyp Ihrer Zielspalte verwenden, um Unicode für seine Zeichen verwenden zu können (wodurch auch die exotischsten Zeichen in Ihrer Eingabezeichenfolge unterstützt werden).

    
marc_s 26.05.2010, 05:22
quelle
12
  

"Text wurde abgeschnitten oder einer oder mehrere   Charaktere hatten keine Übereinstimmung im Ziel   Codepage. "

kann auftreten, wenn:

  • Ihre Quelldatei ist eine UNICODE-Datei

AND

  • Ihre Zielspalte ist als nvarchar (max) definiert.

Ich brauchte eine Weile, um es herauszufinden.

Ursache

SSIS leitet Datentypen in der Quelldatei davon ab, die ersten N Zeilen zu scannen und eine fundierte Vermutung zu treffen. Aufgrund endlos wiederholter Versuche, es an die Arbeit zu bringen, hatte es die Metadaten für den Datentyp (OutputColumnWidth) irgendwo auf 50 Zeichen geparkt, was zur internen Kürzung des Pakets führte.

Auflösung

Wenn Sie sich dann mit den Metadaten auf der Registerkarte "Erweitert" der Datenquelle beschäftigen, müssen Sie das Problem lösen. Versuchen Sie, das Ganze zurückzusetzen, indem Sie mit den Einstellungen unter "Typen vorschlagen" spielen oder die Einstellungen für jedes Feld einzeln anpassen. Eine wirklich entmutigende Menge an Iterationen wurde in meinem Fall benötigt (breite Eingabedatei), aber letztendlich können Sie es zum Laufen bringen.

    
Eoan 18.06.2010 07:20
quelle
1

Ich hatte das gleiche Problem:

%Vor%

Die Lösung war, zu "Advanced" zu wechseln und die Spaltenbreite auf 255 zu ändern.

    
user977812 04.10.2011 05:01
quelle
1

Oder Sie können auch die Größe des Textes überprüfen, indem Sie zu advanced gehen, dann den Vorschlag prüfen und dann die Zeichenkette in Unicode-Zeichenkette umwandeln. Es hilft bei der Lösung von stringbezogenen Fehlern. Ich habe in letzter Zeit viel mit ihnen zu tun gehabt!

    
SonalKhodiyar 17.02.2012 17:44
quelle
0

Angesichts der Tatsache, dass dieses Ding sehr schnell ist, ist es ratsam, vorgeschlagene Typen zu verwenden und die Einstellungen Feld für Feld zu optimieren. Wenn Sie eine Final Table direkt erstellen, sollten Sie die Spaltenbreiten für die spätere Dateneingabe etwas erhöhen. Ich schlage vor, nur die Anzahl der Zeilen in der Importdatei zu zählen und den gesamten Satz als "Probe" zu scannen. Alles andere könnte zu Fehlern führen. Die Zeit, um es zu optimieren ist wahrscheinlich nicht Ihre Zeit wert.

    
Michael 06.06.2011 20:17
quelle
0

Für "Error 0xc02020a1" wurde mein Fall gelöst, indem das Zellenformat von der CSV-Dateiseite geändert wurde: (Öffnen Sie die CSV-Datei durch Excel & GT; & gt; ändern Sie das Zellenformat von Prozent zu allgemeinen dann speichern Sie), das löste meinen Fall.

    
Hassan3571619 17.06.2014 14:45
quelle

Tags und Links