• 0
Sign in to follow this  
rodrigotnoma

Instrução Update

Question

Não esta ocorrendo nenhuma alteração no meu BD, alguém poderia me ajudar a encontrar o erro?

Private Sub Command1_Click()

Set cn = New ADODB.Connection

connstring = "provider=microsoft.jet.oledb.4.0;data source=c:\natureza\estoque_emb.mdb;"

cn.Open connstring

produtos = Combo1.Text

quantidade = Text1.Text

Set rq = cn.Execute("update tb_estoq_emb set quantidade=' " & quantidade & " ' where produtos=' " & produtos & " ' ")

MsgBox ("cadastrado!!!")

End Sub

Fiz teste para verificar se as variaveis estão recebendo os valores e esta ok, so na instrução SQL que as variaveis ficam com valores "Empty".

Obrigado

Share this post


Link to post
Share on other sites

6 answers to this question

Recommended Posts

  • 0

produtos = Combo1.Text

quantidade = Text1.Text

Set rq = cn.Execute("update tb_estoq_emb set quantidade=' " & quantidade & " ' where produtos=' " & produtos & " ' ")

Obs.

Onde o campo de seu banco de dados for definido como Numérico não te necessidade da “aspa simples” ‘

Nesse caso você pode referenciar os próprios objetos.

Ex:

Set rq = cn.Execute("UPDATE tb_estoq_emb SET quantidade=' " & Text1.Text & " ' where produtos=' " & Combo1.Text & " ' ")

Suponha que o campo quantidade é numérico, então fica assim:

Set rq = cn.Execute("UPDATE tb_estoq_emb SET quantidade= " & Text1.Text & " where produtos=' " & Combo1.Text & " ' ")

Acho que ajuda...

abraço... ;)

Share this post


Link to post
Share on other sites
  • 0

Cara, não deu certo.....o mais engraçado é que o insert vai normal, so o update que não da certo, e também não da mensagem de erro....

Os dois campos estão como textos...nunca tive esse problema com update....

Share this post


Link to post
Share on other sites
  • 0

where produtos=' " & Combo1.Text & " ' "

Amigão, o conteúdo desse controle Combo1 é exatamente igual ao que você tem cadastrado no campo produto?

Share this post


Link to post
Share on other sites
  • 0

Fiz um teste:

Private Sub Command1_Click()

Set cn = New ADODB.Connection

connstring = "provider=microsoft.jet.oledb.4.0;data source=c:\natureza\produtos.mdb;"

cn.Open connstring

produtos = Text1.Text

Set rq = cn.Execute("select * from tb_produtos where produtos=' " & Text1.Text & " ' ")

If Not rq.EOF Then

Text2.Text = rq("quantidade")

Else

MsgBox "Produto não encontrado!!!"

End If

End Sub

E mesmo assim ele da mensagem de "Produto não encontrado!!!"

Devo estar errando em alguma coisa muito boba ou esta com algum "pau", porque já fiz isso milhares de vezes e nunca ocorreu isso.

Se algume puder ajudar...

Obrigado

Share this post


Link to post
Share on other sites
  • 0

e você tem certeza que o codigo que você procura existe no banco??

ou faz o seguinte, poe a bolinha vermelha (aperta F9) na linha

Set rq = cn.Execute("select * from tb_produtos where produtos=' " & Text1.Text & " ' ")
e rode o programa. quando chegar la, digita no immediate
? "select * from tb_produtos where produtos=' " & Text1.Text & " ' "

e aperta enter.

ai execute a consulta direto no access pra ver o que retorna.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this