Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Erro de conversão de dados de carregamento em massa (tipo incompatível ou caractere inválido para a página de código especificada) para a linha 1, coluna 4 (ano)


Tente usar um arquivo de formato, pois seu arquivo de dados tem apenas 4 colunas. Caso contrário, tente OPENROWSET ou use uma mesa de preparo.

myTestFormatFiles.Fmt pode parecer:
9.0
4
1       SQLINT        0       3       ","      1     StudentNo      ""
2       SQLCHAR       0       100     ","      2     FirstName      SQL_Latin1_General_CP1_CI_AS
3       SQLCHAR       0       100     ","      3     LastName       SQL_Latin1_General_CP1_CI_AS
4       SQLINT        0       4       "\r\n"   4     Year           "


(fonte:microsoft.com)

Este tutorial sobre como pular uma coluna com BULK INSERT também pode ajudar.

Sua declaração então ficaria assim:
USE xta9354
GO
BULK INSERT xta9354.dbo.Students
    FROM 'd:\userdata\xta9_Students.txt' 
    WITH (FORMATFILE = 'C:\myTestFormatFiles.Fmt')