Cuando escribimos un programa de autenticación de usuario, es fácil usar ASP para llamar a declaraciones SQL para recuperar si hay registros que coincidan con las condiciones en la tabla de datos y luego usar ASP para realizar el procesamiento relacionado.
¡Por todas partes se va a Roma! Por supuesto, también podemos utilizar el procedimiento almacenado de la base de datos SQL SERVER para implementar fácilmente esta función. Aunque es relativamente complejo, su mejora en eficiencia es obvia, porque el procedimiento almacenado es un programa que ha sido compilado en la base de datos, y solo necesitamos usar ASP para pasar correctamente los diversos parámetros que utiliza.
Este artículo también quiere presentarle principalmente cómo llamar a un procedimiento almacenado con parámetros en ASP a través de un ejemplo simple. Espero que puedas inspirarte más.
El primer paso es crear la información del usuario de la tabla de datos.
id int(4) no nulo,
nombre completo varchar(50) no nulo,
contraseña varchar(20) no nula,
nikename varchar(50) not null
El segundo paso es crear el procedimiento almacenado usercheck
CREAR procedimiento de verificación de usuario
@nombreincompleto varchar(50),
@incontraseña varchar(50),
@outcheck char(3) SALIDA
como
si existe (seleccione * de información de usuario donde nombre completo=@nombreincompleto y contraseña=@contraseñain )
seleccione @outcheck='sí'
demás
select @outcheck='no'
Nota: Aquí se crea un procedimiento almacenado con tres parámetros. El primer parámetro @infullname es un parámetro de entrada (nombre de usuario). parámetro @outcheck, este es un parámetro de salida (si este usuario existe), al definir el parámetro de salida, se debe agregar la palabra "SALIDA" después del tipo de datos.
Luego, tomamos los dos primeros parámetros de entrada para recuperar si hay un usuario calificado en la declaración SQL. Si lo hay, el valor del parámetro de salida es "sí", de lo contrario es "no".
El tercer paso es escribir un programa ASP y llamar al procedimiento almacenado
<%
'Indicador de envío de formulario
si request("ok")=1 entonces
'Establecer conexión a la base de datos
Establecer comunicación=Server.CreateObject("ADODB.Command")
Comm.ActiveConnection="DSN=localserver;UID=sa;PWD=;Database=chaiwei"
'Establece una conexión de procedimiento almacenado con el objeto de comunicación, 4 significa que el tipo de conexión es un procedimiento almacenado
Comm.CommandText="verificación de usuario"
Comm.CommandType=4
'Crea el método de parámetro del objeto de comunicación con p1 como nombre. Agregue el primer parámetro nombre completo a la colección p1 'nombre completo' El nombre del primer parámetro llamado '200 Tipo de parámetro tipo varchar '1 Flujo de parámetros a la entrada, la entrada es 1, la salida es 2
'50 longitud del parámetro 50
'request("fullname") Asignar valor inicial del parámetro
Establecer p1=Comm.CreateParameter("fullname",200,1,50,request("fullname"))
Parámetros de comunicación. Anexar p1
'Cree el método de parámetro del objeto de comunicación con p1 como nombre. Agregue la contraseña del segundo parámetro a la colección p1
'Los detalles son los mismos que los anteriores
Set p1=Comm.CreateParameter("contraseña",200,1,20,request("contraseña"))
Parámetros de comunicación. Anexar p1
'Cree el método de parámetro del objeto de comunicación con p1 como nombre. Agregue la verificación del tercer parámetro a la colección p1
'129 Tipo de parámetro tipo char
'2 Flujo de parámetros a la salida
'3 Longitud del parámetro 3
Establecer p1=Comm.CreateParameter("verificar",129,2,3)
Parámetros de comunicación. Anexar p1
'Ejecutar el procedimiento almacenado
Ejecutar comunicación
'Proponer el resultado y procesarlo
si comm("check")="sí" entonces
Response.write "¡Bienvenido al sistema! Nombre de usuario:" & comm("nombre completo") & "Contraseña:" & comm("contraseña")
demás
Response.write "¡Lo sentimos, todavía no te has registrado!"
finalizar si
'Liberar conexión
Establecer comunicación = nada
más
'forma parte
%>