Erro ao importar xml maior que 2GB

24/03/2014

0

Pessoal,

Tem algum jeito de importar um arquivo xml maior que 2GB no SQL Server?
Uso a versão 2008 R2.

An XML operation resulted an XML data type exceeding 2GB in size. Operation aborted.

Fico grato pela ajuda.
Thiago Costa

Thiago Costa

Responder

Posts

07/04/2014

Thiago Costa

Pessoal,

To precisando de ajuda.

Tem alguém que já conseguiu importar mais de 2GB de uma xml para o SQL Server? Como fez?

Grato.
Responder

08/04/2014

Fabiano Carvalho

Como você está realizando a importação? Fiz algumas pesquisas e esse é o limite do SQL.
Já pensou em fracionar esse arquivo?
Responder

08/04/2014

Thiago Costa

Olá Fabiano!

Obrigado por responder.

Estou utilizando a instrução abaixo:

Declare @doc xml
Declare @hDoc int

set @doc=(SELECT CONVERT(xml,bulkcolumn,2)
FROM
OPENROWSET (BULK 'C:\Documents and Settings\thiago\Desktop\Arquivo.XML',
SINGLE_BLOB) AS XMLDATA)

exec sp_xml_preparedocument @hDoc OUTPUT, @doc

INSERT INTO [BD_TESTE].[dbo].[tb_xmlTESTE]
SELECT *
FROM OPENXML(@hDoc, '/Doc3040/Cli/Op/Venc',2)
with (
  ,vColuna float '@v330'
 )


O xml tem 3.5GB.

Eu não consigo abrir este arquivo em programa nenhum por causa do tamanho. Tenho outros arquivos com a mesma estrutura com menos de 2GB e consigo importar perfeitamente.
Responder

08/04/2014

Fabiano Carvalho

Sigle BLOB, só aceita no máximo 2GB.
As alternativas que achei foram: Ler com SSIS ou criar uma CLR.
Com SSIS acredito que seja mais simples de resolver.

Voce pode ler com SSIS, e criar um output em CSV.
Responder

08/04/2014

Thiago Costa

Vou tentar com SSIS.

Valeu pela ajuda!
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar