Estoy usando BULK INSERT
para importar un file CSV. Una de las columnas en el file CSV contiene algunos valores que contienen fracciones (por ejemplo, 1 1m½f
f).
No necesito hacer ninguna operación matemática en las fracciones, ya que los valores solo se usarán para mostrar, así que he establecido la columna como nvarchar
. BULK INSERT
funciona, pero cuando veo los loggings en SQL, la fracción ha sido reemplazada por un símbolo de centavo ( ¢
), por lo que el text mostrado es 1m¢f
.
Me interesa saber por qué sucede esto y cualquier idea sobre cómo resolver el problema. El command BULK INSERT
es:
BULK INSERT dbo.temp FROM 'C:\Temp\file.csv' WITH (FIELDTERMINATOR = ',', ROWTERMINATOR = '\n' );
Necesita BULK INSERT
usando CODEPAGE = 'ACP'
, que convierte los datos de cadena de la página de códigos de Windows a la página de códigos de SQL Server.
BULK INSERT dbo.temp FROM 'C:\Temp\file.csv' WITH (FIELDTERMINATOR = ',', ROWTERMINATOR = '\n', CODEPAGE = 'ACP');