Ir para conteúdo
ukow

Erro de UPDATE "Tipos incompatíveis"

Recommended Posts

Olá!

Estou fazendo um teste para atualizar uma informação em um dos meus itens do banco de dados; porém houve um erro e não consigo decifra-lo. "Tipos incompatíveis"

 

Busco as informações no banco:

 

<%Dim caminho, conexao, rsProduto, seleciona%>
<%
caminho = "D:\web\LocalUser\divinho\banco\db.mdb"
Set conexao = Server.CreateObject("ADODB.Connection")
conexao.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&caminho&";"
%>
<%
Set rsProduto = Server.CreateObject("ADODB.Recordset")
seleciona = "SELECT * from Produtos where Cod_produto = "& request("cod")
rsProduto.Open seleciona, conexao
Dim cod
cod = request("cod")
%>
<FORM name="frmPrincipal" method="post" id="frmPrincipal" action="teste.asp?cod=<%=cod%>">
<input type=text name=codigo value="<%=rsProduto("Cod_produto")%>">
<input type=text name=nome value="<%=rsProduto("Nome")%>">
<input type="Submit" value="Enviar ">
</form>
Realizando o UPDATE
<%Dim caminho, conexao%>
<%
caminho = "D:\web\LocalUser\divinho\banco\db.mdb"
Set conexao = Server.CreateObject("ADODB.Connection")
conexao.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&caminho&";"
%>
<%
Dim sql, nome, cod, executecmd
nome = request.form("nome")
cod = request.form("codigo")
sql = "update Produtos set "
sql = sql & " Nome = '" & nome & "'"
sql = sql & " where Cod_produto = " & cod
call executecmd(sql)
Response.Redirect "teste2.asp"
%>

Podem testar através do link: http://divinho.com.br/teste2.asp?cod=344

 

Agradeço se alguém puder ajudar!

:D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde. 

Amigos, sou novo no forum. 

Estou com o seguinte problema e precisando de ajuda, se postei a duvida em local errado, me desculpa. 

 

Segue erro:

Erro de tempo de execução do Microsoft VBScript erro '800a000d'

Tipos incompatíveis: '[string: "P"]'

/wireless/sacarF.asp, linha 202

 

imagem: image.png.475c9663b05d6e2d05abf9d7b63527cb.png

 

Deveria montar a tela a seguir, circulado em preto:

image.png.5295ed5aa16111ceff773ad4eb97e93b.png

 

segue codigo fonte abaixo:

 

set rs3 = server.createobject("ADODB.Recordset")
    if left(session("ref"),1)="8" or left(session("ref"),1)="9"  or left(session("ref"),1)="6" then
    '    rs3.open "select requested as requested1,sacado=(select sum(picked) from shpdet a where refdoc1='" & trim(session("doc")) & "' and a.itemnumber='" & trim(session("ref")) & "'),boxes=(select count(*) from shpdet b where refdoc1='" & trim(session("doc")) & "' and b.itemnumber='" & trim(session("ref")) & "') from shphdr where refdoc1='" & trim(session("doc")) & "' and itemnumber='" & trim(session("ref")) & "'",seguridad,VaradOpenKeyset,VaradLockOptimistic
        rs3.open "select sum(requested) as requested1,sum(picked) as sacado,count(*) as contador,sum(boxes) as boxes from shphdr where refdoc1='" & trim(session("doc")) & "' and itemnumber='" & trim(session("ref")) & "'",seguridad,VaradOpenKeyset,VaradLockOptimistic
            
    else
        rs3.open "select sum(requested) as requested1,sum(picked) as sacado,count(*) as contador,sum(boxes) as boxes from shphdr where refdoc1='" & trim(session("doc")) & "' and itemnumber='" & trim(session("ref")) & "'",seguridad,VaradOpenKeyset,VaradLockOptimistic
    end if
    if cdbl(rs3("contador")) > 0 then
        pedido=rs3("requested1")
        if cdbl(cxb)>0 then
            bultosT = cdbl(rs3("requested1"))/cdbl(cxb)
        end if
        sacado=cdbl(rs3("sacado"))
        bultosS=cdbl(rs3("boxes"))
        bultosD=(cdbl(bultosT)-cdbl(bultosS))
        sacadoD = (cdbl(pedido)-cdbl(sacado))
        set rs3 = nothing
    end if 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por rogfranz
      Olá pessoal! Então, estou desenvolvendo um projeto que pode tomar grandes proporções, e estou com uma dúvida que está me tirando o sono!

      Digamos que trata-se de um sistema de pedidos só pra usar como exemplo.

      Vários usuários vão poder se cadastrar no sistema e criar seus pedidos.

      Teremos então as tabelas

      usuarios
      pedidos
      pedido_itens
       
       
      minha dúvida está na seguinte questão.
      Uso bancos de dados separados para cada cliente ?  
      ou
      Uma tabela por exemplo dos pedidos vinculo o id do usuário para todos usuários do sistema ?

      POR FAVOR! Me Deem a opinião do que vocês fariam! e Por que!

      Trazendo para a realidade do meu projeto uma estimativa de volume de dados que eu imagino.
      Levando em conta que um usuário pode cadastrar a média de 10 "pedidos" no mês com aproximadamente 500 ítens

      Agradeço muito a contribuição de vocês!
    • Por LuanMartinsTI
      Tenho o seguinte problema, eu preciso dar um select em duas tabelas, ou ter dois selects tanto faz, eu fiz com inner join e com union all mas nao consigo ter o resultado que eu desejo
      O problema é o seguinte> Pra saber quantos usuarios eu tenho em cada grupo eu preciso dar um select na membros grupo com o id do grupo, mas eu preciso mostrar apenas os 5 primeiros grupos com mais gente, eu nao tenho na tabela falando grupo 1 tem 50 membros, eu tenho 50 linhas com grupo 1 e id do usuario, como eu transformo isso no que eu quero? a unica forma q eu pensei é criar um campo novo em grupos e colocar la o resultado de rowCount, mas gostaria de saber se é possivel fazer sem, eu ja consigo mostrar quantos usuarios cada grupo tem, eu nao consigo mostrar é em ordem e nao é so dar o asc o problema é na logica provavelmente, mas se for possivel resolver isso com uma unica query ficarei grato
      tabela 1
      grupos( id nome dono created stat ) tabela 2
      membros_grupo( id grupo_id user_id )  
      PHP
      public function ultimosGrupos($limite){ try { $query = "SELECT * FROM groups ORDER BY id ASC LIMIT :limite"; $this->Select = $this->Conn->prepare($query); $this->Select->bindParam(':limite' , $limite, PDO::PARAM_INT); $this->Select->execute(); if($this->Select->rowCount() > 0){ return $this->Select->fetchAll(PDO::FETCH_ASSOC); }else{ return FALSE; } } catch (PDOException $exc) { exibeMensagens("Erro ao consultar. {$exc->getMessage()}", WS_ERROR); } } public function users_por_grupo($id){ try { $query = "SELECT * FROM group_memberships WHERE group_id = :id"; $this->Select = $this->Conn->prepare($query); $this->Select->bindParam(':id' , $id, PDO::PARAM_INT); $this->Select->execute(); return $this->Select->rowCount(); } catch (PDOException $exc) { exibeMensagens("Erro ao consultar. {$exc->getMessage()}", WS_ERROR); } }  
    • Por wolf_black
      preciso Escrever um algoritmo que leia três notas, calcule e imprima a média aritmética.
       
      #include <stdio.h>
      #include <stdlib.h>
      main () {
      float n1,n2,n3,media;
      printf(" digite a primeira nota");
      scanf("%f" & n1);
      printf("digite a segunda nota"); 
      scanf("%f" & n2);
      printf("digite a terceira nota");
      scanf("%f" & n3);
      media=n1+n2+n3/5;
      printf("a media foi: %f ",media                
      system("pause");
      return 0;
      }
      progama ficou assim mas esat dando o seguinte erros:

      7    14    C:\Users\User\Documents\atividade 2.cpp    [Error] invalid operands of types 'const char [3]' and 'float' to binary 'operator&'
      9    14    C:\Users\User\Documents\atividade 2.cpp    [Error] invalid operands of types 'const char [3]' and 'float' to binary 'operator&'
      11    14    C:\Users\User\Documents\atividade 2.cpp    [Error] invalid operands of types 'const char [3]' and 'float' to binary 'operator&'
      15    1    C:\Users\User\Documents\atividade 2.cpp    [Error] expected ')' before 'system'
       
      agradeço ajuda desde já. obrigada
       
    • Por Leo_2019
      Sou novato em access e vba. Estou utilizando uma textbox e gostaria de colar vários nomes na textbox e ao clicar no botão salvar gostaria que fosse inserido todos os valores na tabela, sendo cada nome como um registro, ou seja, incluir em lote ao invés de um por um. Se existir outra forma diferente da textbox também é válido. Tal propósito é devido um sistema de novos colaboradores que tenho que criar. Já criei 80%, mas está faltando essa parte, uma vez que, tentei de várias formas mas não consegui e estou precisando muito dessa ajuda. Tentei inserir a imagem do código que eu fiz, mas não foi possível devido ao tamanho. Desde já agradeço.
    • Por Fabiana Gomes
      Pessoal, boa noite
       
      Preciso de um help!!
       
      Tenho a tabela ENDERECO e na coluna LOUGRADOURO (40) preciso diminuir alguns endereços para 30 caracteres.
      Basicamente preciso cortar a partir da casa 30.
       
      Alguem pode me ajudar?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.