locked
ref. conversao de data type bigint RRS feed

  • Pergunta

  •  

     Pessoal,

     

     Estou criando algumas query's do log do isa 2004 e a coluna clientip está no formato bigint, quando dou select nesta coluna nao consigo vizualizar o ip devido ao formato. Como faço para converter e estar visualizando o ip desta coluna ?

     

    Sds,

    Fabio.

    quarta-feira, 11 de abril de 2007 17:57

Respostas

Todas as Respostas

  • convert(numeric(20),campo_bigint)

     

    Abs;

    quarta-feira, 11 de abril de 2007 19:12
  • Marcelo,

     

    Fiz conforme vc passou, mas o conteúdo está vindo igual, sem converter para o numero IP.

     

    Sds,

    Fábio Dantas.

    quarta-feira, 11 de abril de 2007 19:46
  • Fabio,

     

    Já tentou converter para VarChar?

     

     

      convert(VarChar(20),campo_bigint)
    quarta-feira, 11 de abril de 2007 20:01
    Moderador
  • Junior,

     

    Aconteceu o mesmo caso do anterior, utilizando o convert (decimal), o conteúdo que está trazendo é o mesmo que vejo na campo com data type bigint.

     

    Sds,

    Fábio.

    quarta-feira, 11 de abril de 2007 20:09
  • Fabio,

     

    Como o resultado esta sendo exibido no campo bigint?

     

    E como você deseja exibir, mostre a formatação?

    quarta-feira, 11 de abril de 2007 20:20
    Moderador
  • Junior,

     

    Hoje quando executo o select, vem como resultado na coluna clientip o seguinte valor 2886732201 e  o ip deveria ser 17216....

    é isso que estou querendo como resultado, ver o valor do ip que foi armazenado neste campo.

     

    Sds,

    Fábio.

    quarta-feira, 11 de abril de 2007 20:43
  • Fabio, até agora não entendi como vc quer ver o IP? Ele está mostrando 2886732201 e vc quer ver 17216...?

    Qual é o problema afinal? A formatação dos números ou distorção dos dados?

    Na pior das hipóteses, se eu fosse vc mudava o campo de bigint para numeric.

    quinta-feira, 12 de abril de 2007 14:57
  •  

     Vou explicar melhor.

     

    O Isa Server 2004 tem a opção de gravar o log no SQL, estou criando uma base para extração de relatórios e a tabela webproxylog que o Isa cria tem uma coluna chamada clientip com formato de bigint.  Quando dou um select nesta base do Isa essa coluna vem com o conteúdo diferente do numero IP, é como esse formato fizesse um tipo de compactação.

     

    Já tentei mudar o formato para decimal, só que a alteração mantém o numero no formato do bigint. Se eu utilizar alguma ferramenta de mercado para extracao de relatorio, essa coluna clientip mostra corretamente o numero do IP. Portanto eu acredito que precise fazer alguma conversão, só que não encontrei o jeito correto. Por isso a minha questão é em saber como eu transformo ou converto o conteúdo do formato bigint para um outro formato, mas que traga o valor original.

     

    EX: Na coluna clientip no format bigint está mostrando  2886732201, esse número está correspondendo a um número IP, ouse seja, para cada IP é um numero diferente. E o valor que preciso visualizar desta coluna seria 172.16.9.XXX.

     

     Agradeço desde já a colaboração de vocês.

     

    sexta-feira, 13 de abril de 2007 12:19
  • Isso resolveu o meu problema, tenho certeza que resolvera o seu tb.

     

    http://support.microsoft.com/default.aspx/kb/891223/pt-br

    terça-feira, 3 de julho de 2007 17:10
  • Olá jbertozi,

     

    Valeu pelo retorno !!

     

    um abraço

    Nilton Pinheiro

    www.mcdbabrasil.com.br

    quarta-feira, 4 de julho de 2007 00:36
    Moderador
  • SELECT

    CAST(ClientIP / 256 / 256 / 256 % 256 AS VARCHAR) + '.' +

    CAST(ClientIP / 256 / 256 % 256 AS VARCHAR) + '.' +

    CAST(ClientIP / 256 % 256 AS VARCHAR) + '.' +

    CAST(ClientIP % 256 AS VARCHAR)

    AS [Nice Source Ip], webproxylog.*

    From webproxylog
    sexta-feira, 3 de abril de 2009 17:25