none
Envio de informações sobre usuarios para SQL Server RRS feed

  • Pergunta

  • Olá,

    Estou fazendo uma página que recupera informações sobre os usuarios que acessam a página, como ip, navegador, data e horário de acesso, e manda esses dados para um bd no sql server, com esse código:

    <%
       Dim ip
       Dim browser
       Dim connstring
       Dim conn
       Dim rsquery

       connstring = "DRIVER={SQL Server};SERVER=(local); Initial Catalog=info_usuarios"

       ip=request.servervariables("remote_addr")
       browser=request.servervariables("http_user_agent")
      
       set conn = server.createobject("adodb.connection")

       conn.open connstring

       set rsquery = conn.execute("INSERT INTO Tab_usuarios (ip_usuario, browser_usuario, data_acesso) VALUES('" & ip & "','" & browser & "','" & now() & "')")

       set rsquery=nothing
       conn.close
       set conn=nothing
    %>

    Porém, está sendo retornado o seguinte erro:

    Error Type:
    Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
    [Microsoft][ODBC SQL Server Driver][SQL Server]The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.


    Como eu posso corrigí-lo?

    Obrigado.

    sexta-feira, 16 de fevereiro de 2007 13:00

Respostas

  • O tipo de dados de um campo da sua tabela não corresponde aos dados que vocês está tentando salvar.

    o erro diz que a conversão do tipo char para datetime não é permitida.

    Dá uma revisada nos campos.
    Tira os apóstrofes da data (now()).
    ("INSERT INTO Tab_usuarios (ip_usuario, browser_usuario, data_acesso) VALUES('" & ip & "','" & browser & "'," & now() & ")")
    Se não funcionar tenta:
    ("INSERT INTO Tab_usuarios (ip_usuario, browser_usuario, data_acesso) VALUES('" & ip & "','" & browser & "',#" & now() & "#)")

    Mas já é pra funcionar no primeiro exemplo

    Abraços, espero ter ajudado,
    Se foi útil, marque como resposta.

    sexta-feira, 16 de fevereiro de 2007 13:25