Preciso de uma SP, que exporte os dados do SQL Server para o Excel. Acho que a função operowset irá me ajudar, mas todos os campos Int ou DateTime são exibidos no excel como Texto. O que posso fazer para que os dados no excel sejam exibidos compativeis com os tipos do SQL Server?
Esse é meu código de teste:
Declare @PathArqXls varchar(200),
@SQLOrigem varchar(2000),
@SQLDestino varchar(2000),
@CmdSql varchar(5000)
Set @PathArqXls = 'C:\FAMTAB.XLS'
Set @SQLOrigem = 'Select TprCod, FamCod, FamDes, FamUsuLog, FamUsuDta, FamUltUsu, FamUltDta from FAMTAB'
Set @SQLDestino = 'SELECT TprCod, FamCod, FamDes, FamUsuLog, FamUsuDta, FamUltUsu, FamUltDta FROM [PLAN1$]'
--TprCod and FamCod are Int
--FamUsuDta and FamUltDta are DateTime
Set @CmdSql = 'INSERT INTO OPENROWSET(''Microsoft.Jet.OLEDB.4.0'', ''Excel 8.0;Database=' + @PathArqXls + ''',''' + @SQLDestino +''')' + @SQLOrigem
Pergunta
Matheus - Sistema Gestor
Olá,
Preciso de uma SP, que exporte os dados do SQL Server para o Excel. Acho que a função operowset irá me ajudar, mas todos os campos Int ou DateTime são exibidos no excel como Texto. O que posso fazer para que os dados no excel sejam exibidos compativeis com os tipos do SQL Server?
Esse é meu código de teste:
Declare @PathArqXls varchar(200),
@SQLOrigem varchar(2000),
@SQLDestino varchar(2000),
@CmdSql varchar(5000)
Set @PathArqXls = 'C:\FAMTAB.XLS'
Set @SQLOrigem = 'Select TprCod, FamCod, FamDes, FamUsuLog, FamUsuDta, FamUltUsu, FamUltDta from FAMTAB'
Set @SQLDestino = 'SELECT TprCod, FamCod, FamDes, FamUsuLog, FamUsuDta, FamUltUsu, FamUltDta FROM [PLAN1$]'
--TprCod and FamCod are Int
--FamUsuDta and FamUltDta are DateTime
Set @CmdSql = 'INSERT INTO OPENROWSET(''Microsoft.Jet.OLEDB.4.0'', ''Excel 8.0;Database=' + @PathArqXls + ''',''' + @SQLDestino +''')' + @SQLOrigem
exec(@CmdSQl)
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.