Fragensteller
SSIS Import Excel-Tabelle schlägt fehl

Frage
-
SQL-Server 2005 Standard
Windows XP Pro, XLS
Hallo NG,
ich habe mit dem SSIS-Import-Assitent ein Package erstellt, das die Datensätze einer xls-Datei an eine SQL-Server-Tabelle anhängen soll. Die Spaltenzuordnungen habe ich hergestellt, dabei auch einige Spalten auf ingnorieren gestellt, da ich diese nicht haben will. Das Paket lässt sich ausführen, er bringt dann einige Warnungen (abgeschnittene Felder, damit könnte ich aber leben), in der Fehlerliste stehen 0 Fehler, 16 Warnungen, 0 Meldungen.
Dummerweise aber werden die Daten nicht an die Server-Tabelle angehängt.
Nun habe ich die Paketausführung getestet mit und ohne identity_insert, dabei natürlich die ID-Spalte hinzugenommen oder ingnoriert - ohne Erfolg. Die IDs in der XLS waren neu gesetzt.
Die Zieltabelle enthält lediglich einen PK, keine FK.
Nach mittlerweile x Versuchen sehe ich nix mehr. Habt Ihr eine Idee?
Peter
Alle Antworten
-
Hallo Christa,
zwischen Quelle und Ziel ist lediglich die Datenkonvertierung, die der Assi angelegt hat.
Ich habe nun zwischen Quelle und Datenkovertierung einen Viewer gelegt. Dieser bleibt bei der Paketausführung leer.
Im Ausgabefenster steht in der Reihe der Fehlermeldungen unter anderem: SSIS-Fehlercode 'DTS_E_OLEDBERROR'
...Ein OLEDB-Datensatz ist verfügbar. Quelle: "Microsoft SQL Native Client" HRESULT 0x80040E21 Beschreibung: Fehler bei einem aus mehreren Schritten bestehenden OLE-DB-Vorgang. Prüfen Sie die einzelnen OLE-DB-Statuswerte falls vorhanden. Daten wurde nicht verarbeitet.
...
?????
Scheinbar klemmts bereits bei der Abfrage der Daten. Allerdings, wenn ich im Assistenten die Vorschau wähle, zeigt er die Daten auch an.
Vielleicht noch als Hintergrundinfo: ich bin via VPN mit dem Server verbunden. Die abzufragenden Daten liegen auf meinem persönlichen Rechner, auf dem ich auch das VS auführe.
Sagt Dir das alles was?
Peter
-
Dann liegt's vermutlich an Excel.
Ich vermeide Importe aus Excel, wo es nur möglich ist ;-)Es scheint ein Problem mit den Datantypen zu sein, es gibt da im erweiterten Editor der Excel-Source den Parameter "ErrorRowDisposition". Stell den mal auf "RD_IgnoreFailure".
Vielleicht hilft's.
-
Hat leider nix geholfen. Klar ist xls nicht so schön. Ich habe die Daten auch schon in Access importiert und wollte von der mdb importieren. Da war aber genau das Gleiche Problem.
Nun habe ich mal versucht, in der xls alle leeren Felder mit Werten zu füllen. Ergebnis: keines.
Auch an der Datenmenge kanns eigentlich nicht liegen: Ich habe im Moment nur rund 300 Datensätze in der xls.
Ich habe noch so in Erinnerung, dass es bei den DTS auf dem 2000er einfacher war...
Peter
-
Hallo Christa,
nun dachte ich, ganz schlau zu sein ;-) und importierte die Tabelle zunächst als neue Tabelle in den Server, gleich in die richtige DB. Klappt natürlich.
Dann wollte ich ein neues Package generieren, das mir die Daten der importierten Tabelle an die vorhandene anfügt. Was soll ich sagen: Der gleiche Murks erneut...
Nur dass er diesmal sagt, er könne keinen DB-Accessor erstellen.
Dann habe ich in der Katenkonvertierung neue Spalten erzeugt und den Datentyp weitgehend auf Unicode-Zeichenfolge gestellt.
Anschließend habe ich den Viewer zwischen Quelle und Konvertierung gesetzt.
Ergebnis der Ausführung: Niente!
Hast Du oder irgendjemand hier noch eine Idee? Bin für alles dankbar.
LG, Peter
-
Hallo Peter,
habe ich richtig verstanden, daß Du zwar die Excel-Daten ine ine neue Tasbelle importieren kannst, diese imortierten Daten nicht an das eigentliche Ziel anfügen kannst mit SSIS?
Wie ist die genaue Fehlermeldung?Andere Idee:
Erstell das Paket mal nicht mit dem Assistenten sondern alles "zu Fuß".Du kannst auch hier mal schauen, ob Du fündig wirst:
http://dougbert.com/blogs/tags/Excel/default.aspxGruß
Christa