Sybase bcp: Unerwartetes EOF aufgetreten in BCP-Daten-Datei
Ich habe ein paar Probleme mit bcp.
Ich versuche zum laden von Daten aus einer text-Datei in Sybase ASE 16.0 . Die DB ist auf meinem lokalen Rechner (Win 7 64-bit).
Ich bin mit diesem Befehl:
bcp dbname.owner.TO_INTS in "SomeInts.txt" -P password -S server -U sa -f "bcp_tblTO_INTS.fmt" -e "bcp.errlog.txt"
Hier ist die format-Datei ("bcp_tblTO_INTS.fmt"):
10.0
1
1 SYBINT4 0 5 "" 1 SEEMS_THIS_IS_IGNORED
In der Zieltabelle eine einzige Spalte, definiert als INT:
CREATE TABLE owner.TO_INTS
(
FROM_INT INT NOT NULL
)
LOCK ALLPAGES
ON 'default'
GO
Habe ich zwei Probleme.
- bcp wird nur füllen Sie die Zieltabelle, wenn die Daten nur noch vier Zeichen (ie, Werte von 1000 bis zu 9999). Wenn ich die Werte verwenden, die außerhalb dieses Bereichs, den ich bekommen:
Unexpected EOF encountered in BCP data-file.
bcp copy in failed
- Die Werte sind nicht ordnungsgemäß gefüllt:
Eingangswert (in der Datei) : 1000 Besiedelt als die (Sybase):808464433
Eingangswert (in der Datei) : 9999 Besiedelt als die (Sybase):960051513
Die Datei-Codierung ist ANSI. Die EOL-Zeichen ist LF.
Was mache ich falsch?
Dank
Dave.
-c
- flag, um eine nur-text-input-Datei.Super, danke. Mit "-c" fixiert alles (wenn ich das EOL-Zeichen CRLF). Wenn Sie möchten, hinzufügen, dass als Antwort dann werde ich es bestätigen.
InformationsquelleAutor Badgerspot | 2015-01-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Da Ihr die Datei nur eine Spalte, entfernen Sie die format-Datei, und verwenden Sie die
-c
option statt. Dies wird der BCP-Datei in Charakter (Klartext) - Modus, und sollte das Problem beheben.Wie bereits erwähnt, müssen Sie möglicherweise ändern Sie das EOL-Zeichen CRLF
InformationsquelleAutor Michael Gardner