none
Tratar acentos na importação de excel para SQL Server RRS feed

  • Pergunta

  • Bom dia pessoas,

    Fiz uma importação de um arquivo csv para o SQL, usando o bulk insert.

    A tabela foi populada, entretanto com erros de formatação, os acentos e caracteres especiais como "ç", foram quebrados.

    Alguém pode me ajudar ?

    Obrigada

    sábado, 16 de agosto de 2014 15:27

Respostas

  • Helena,

    Como o José indicou, verifique o Collation da tabela seu banco de dados para ter certeza que aceita caracteres especiais. Os campos de uma tabela podem ter Collations diferentes do que o especificado no banco de dados. Utilize o comando "sp_help SuaTabela" para verificar o(s) Collation(s) utilizado(s) na sua tabela.

    Após confirmar se o Collation utilizado aceita caracteres especiais, ajuste seu BUL INSERT para utilizar o CODEPAGE "ACP".

    Veja abaixo um modelo para adaptar à sua necessidade:

    BULK INSERT TB_IMPORTACAO
    FROM 'C:\ARQUIVOS\IMPORTACAO\TESTE.TXT'
    WITH(CODEPAGE = 'ACP', FIELDTERMINATOR = '|');
    GO

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    segunda-feira, 18 de agosto de 2014 11:30
    Moderador
  • Deleted
    sábado, 16 de agosto de 2014 22:01

Todas as Respostas

  • Deleted
    sábado, 16 de agosto de 2014 22:01
  • Helena,

    Como o José indicou, verifique o Collation da tabela seu banco de dados para ter certeza que aceita caracteres especiais. Os campos de uma tabela podem ter Collations diferentes do que o especificado no banco de dados. Utilize o comando "sp_help SuaTabela" para verificar o(s) Collation(s) utilizado(s) na sua tabela.

    Após confirmar se o Collation utilizado aceita caracteres especiais, ajuste seu BUL INSERT para utilizar o CODEPAGE "ACP".

    Veja abaixo um modelo para adaptar à sua necessidade:

    BULK INSERT TB_IMPORTACAO
    FROM 'C:\ARQUIVOS\IMPORTACAO\TESTE.TXT'
    WITH(CODEPAGE = 'ACP', FIELDTERMINATOR = '|');
    GO

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    segunda-feira, 18 de agosto de 2014 11:30
    Moderador
  • Durval, 

    Já havia alterado os collates e o CODEPAGE me salvou.

    Obrigada.

    terça-feira, 2 de setembro de 2014 13:38