Eu tenho uma coluna varbinary(max) que preciso importar em massa. Os dados que estou colocando nesta coluna são um byte[] em C#. Como faço para formatar os dados no arquivo delimitado por vírgula usado para importação em massa? Em outras palavras, como faço para converter de um byte[] para uma string de maneira que o utilitário bcp aceite?
relate perguntas
-
SQL Server - Como as páginas de dados são armazenadas ao usar um índice clusterizado
-
Preciso de índices separados para cada tipo de consulta ou um índice de várias colunas funcionará?
-
Quando devo usar uma restrição exclusiva em vez de um índice exclusivo?
-
Quais são as principais causas de deadlocks e podem ser evitadas?
-
Como determinar se um Índice é necessário ou necessário
Um valor varbinary está no formato
0x01020304
para leitura do SQL Server.Portanto, seu CSV seria
Editar maio de 2013,
Após o teste, não consigo fazer isso funcionar com BULK INSERT com ou sem um arquivo de formato.
Vou postar algo mais quando eu começar a trabalhar. não consigo deletar essa resposta
Você pode usar o formato nativo unicode BCP para importar/exportar. Use
bcp -n
para a exportação e aWITH (DATAFILETYPE='widenative')
cláusula para importação. Clique no link para ler mais.Eu tenho que trabalhar. Seus dados varbinary devem estar em forma
424C4F4220434F4E54454E54
de arquivo csv. E você também deve especificar a página de código correta do arquivo csv.Eu tenho a seguinte tabela:
e consulta de importação em massa:
Funciona bem para o arquivo csv com codificação windows-1251:
Aqui, o valor
424C4F4220434F4E54454E54
está simplesmenteBLOB CONTENT
na forma binária.