Criei um simples script em ASP para inserção de dados em um banco SQL por meio de procedures, assim sua aplicação se torna mais segura com um melhor desempenho, pois os dados são resolvidos(inseridos) no banco e não na página asp.

A procedure em si:

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
–Cria a Procedure SP_Insere_Dados
ALTER PROCEDURE [banco].[SP_Insere_Dados]

–Passa como parâmetros para a Procedure os dados (CPF) vindosdo código ASP.
@STRACAO varchar(50)=NULL,
@CPF varchar(50)=NULL

AS
BEGIN
IF @STRACAO = ‘IN’ –aqui é recebido o paramentro definido no asp, no caso inserção
IF NOT EXISTS (SELECT CPFUsuario FROM TB_USUARIOS(NOLOCK)
WHERE CPFUsuario = @CPF
)– este if verifica se o registro já existe no banco, caso exista, ele sai do if e entra no else
BEGIN
SELECT ‘CPF CADASTRAD0’ AS RETORNO
–Executa código SQL que insere os dados no banco
INSERT INTO TB_USUARIOS(NomeUsuario,
CpfUsuario,
EnderecoUsuario,
IdadeUsuario)
VALUES(@Nome, @CPF, @Endereco, @Idade)

END
ELSE
BEGIN
SELECT ‘CPF JÁ EXISTE’ AS RETORNO
END

END

Agora o ASP

  1. <!–#include file=”includes/conexao.asp”–>’aqui é feito a inclusão da conexão com o banco
  2. <!–#include file=”includes/adovbs.inc”–>’aqui é feito a inclusão do adovbs.inc
  3. <%
  4.         Dim stracao, cpf
  5.         stracao = “IN” ‘parametro que é passado para o sql, como visto acima
  6.         cpf     = TRIM(REQUEST(“CPF”))
  7.     Set CMD = Server.CreateObject(“ADODB.Command”)
  8.     CMD.CommandText = “SP_Insere_Dados” ‘ definindo o nome da procedure a ser usada
  9.     CMD.CommandType = 4
  10.     CMD.ActiveConnection = Conexao
  11. ‘Criamos agora a parametrização dos dasdos para serem recebidos no SQL
  12.         CMD.Parameters.AppendCMD.CreateParameter(“@STRACAO”, advarchar,1,50)
  13.         CMD.Parameters.AppendCMD.CreateParameter(“@CPF”, advarchar,1,50)
  14. ‘Agora enviamos os dados para o SQL
  15.         CMD.Parameters(“@stracao”).Value        = stracao
  16.         CMD.Parameters(“@cpf”).Value            = cpf
  17.         Set rsRetorno = CMD.execute()
  18.                         response.writersRetorno(“retorno”)&”<br/>”
  19. %>

Este script é bem simples, basta apenas adequalo a sua aplicação.

Em breve estarei postando novos artigos.