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
Question
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 to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.