Caracteres acentuados não importados corretamente com o BULK INSERT
Estou importando um arquivo CSV de origem, não sei a codificação de origem e só posso ver�
(Codificação ANSI) ou�
(UTF8-without-BOM encoding) quando eu abro o arquivo comNotepad++
(questão relacionada).
Este arquivo foi importado para o banco de dadosmssql-2008
usandobulk insert
:
DECLARE @bulkinsert NVARCHAR(2000)
SET @bulkinsert =
N'BULK INSERT #TempData FROM ''' +
@FilePath +
N''' WITH (FIRSTROW = 2,FIELDTERMINATOR = ''","'',ROWTERMINATOR =''\n'')'
EXEC sp_executesql @bulkinsert
Este é então copiado para o regulartable1
de#tempData
em uma coluna1 (varchar()
). Agora, quando eu olho para issotable1
Vejo alguns?
no lugar desses personagens.
Eu tenteicast
paranvarchar()
mas isso não ajuda.
quando eu descobri o que esses personagens realmente são com o suporte do link que baixamos ao mesmo tempo, vi que os personagens estavamé
,ä
,å
e assim por diante.
eu usariareplace
para corrigir os dados, mas eu preciso fazer alguns códigos feios e olhar para o padrão individual de palavras e substituir, por isso parece difícil.
agrupamento de banco de dados / tabela:SQL_Latin1_General_CP1_CI_AS
coluna1 (Varchar (80))
Posso alterar esses caracteres para caracteres do tipo inglês ou os caracteres originais em vez de?
marcas.
Eu olhei paraSuporte a Agrupamento e Unicode o que não me ajudou. Eu entendi o que significa sobre codificação, mas não me forneceuo que fazer. Eu olhei para a maioria dos posts aqui emstackoverflow Sim, existem alguns posts sobre isso, mas não coincidiram com a minha pesquisa.
Eu não consigo descobrir onde está o problema.