Recomendado: Implementación de la entrada de datos de lotes ASP La entrada por lotes se usa ampliamente en bases de datos, y hay muchos métodos para la entrada de lotes. A continuación, hablaré sobre cómo lo logré en función de mi aplicación real. El uso principal es el concepto de recopilación de formularios, que toma todos los datos en la recopilación a través del bucle. Teniendo en cuenta que es conveniente que todos lo vean, lo integré en una página. A continuación se muestra el código específico
Varias formas de llamar a los procedimientos almacenados con parámetros
1 Este es también el método más fácil, con dos parámetros de entrada, sin valor de retorno:
Establecer Connection = Server.CreateObject (ADODB.Connection)
conexión.
Conexión
'Borrar todos los objetos en nada, liberar recursos
Connection.clar
Establecer conexión = nada
2 Si desea devolver el conjunto de registros:
Establecer Connection = Server.CreateObject (ADODB.Connection)
conexión.
establecer rs = server.createObject (ADODB.RecordSet)
rs.open execname VarValue1, varValue2, conexión
'Borrar todos los objetos en nada, liberar recursos
rs.
Connection.clar
establecer RS = nada
Establecer conexión = nada
3 Los dos métodos anteriores no pueden tener un valor de retorno (excepto Registro). Si desea obtener el valor de retorno, debe usar el método de comando.
En primer lugar, hay dos tipos de valores de retorno. Una es devolver directamente un valor en el procedimiento almacenado, al igual que las funciones de los valores de retorno de C y VB; el otro es devolver múltiples valores,
Los nombres variables que almacenan estos valores deben especificarse primero en el parámetro de llamada.
Este ejemplo tratará con múltiples parámetros, parámetros de entrada, parámetros de salida, registros de retorno y un valor de retorno directo (¿es todo suficiente?)
El procedimiento almacenado es el siguiente:
Usar pubs
IR
- Crear procedimientos almacenados
Crear procedimiento sp_pubstest
- Definir tres variables de parámetros, tenga en cuenta la tercera, la marca especial se usa para la salida
@au_lname varchar (20),
@intid int,
@intidout int salida
COMO
Seleccione @intidout = @intid 1
SELECCIONAR *
De autores
Donde au_lname como @au_lname '%'
-Return un valor directamente
Regresar @intid 2
El programa ASP que llama al procedimiento almacenado es el siguiente:
< %@ Idioma = vBscript %>
<%
Dim CMDSP
Adors tenues
Dim ADCMDSPStoredProc
Dim adparamreturnvalue
Dim adparaminput
Dim adparamoutput
Dim adintesger
Dim ival
Dim oval
Dim Adofield
Dim Agarchar
'Estos valores son constantes predefinidas en VB y pueden llamarse directamente, pero no predefinidos en VBScript
adcmdspstoredproc = 4
adparamreturnValue = 4
adparaminput = 1
adparamoutput = 2
adintager = 3
adtarchar = 200
ival = 5
Ovalo = 3
'Crear un objeto de comando
Establecer cmdsp = server.createObject (ADODB.COMMAND)
'Crea un enlace
Cmdsp.activeConnection = controlador = {SQL Server}; server = (local); uid = sa; pwd =; database = pubs
'Defina el nombre de llamada del objeto de comando
Cmdsp.commandText = sp_pubstest
'Establezca el tipo de llamada de comando como un procedimiento almacenado (adcmdspstoredproc = 4)
Cmdsp.commandtype = adcmdspstoredproc
'Agregar parámetros al objeto de comando
'Definir que el procedimiento almacenado tiene un valor de retorno directo, y es un entero, el valor predeterminado es 4
Cmdsp.parameters.append cmdsp.createparameter (return_value, adinteger, adparamreturnValue, 4)
'Defina un parámetro de entrada de caracteres
Cmdsp.parameters.append cmdsp.createParameter (@au_lname, advarchar, adparaminput, 20, m)
'Defina un parámetro de entrada entero
Cmdsp.parameters.append cmdsp.createParameter (@Intid, AdinTeger, AdParamInput, iver)
'Defina un parámetro de salida entero
Cmdsp.parameters.append cmdsp.createparameter (@intidout, adinteger, adparamoutput, oval)
'Ejecute el procedimiento almacenado y obtenga el conjunto de registros de retorno
Establecer adors = cmdsp.execute
'Imprima cada registro, los campos en los que son virtuales, puede ignorarlo
Mientras que no es adors.EOF
para cada Adofield en Adors.
Response.write Adofield.name & = & Adofield.Value & <br> & Vbcrlf
Próximo
Response.Write <br>
adors.movenext
Encaminarse a
'Imprima dos valores de salida:
Response.write <p> @intidout = & cmdsp.parameters (@intidout) .value & </p>
Response.Write <P> Value de retorno = & cmdsp.Parameters (return_value) .Value & </p>
'Gran limpieza
Establecer Adors = nada
Establecer cmdsp.activeconnection = nada
Establecer cmdsp = nada
%>
Hay otras formas, que están un poco apagadas, y hablaré de eso más tarde
Este artículo ha hecho referencia a muchos artículos y no se enumerará aquí.
Compartir: múltiples presentaciones repetidas de formularios restringidos en ASP En Internet, encontramos innumerables formularios todos los días, y también vemos que la mayoría de ellos no restringen a los usuarios que envíen el mismo formulario varias veces. La falta de tales restricciones a veces puede producir algunos resultados inesperados, como suscripción duplicada a los servicios de correo electrónico o la votación duplicada. Este artículo presenta un método simple en aplicaciones ASP para evitar que los usuarios envíen el mismo formulario varias veces durante la sesión actual.