Shopping Hospedagem Fórum Contato
     
   O portal do desenvolvedor ASP Florianópolis-SC, Quinta-feira - 26 de Abril de 2018  
Busca

Menu do site
Efetuar Login
Usuário:

Senha:

 Esqueceu a senha?
Login automático

 Cadastre-se
Usando uma Stored Procedure
Avaliações: 11   -   Minha nota: Média Geral: 10  

Olá pessoal!

Várias vezes me deparo com uma dúvida meio que geral....
As pessoas sempre perguntam como passar e receber parâmetros através de uma stored procedure...

Neste artigo vou mostrar como é simples e bem útil...


Primeiro vamos criar uma stored procedure


Create Procedure checa_usuario

@email varchar(100),
@saida varchar(30) output

as 

IF EXISTS(Select * from usuarios where email like @email)
BEGIN

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

END

ELSE
BEGIN

Insert into usuarios(email) values(@email)
Select @saida = 'Este usuario foi inserido!,' + @@identity + ' é a chave primaria do usuario'

END



Detalhando o funcionamento:

Primeiro dei o nome à minha STORED PROCEDURE “checa_usuario”

Logo em seguida declaramos as variáveis que irão receber parâmetros...
@email receberá os parametros e passará para a stored procedure.
@saida, foi declarada como output, ou seja, receberá dados da procedure para retornar para o ASP, VB, etc...

Fiz um select que checa se o email existe.. e se existe, retornará que o email existe
Se não existir , ele irá inserir o email, e retornar uma mensagem de que foi inserido mais o número da chave primária deste usuário.


Agora vamos criar uma pequena rotina no ASP.

<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 dados
Set conexao=Server.CreateObject("ADODB.Connection")
Conexao.open "Seuodbc","usuario","senha"

'setamos o COMMAND do ADO
Set 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 objeto
Set cmd=nothing

'fechamos a conexao..
Conexao.close
Set conexao=nothing



End 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>


Bom pessoal, espero que tenham gostado, o exemplo foi simples, mas tenho certeza que vai ser muito útil!






SuperASP do Brasil Ltda

03.066.522/0001-84
Av. Rio Branco 433 - Centro - Florianopolis - SC
Contato

© 2001/2008 - Superasp do Brasil Ltda. Todos os direitos reservados