Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ricardovg

Stored procedure com ASP não funciona ...

Recommended Posts

Galera ....Estou com problema .... é o seguinte. Estive lendo o artigo referente a stored procedures neste site mas eu testei e não funcionou.O que fiz, criei a tabela e fiz o teste, ms quando tento escrever a variável de output não consigo escrever através do response.write a variavel que recebe este imput.segue o código :Create Procedure checa_usuario@email varchar(100),@saida varchar(30) outputasIF EXISTS(Select * from usuarios where email like @email)BEGIN Select @saida='o email ' + @ email + ' foi encontrado'ENDELSEBEGIN Insert into usuarios(email) values(@email) Select @saida = 'Este usuario foi inserido!,' + @@identity + ' é a chave primaria do usuario'END<html><head><title>Stored Procedure – Simplicidade e Facilidade</title></head><%Stracao = request.form("acao")Stremail = request.form("email")If Stracao="checar" then'Abrindo conexao com o banco de dadosSet conexao=Server.CreateObject("ADODB.Connection")Conexao.open "Seuodbc","usuario","senha"'setamos o COMMAND do ADOSet cmd = Server.CreateObject(“ADODB.Command”) 'seta a conexao ativa para o objeto Set cmd.ActiveConnection = Conexao 'passamos o nome da stored procedure cmd.CommandText = "checa_usuario" 'passamos o parametro de execucao do commando, 4 refere-se a procedure cmd.CommandType = 4 cmd.Parameters.Refresh 'a variavel declarada na procedure é passada pelo command do ADO cmd.Parameters("@email") = Trim(Stremail) 'recebemos o valor de @saida vindo da procedure Strsaida = cmd.Parameters.Item("@saida") ' colocamos na tela o resultado Response.write Strsaida'descarregamos o objetoSet cmd=nothing'fechamos a conexao..Conexao.closeSet conexao=nothingEnd if%><body><form method="post" action="teste.asp">Digite o email: <input type="text" name="email"><input type="hidden" name="acao" value="checar"><input type="submit" value="Verifique"></form></body></html>Valeu .....T+++++++++++++++++++. :rolleyes:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera ....Estou com problema .... é o seguinte. Estive lendo o artigo referente a stored procedures neste site mas eu testei e não funcionou.O que fiz, criei a tabela e fiz o teste, ms quando tento escrever a variável de output não consigo escrever através do response.write a variavel que recebe este imput.segue o código :Create Procedure checa_usuario@email varchar(100),@saida varchar(30) outputasIF EXISTS(Select * from usuarios where email like @email)BEGIN Select @saida='o email ' + @ email + ' foi encontrado'ENDELSEBEGIN Insert into usuarios(email) values(@email) Select @saida = 'Este usuario foi inserido!,' + @@identity + ' é a chave primaria do usuario'END<html><head><title>Stored Procedure – Simplicidade e Facilidade</title></head><%Stracao = request.form("acao")Stremail = request.form("email")If Stracao="checar" then'Abrindo conexao com o banco de dadosSet conexao=Server.CreateObject("ADODB.Connection")Conexao.open "Seuodbc","usuario","senha"'setamos o COMMAND do ADOSet cmd = Server.CreateObject(“ADODB.Command”) 'seta a conexao ativa para o objeto Set cmd.ActiveConnection = Conexao 'passamos o nome da stored procedure cmd.CommandText = "checa_usuario" 'passamos o parametro de execucao do commando, 4 refere-se a procedure cmd.CommandType = 4 cmd.Parameters.Refresh 'a variavel declarada na procedure é passada pelo command do ADO cmd.Parameters("@email") = Trim(Stremail) 'recebemos o valor de @saida vindo da procedure Strsaida = cmd.Parameters.Item("@saida") ' colocamos na tela o resultado Response.write Strsaida'descarregamos o objetoSet cmd=nothing'fechamos a conexao..Conexao.closeSet conexao=nothingEnd if%><body><form method="post" action="teste.asp">Digite o email: <input type="text" name="email"><input type="hidden" name="acao" value="checar"><input type="submit" value="Verifique"></form></body></html>Valeu .....T+++++++++++++++++++. :rolleyes:

para setar uma variavel com o conteudo voce deve usar assimset @saida='o email ' + @ email + ' foi encontrado'

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha ... desculpa minha santa ignorância, mas eu acho que não entendi muito bem ... pode explicar de novo.Muda o código com esta linha que você citou ..... que vou verificar e com certeza vou entender mais facilmente.Obrigado....Fuiiiiii. :rolleyes:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha ... desculpa minha santa ignorância, mas eu acho que não entendi muito bem ... pode explicar de novo.Muda o código com esta linha que você citou ..... que vou verificar e com certeza vou entender mais facilmente.Obrigado....Fuiiiiii. :D

fala serio hein .. é so mudar o select @variavel para set@variavel ..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom na verdade ainda não funcionou ... fiz com mandaram acima .. troquei o selec pelo set mas não deu certo.Estou estudando mais sobre o assunto .....Fuiiiiiiiiiiiiiiiiiiiiii. :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Corrija:

 

DE >>> Select @saida='o email ' + @ email + ' foi encontrado'

 

PARA >>> Set @saida='o email ' + @email + ' foi encontrado'

 

E depois da linha

 

cmd.Parameters("@email") = Trim(Stremail)

 

Digite

 

cmd.Execute

 

Se tiver algum erro no script vai ser no ASP. Aí o navegador informa.

Com o cmd.Execute vai funcionar o Procedure...

Avise se funcionou.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eita. Esse bateu o recorde! Data da última postagem: 19/04/2003 - 12:51!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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