Ver Mensaje Individual
  #5  
Antiguo 10-01-2008
Avatar de jcarteagaf
[jcarteagaf] jcarteagaf is offline
Miembro Premium
 
Registrado: abr 2006
Ubicación: La Paz, Bolivia
Posts: 651
Reputación: 19
jcarteagaf Va por buen camino
Stores Procedures

Para usar Stored procedures con los componentes ADO yo hago lo siguiente en mis programas:
Ejemplo de Stored Procedure:
Código SQL [-]
CREATE PROCEDURE Actualizacion
@Param1 int,
@Llave int
AS 
BEGIN
  SET NOCOUNT ON
  UPDATE TABLA
  SET VALOR=@PARAM1
  WHERE LLAVE=@LLAVE
END
En mi formulario o en un modulo de datos coloco un componente TAdoStoredProc, asigno sus propiedades (Connection, ProcedureName) y verifico que sus parameters esten correctos (basta con abrir la ventana de parameters). Luego ejecuto la llamada de la siguiente forma:

Código Delphi [-]
with AdoStoredProc1, Parameters do
begin
  Parambyname('@PARAM1').value := ValorParametro1;
  Parambyname('@LLAVE').value := ValorLlave;
  ExecProc;
end;

Ahora si mi stored Procedure devuelve registros hago lo siguiente:

Código SQL [-]
CREATE PROCEDURE ListaDatos
@Param1 int,
@Param2 int
AS 
BEGIN
  SET NOCOUNT ON
  SELECT CAMPO1,CAMPO2,CAMPO3
  WHERE CAMPON=@Param1 AND CampoX=@Param2
  ORDER BY Campo1
END

Y la llamada seria algo asi:

Código Delphi [-]
with AdoStoredProc2, Parameters do
begin
  Parambyname('@PARAM1').value := ValorParametro1;
  Parambyname('@PARAM2').value := ValorParametro2;
  Open;  // O tambien Active := True;
end;

Estos son ejemplos basicos, faltaria la captura de excepciones, pero creo que como base sirve.

Saludos
Responder Con Cita