none
Converter dados de uma Stored Procedure RRS feed

  • Pergunta

  • Boa tarde pessoal,

    Tenho um diretório no meu servidor que contém várias pastas que estão nomeadas por uma sequencia de números cada.

    Até ai consegui fazer a relação através da Proc:

    EXEC master.dbo.xp_dirtree N'd:\dados\Operações', 1, 1

    Tenho o seguinte resultado:

    Gostaria de converter estes números para numeric. Tem possibilidade?

    Obrigado

    quinta-feira, 9 de fevereiro de 2012 18:07

Respostas

  • declare @result table (subdiretorio varchar(8000),depth int, [file] int) declare @arquivo varchar(8000) insert into @result EXEC master.dbo.xp_dirtree N'd:\dados\Operações', 1, 1 select convert(numeric(18,0),subdiretorio) from @result select convert(numeric(18,2),subdiretorio) from @result

    Paulo Katsuo Katayama Junior

    sexta-feira, 10 de fevereiro de 2012 17:21

Todas as Respostas

  • Junior,

    Acredito que sim, você poderia através das funções Convert ou Cast realizar a conversão.

    Veja abaixo o exemplo:

    Select Convert(Numeric(10),00329355872)
    
    Select Cast(00329355872 As Numeric(10))


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]

    sexta-feira, 10 de fevereiro de 2012 12:41
  • Junior, 

    Obrigado pela a atenção!

    A conversão em si é tranquilo.

    A minha dificuldade é fazer com que esse resultado da Stored Procedure possa ser manipulado, no caso convertido para numeric.

    Obrigado

    sexta-feira, 10 de fevereiro de 2012 12:54
  • Junior,

    Entendi, o resultado pode ser manipulado e também será dependendo da forma que o mesmo for feito.

    Vale ressaltar que tanto o Numeric como o Decimal, são os tipos de dados com maior precisão de casas decimais.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]

    sexta-feira, 10 de fevereiro de 2012 13:00
  • declare @result table (subdiretorio varchar(8000),depth int, [file] int) declare @arquivo varchar(8000) insert into @result EXEC master.dbo.xp_dirtree N'd:\dados\Operações', 1, 1 select convert(numeric(18,0),subdiretorio) from @result select convert(numeric(18,2),subdiretorio) from @result

    Paulo Katsuo Katayama Junior

    sexta-feira, 10 de fevereiro de 2012 17:21
  • Ótimo Paulo! Era isso que estava precisando.

    Muito Obrigado!!!

    sexta-feira, 10 de fevereiro de 2012 19:15