使用导入导出向导将 DAT 文件内容导入 SQL 服务器 table - 错误

Import DAT file content to SQL Server table using Import Export Wizard - Error

我有 .DAT 文件,格式如下[无列名或 header,只有数据]:||是分隔符;所以,我有 20 个字段。

worth||8000||AC8000||Tal||100||IN||O||2014-01-09 00:00:00||||N||N||N||Y||2014-01-09 00:00:00||Y||19991011||N||Internal||||N

我的 SQL 数据库 table 也有 20 列。

当我使用导入导出向导时,出现如下错误:

 - Executing (Error)
 Messages
  Error 0xc02020a1: Data Flow Task 1: Data conversion failed. The data conversion for column "Column 0" returned status value 4 and status text "Text was truncated or one or more characters had no match in the target code page.".
 (SQL Server Import and Export Wizard)

  Error 0xc020902a: Data Flow Task 1: The "output column "Column 0" (10)" failed because truncation occurred, and the truncation row disposition on "output column "Column 0" (10)" specifies failure on truncation. A truncation error occurred on the specified object of the specified component.
 (SQL Server Import and Export Wizard)

  Error 0xc0202092: Data Flow Task 1: An error occurred while processing file "H:\servername\Account.20151201.dat\Account.20151201.dat" on data row 109.
 (SQL Server Import and Export Wizard)

 Error 0xc0047038: Data Flow Task 1: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED.  The PrimeOutput method on component "Source - Account_20151201_dat" (1) returned error code 0xC0202092.  The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing.  There may be error messages posted before this with more information about the failure.
 (SQL Server Import and Export Wizard)

注意:我有数据库中的所有列 table 有 255 个字符。

请告诉我,如何解决这个问题?我怎样才能成功地将它导入我的数据库。

使用正确的数据类型和数据长度配置平面文件源。似乎从文件接收到的数据超过了您定义的数据长度,导致截断。

您的第一个错误显示您尝试导入其中一列的文本大于数据库中列的大小(在目标数据库 table), 因此,将数据库中的列大小更改为更大: 更改您的 TABLE,为 VARCHAR(255) 列设置更多字符,

对于第二个错误,您的 DAT 文件中的某些行似乎少于或多于 20 列,这些列与您的 table 不匹配,可能在第 109 行中出现错误。 希望对你有帮助