Estás trabajando sin conexión, espera a que vuelva la conexión a Internet

Cómo llamar a procedimientos almacenados de SQL Server desde ASP

Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.
Resumen
Para obtener una versión de este artículo para Microsoft Visual Basic .NET, consulte 306574.
En este artículo se demuestran tres métodos para llamar a un procedimiento almacenado desde páginas Active Server utilizando ActiveX Data Objects (ADO).
Más información
El ejemplo siguiente utiliza el objeto Command para llamar a un procedimiento almacenado sp_test de ejemplo. Este procedimiento almacenado acepta un entero y tiene también un valor de retorno de un entero:
   <%@ LANGUAGE="VBSCRIPT" %>   <!--#include virtual="/ASPSAMP/SAMPLES/ADOVBS.INC"-->   <HTML> <HEAD><TITLE>Poner aquí el título del documento</TITLE></HEAD> <BODY> Este primer método consulta al origen de datos los parámetros del procedimiento almacenado. Éste es el método menos eficaz para llamar a un procedimiento almacenado.<BR>   <%   Set cn = Server.CreateObject("ADODB.Connection")   Set cmd = Server.CreateObject("ADODB.Command")   cn.Open "data source name", "userid", "password"   Set cmd.ActiveConnection = cn   cmd.CommandText = "sp_test"   cmd.CommandType = adCmdStoredProc   ' Ask the server about the parameters for the stored proc   cmd.Parameters.Refresh   ' Assign a value to the 2nd parameter.   ' Index of 0 represents first parameter.   cmd.Parameters(1) = 11   cmd.Execute   %>   Llamada mediante el método 1<BR>   ReturnValue = <% Response.Write cmd.Parameters(0) %><P>   <!-- ************************************************************ -->   El método 2 declara el procedimiento almacenado y a continuación declara explícitamente los parámetros.<BR>   <%   Set cn = Server.CreateObject("ADODB.Connection")   cn.Open "data source name", "userid", "password"   Set cmd = Server.CreateObject("ADODB.Command")   Set cmd.ActiveConnection = cn   cmd.CommandText = "sp_test"   cmd.CommandType = adCmdStoredProc   cmd.Parameters.Append cmd.CreateParameter("RetVal", adInteger, _      adParamReturnValue)   cmd.Parameters.Append cmd.CreateParameter("Param1", adInteger, _      adParamInput)   ' Set value of Param1 of the default collection to 22   cmd("Param1") = 22   cmd.Execute   %>   Llamada mediante el método 2<BR>   ReturnValue = <% Response.Write cmd(0) %><P>   <!-- ************************************************************ -->   El método 3 es probablemente la manera más formal de llamar a un procedimiento almacenado. Utiliza canocial   <%   Set cn = Server.CreateObject("ADODB.Connection")   cn.Open "data source name", "userid", "password"   Set cmd = Server.CreateObject("ADODB.Command")   Set cmd.ActiveConnection = cn   ' Define the stored procedure's inputs and outputs   ' Question marks act as placeholders for each parameter for the   ' stored procedure   cmd.CommandText = "{?=call sp_test(?)}"   ' specify parameter info 1 by 1 in the order of the question marks   ' specified when we defined the stored procedure   cmd.Parameters.Append cmd.CreateParameter("RetVal", adInteger, _   adParamReturnValue)   cmd.Parameters.Append cmd.CreateParameter("Param1", adInteger, _     adParamInput)   cmd.Parameters("Param1") = 33   cmd.Execute   %>   Llamada mediante el método 3<BR>   ReturnValue = <% Response.Write cmd("RetVal") %><P>   </BODY> </HTML>				
Observe que en los ejemplos anteriores se utilizan varios métodos de acceso a la colección Parameters del objeto Command. Algunos utilizan la colección predeterminada del objeto Command, mientras que otros especifican a qué propiedad de una colección determinada se tiene acceso.
Referencias
Para obtener los artículos de Knowledge Base más recientes y otra información de soporte técnico acerca de Visual InterDev y páginas Active Server, visite la página siguiente del sitio del Servicio de soporte técnico de Microsoft:
Propiedades

Id. de artículo: 164485 - Última revisión: 05/02/2006 13:22:58 - Revisión: 4.0

Microsoft Active Server Pages 4.0, Microsoft ActiveX Data Objects 2.0, Microsoft ActiveX Data Objects 2.1 Service Pack 1, Microsoft ActiveX Data Objects 2.1 Service Pack 2, Microsoft ActiveX Data Objects 2.5, Microsoft ActiveX Data Objects 2.6, Microsoft ActiveX Data Objects 2.7

  • kbcode kbdatabase kbhowto kbsample kbscript KB164485
Comentarios