Para não ocorrer erro carregar um arquivo XML via OPENROWSET, quando o XML possui acentuação (Illegal Characters / Illegal Characters), basta adicionar o encoding na primeira linha do XML:
<?xml version="1.0" encoding = "ISO-8859-1" ?>
quinta-feira, 29 de setembro de 2011
Bulk Insert e BCP / Queryout sem perder acentuação (SQL Server)
Para não perder a acentuação das palavras ao carregar um TXT via BULK INSERT ou ao exportar uma tabela via QUERYOUT, é necessário definir a CODEPAGE/COLLATION.
É simples:
BULK INSERT - Exemplo:
set @cmd = 'bulk insert TABELA from
''' + @FileName + ''' WITH (CODEPAGE = 1252)'
exec(@cmd)
BCP/QUERYOUT - Exemplo:
set @cmd = 'bcp "SELECT * FROM ##atu_conf" queryout ' + @FileName + ' -T -c -C1252 -t, '
EXEC xp_cmdshell @cmd
É simples:
BULK INSERT - Exemplo:
set @cmd = 'bulk insert TABELA from
''' + @FileName + ''' WITH (CODEPAGE = 1252)'
exec(@cmd)
BCP/QUERYOUT - Exemplo:
set @cmd = 'bcp "SELECT * FROM ##atu_conf" queryout ' + @FileName + ' -T -c -C1252 -t, '
EXEC xp_cmdshell @cmd
Marcadores:
sql server; acentuação; bcp; bulk insert;
Assinar:
Postagens (Atom)