2016-01-09 36 views
1

我失敗到一個文本文件的數據加載到我的數據庫中的表與持久錯誤BCP數據導入,無效的時間格式錯誤

無效的時間格式。

我已經改變了時間格式以在日期和時間之間包括一個T,無濟於事。我還從中取代了年份,月份,日期分隔符。到 - 但錯誤仍然存​​在。

這是我正在試圖從一個txt文件

bcp mydb.dbo.mytable in c:\data.txt -T -S myserver\instance 

然後我進行確認字段,前綴長度的數據類型(這是前場的分隔符的長度加載..對吧?)和字段終結者。我創建的格式文件在使用時仍然會產生相同的錯誤。我正在導入的日期時間字段是典型行中的其他四個字段之一。

我錯過了什麼?

編輯

下面是一個典型的行

14,1999-01-04T08:08:24.000,1.36000,1.36000 

使用SSIS我以前的工作圍繞第一個使用訪問的時候我也沒在這裏不適用。它是bcp或SSIS

+0

請包括一點數據樣本。 –

+0

你缺少什麼?不知道......但我可以告訴你我缺少的東西:示例數據,「典型行」的一些行。還有一個提示:用一個只包含前幾行的文件來試試你的陳述。它可能是,一個單一的日期下的地方是不好的,而不是格式本身。另一個提示:大多數問題都是在每月的訂單不同的情況下發生的。 2016-04-01會工作,但可能會產生意想不到的結果,2016-13-04將無法正常工作... – Shnugo

+0

得到這個工作通過SSIS ...猜bcp是古董;-) – ssn

回答

0

我相信你正在使用SQL Server 2008 (R2)?如果是這樣,請爲您的問題添加適當的標籤。

已經報告此問題heredba.stackexchange

下列提示分別給予:

  • 您需要使用生成的格式文件,並使用-f的進口和出口。
  • 確保您的日期時間的格式爲yyyy-mm-dd hh:mm:ss,所以用空格代替日期和時間

注意,我讀here的說法,這是一個錯誤的BCP附帶SQL Server 2008 (R2)之間的T。這可以在SQL Server 2012 +中得到解決。

+0

嗨,正在使用SQL 2014 ...不得不求助於先導入txt文件進入訪問,然後將accdb文件導出到SQL – ssn