Jump to content


Photo

Comando Update Naun Funciona...


  • Faça o login para participar
14 replies to this topic

#1 rmax209

rmax209

    12 Horas

  • Usuários
  • 120 posts
  • Sexo:Não informado

Posted 20/04/2006, 12:46

Preciso atualizar um campo "senha" por uma pagina em ASP q acessa o DB em Access com o comando UPDATE mas da este erro:

Microsoft JET Database Engine (0x80040E10)
Nenhum valor foi fornecido para um ou mais parâmetros necessários.
/banco_dados/alterar.asp, line 21

a linha 21 é o comando:

Set ObjRs = objConn.Execute(strQuery)



O código todo é esse:

<%
'Option Explicit
Response.Expires = 0
Dim objConn, objRs, strQuery, strConnection, strDBPath, contador, SortBy, id, senha

Set objConn = Server.CreateObject("ADODB.Connection")

strDBPath = Server.MapPath("../../../../databases/cadastro.mdb")

objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & ";"


id = "1"
senha = "123"'
strQuery = "UPDATE tabela SET senha = '"&senha&"' WHERE id = '"&id&"'"
Set ObjRs = objConn.Execute(strQuery)


'Fechando as conexões
Set objRs = Nothing
Set objConn = Nothing
%>





Aond esta o erro??? se alguem puder m ajudar fico muito grato (y)

Edição feita por: rmax209, 20/04/2006, 12:48.


#2 Worm

Worm

    Veterano

  • Ex-Admins
  • 1343 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP
  • Interesses:Obter o maximo conhecimento.

Posted 20/04/2006, 16:27

id = 1
senha = "123"
strQuery = "UPDATE tabela SET senha = '" & senha & "' WHERE id = " & id
Set ObjRs = objConn.Execute(strQuery)


Presumindo que seu campo ID seja numerico tente o exemplo acima.

#3 rmax209

rmax209

    12 Horas

  • Usuários
  • 120 posts
  • Sexo:Não informado

Posted 22/04/2006, 10:30

Continua com o mesmo erro... :(


Microsoft JET Database Engine (0x80040E10)
Nenhum valor foi fornecido para um ou mais parâmetros necessários.
/banco_dados/alterar.asp, line 21

#4 Fernando_Ramos

Fernando_Ramos

    Fernando Ramos

  • Usuários
  • 728 posts
  • Sexo:Não informado

Posted 24/04/2006, 11:09

apenas a nivel de teste faça:

strQuery = "UPDATE tabela SET senha = '123' WHERE id = 1"
Set ObjRs = objConn.Execute(strQuery)

OBS.: o nome da sua tabela, realmente é "tabela" ??

abraços!
--
www.ramosinformatica.com
contato@ramosinformatica.com | @rinformatica

Hospedagem de site | Desenvolvimento de Sistemas | Informática em Geral

#5 rmax209

rmax209

    12 Horas

  • Usuários
  • 120 posts
  • Sexo:Não informado

Posted 26/04/2006, 09:17

OBS.: o nome da sua tabela, realmente é "tabela" ??



Naun o nome da tabela é cadastro eu mudei ai so pra exemplo mai tipo se o prob fosse ai daria um erro diferent...

#6 knoxville

knoxville

    Backdoor Man

  • Usuários
  • 951 posts
  • Sexo:Masculino
  • Localidade:Itajaí - SC

Posted 26/04/2006, 09:56

no code tá com o nome CADASTRO e não TABELA?
se o erro tá na linha Set ObjRs = objConn.Execute(strQuery) quer dizer q na verdade o erro tá em strQuery = "UPDATE tabela SET senha = '"&senha&"' WHERE id = '"&id&"'" ou nas variáveis setadas para ele
as variaveis estao certas, logo, o erro é ali msm! :)
o caminho do banco de dados tá certo?
tenta usar assim:
strQuery = "UPDATE tabela SET senha = '"&senha&"' WHERE id = "&id&""

ou pode ser que a sintaxe está certa... ou seja, o problema que tá dando é porke a senha também é um valor numérico! :D
tenta usar strQuery = "UPDATE tabela SET senha = "&senha&" WHERE id = "&id&"" tenho qse certeza que vai dar...
só q daí se for o usuário que escolhe a senha, vc vai ter q usar com as 'aspas simples' mesmo, pq se não vai dar erro qdo tiver alguma letra na variável! :)

é por ai! ^^
testa e mostra ai pra gente o q q dá

Edição feita por: knoxville, 26/04/2006, 09:57.


#7 Fernando_Ramos

Fernando_Ramos

    Fernando Ramos

  • Usuários
  • 728 posts
  • Sexo:Não informado

Posted 26/04/2006, 11:11

o erro aparece por que não esta passando nenhum parametro...ou esta passando de forma errada...

vc fez o teste passando os valores no proprio sql...sem paramentros..por variaveis?

faz..isso para testarmos...
--
www.ramosinformatica.com
contato@ramosinformatica.com | @rinformatica

Hospedagem de site | Desenvolvimento de Sistemas | Informática em Geral

#8 Luis Otávio

Luis Otávio

    Super Veterano

  • Usuários
  • 3113 posts
  • Sexo:Masculino
  • Localidade:Porto Alegre
  • Interesses:- Desenvolvimento de aplicações Web com linguagem server-side PHP.

    - Desenvolvimento de aplicações Web com linguagem cliente-side JavaScript, conhecedor e utilizador da biblioteca jQUERY e todas suas características.

    - Otimização de Desempenho aplicados a performance de banco de dados Mysql.

    - Otimização de Desempenho para servidores Web utilizando-se como Webserver NGINX em conjunto com Varnish.

    - Sólidos conhecimentos no CMS WordPress para novas implementações, manutenção, criação e otimização de Plugins.

    - Práticas de atendimento, relacionamento e suporte ao cliente. Trabalhando voltado ao público desde o lançamento da empresa iPORTO.COM, criando laços e vínculos com os mais de Mil clientes da empresa e os braços do grupo.

Posted 26/04/2006, 14:25

<%
'Option Explicit
Response.Expires = 0
Dim objConn, objRs, strQuery, strConnection, strDBPath, contador, SortBy, id, senha

Set objConn = Server.CreateObject("ADODB.Connection")

strDBPath = Server.MapPath("../../../../databases/cadastro.mdb")

objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & ";"


id = "1"
senha = "123"'
strQuery = "UPDATE tabela SET senha = '"&senha&"' WHERE id = "&id&"
response.write "issu eu copio e colo no forum ====> "&strQuery
response.end

Set ObjRs = objConn.Execute(strQuery)


'Fechando as conexões
Set objRs = Nothing
Set objConn = Nothing
%>


copia e cola, naum muda nada
o q apareceu...?

Edição feita por: Luis Otávio, 26/04/2006, 14:25.

* Otávio Nogueira
* Administração e Configuração de Servidores;
* Combinação Perfeita: NGINX + PHP + VARNISH + HAPROXY
* otavio*iporto.com ~ Tel: +55 51 3366 0177 | +55 51 4063 7343 |
* @iporto

#9 rmax209

rmax209

    12 Horas

  • Usuários
  • 120 posts
  • Sexo:Não informado

Posted 27/04/2006, 14:56

dei uma limpada no codigo seguindo a dica d vcs e tals...

esse é o codigo exatamente como to usando. só q agora naun ta dando mais erro nenhum, porem naun ta alterando a senha no db! :o

<%
'Option Explicit
Response.Expires = 0
Dim objConn, objRs, strQuery, strConnection, strDBPath, contador, SortBy, id, senha

Set objConn = Server.CreateObject("ADODB.Connection")

strDBPath = Server.MapPath("users.mdb")

objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & ";"


id = "1"
senha = "123"
strQuery = "UPDATE usuarios SET senha = "&senha&" WHERE id = "&id&"" 
response.write "ok"
response.end

Set ObjRs = objConn.Execute(strQuery)


'Fechando as conexões
Set objRs = Nothing
Set objConn = Nothing
%>


Fernando_Ramos eu tb acho q é isso o prblema, a parada naun ta enviando corretamente os parametros mas como eu testo desse modo ai q vc falo?

Edição feita por: rmax209, 27/04/2006, 14:59.


#10 Agente Linhares

Agente Linhares

    fuis...abraços!

  • Ex-Admins
  • 3138 posts
  • Sexo:Não informado
  • Localidade:Biritiba Mirim-SP

Posted 27/04/2006, 15:50

dei uma limpada no codigo seguindo a dica d vcs e tals...

esse é o codigo exatamente como to usando. só q agora naun ta dando mais erro nenhum, porem naun ta alterando a senha no db! :o

<%
'Option Explicit
Response.Expires = 0
Dim objConn, objRs, strQuery, strConnection, strDBPath, contador, SortBy, id, senha

Set objConn = Server.CreateObject("ADODB.Connection")

strDBPath = Server.MapPath("users.mdb")

objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & ";"


id = "1"
senha = "123"
strQuery = "UPDATE usuarios SET senha = "&senha&" WHERE id = "&id&"" 
response.write "ok"
response.end

Set ObjRs = objConn.Execute(strQuery)


'Fechando as conexões
Set objRs = Nothing
Set objConn = Nothing
%>


Fernando_Ramos eu tb acho q é isso o prblema, a parada naun ta enviando corretamente os parametros mas como eu testo desse modo ai q vc falo?


tenta assim:

<%
'Option Explicit
Response.Expires = 0
Dim objConn, objRs, strQuery, strConnection, strDBPath, contador, SortBy, id, senha

Set objConn = Server.CreateObject("ADODB.Connection")

strDBPath = Server.MapPath("users.mdb")

objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & ";"


'id = "1"
'senha = "123"
strQuery = "UPDATE usuarios SET senha = 'teste123' WHERE id = 1"
response.write "ok"
response.end

Set ObjRs = objConn.Execute(strQuery)


'Fechando as conexões
Set objRs = Nothing
Set objConn = Nothing
%>

acho que seu problema é porque esta colocando aspas no campo ID que é auto-numeração né? ou nao é?

- o campo "senha', se for campo tipo texto, deve ficar entre aspas simples e duplas.
- o campo "id", se for autonumeração, deve ficar so c/ aspas duplas na hora de por a variavel.

ex. maneira correta:

strQuery = "UPDATE usuarios SET senha = '"&var1&"' WHERE id = "&var2&"

> Busca On-line - A Busca que faltava na Internet! - Cadastre-se!
---------------------------------------------------------------------------
> BRdesign.NET - Soluções em Websites e Sistemas E-Commerce.
---------------------------------------------------------------------------
> BR-ecommerce - Sua loja virtual na internet! - Apenas R$99,90 mensais (hospedagem inclusa)!

#11 rmax209

rmax209

    12 Horas

  • Usuários
  • 120 posts
  • Sexo:Não informado

Posted 27/04/2006, 18:48

acho que seu problema é porque esta colocando aspas no campo ID que é auto-numeração né? ou nao é?



o Campo id é autonumérico sim e a senha poderá conter letras e numeros pois o usuario ira digitar no form todos esses dados vira de um form mais to tentando asssim pra v se funciona... coloquei desse jeito como vc passou mais naun funcionaou tb... kramba q UPDATE dificil d funcionar :( o DELETE e o SELECT na outra aplicação q uso funciona blz mas esse ta dificil... naun ta dando erro nenhum porem continua sem atualizar :o

tirei um screen do db q to usando pra vcs v se tem alguma coisa errada vlw pela ajuda d todos!

Attached File  fotodb.jpg   32.9KB   11 downloads

Edição feita por: rmax209, 27/04/2006, 18:53.


#12 Fernando_Ramos

Fernando_Ramos

    Fernando Ramos

  • Usuários
  • 728 posts
  • Sexo:Não informado

Posted 28/04/2006, 14:56

vamos lá....

1º Crie uma pasta no c:\
2º Crie um arquivo chamado upd.asp
3º Coloque o seu mdb(banco) dentro desta pasta do c:\ no mesmo local do arquivo upd.asp
4º Abra o arquivo upd.asp e coloque(NÃO ESQUEÇA DE PREENCHER A VARIAVEL BANCO COM O NOME DO TEU MDB E PREENCHER A VARIAVEL SENHA COM A SENHA DO MSB, CASO ELA EXISTA!

banco = ""
senha = ""

Set conexao = Server.CreateObject("ADODB.Connection")
conexao.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath(banco) & ";Jet OLEDB:Database Password=" & senha & ";"
conexao.CursorLocation = 3

sql = "update usuarios set senha = 'TROQUEIASENHA' WHERE id = 1"
set rs = conexao.execute(sql)

respone.write "SENHA ALTERADA COM SUCESSO"

RODA NO IIS...E VE SE FUNCIONA...

OBS.: FECHA O MDB ENQUANTO ESTIVER USANDO O SITE!

ABRAÇOS!
--
www.ramosinformatica.com
contato@ramosinformatica.com | @rinformatica

Hospedagem de site | Desenvolvimento de Sistemas | Informática em Geral

#13 rmax209

rmax209

    12 Horas

  • Usuários
  • 120 posts
  • Sexo:Não informado

Posted 28/04/2006, 16:10

Blza agora funcionou!!! :D :

<%
'Option Explicit
Response.Expires = 0
Dim objConn, objRs, strQuery, strConnection, strDBPath, contador, SortBy, id, senha

Set objConn = Server.CreateObject("ADODB.Connection")

strDBPath = Server.MapPath("users.mdb")

objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDBPath & ";"


'id = "1"
'senha = "123"
strQuery = "UPDATE usuarios SET senha = 'teste123333' WHERE id = 1" 
Set ObjRs = objConn.Execute(strQuery)

response.write "ok"

'Fechando as conexões
Set objRs = Nothing
Set objConn = Nothing
%>


Valew pela ajuda d todos!! (y)

#14 Fernando_Ramos

Fernando_Ramos

    Fernando Ramos

  • Usuários
  • 728 posts
  • Sexo:Não informado

Posted 29/04/2006, 20:30

seguinte...

so para complementar...eu fiz no meu codigo q te passei tb ...


para update e delete...vc nao tem a necessidade de criar recordsets..

abraços
--
www.ramosinformatica.com
contato@ramosinformatica.com | @rinformatica

Hospedagem de site | Desenvolvimento de Sistemas | Informática em Geral

#15 rmax209

rmax209

    12 Horas

  • Usuários
  • 120 posts
  • Sexo:Não informado

Posted 30/04/2006, 15:47

seguinte...

so para complementar...eu fiz no meu codigo q te passei tb ...


para update e delete...vc nao tem a necessidade de criar recordsets..

abraços



vlw Fernando_Ramos! :D




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq