Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 28-02-2008
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 25
poliburro Va por buen camino
Este es el código de uno de mis sps en mysql. Epero te sirva


Código SQL [-]

/****************************************************************************
17-Mayo-2007
SpCatEmpleados
Edgar Ramírez Rosas
Procedimiento orientado al manejo del catálogo de usuarios.
Permite su navegación, modificación e inserción
*****************************************************************************/  

Drop Procedure If Exists SpCatEmpleados;
CREATE PROCEDURE SpCatEmpleados
       (PsMenu      Varchar(25),    -- Define el bloque a ejecutar
        PnIdEmp     Decimal(18,0),  -- Define el Id del empleado
        PVNombre    varchar(100),   -- Nombre
        PVDirec     varchar(100),   -- Dirección
        PVTelefono  varchar(25),    -- Número de telefono
        PNSueldo    Decimal(12,2),  -- Sueldo
        PVIngreso   Varchar(10),    -- Fecha de ingreso
        PCEstado    char(1),        -- Estado 
        PVUsuario   VarChar(15)    -- Usuario que invoca el procedimiento
       )             
BEGIN   

DECLARE VD_SigIdEmp Decimal(18,0) Default 0; -- Id del usuario

/**************************************************/ 
/*  de ocurrir un problema en las consultas, se lanzará el siguiente*/ 
/*  manejador                                                                      */ 
/**************************************************/   

DECLARE EXIT HANDLER FOR SQLEXCEPTION 
    BEGIN 
      Rollback;
      SELECT 'Ocurrió un problema al ejecutar la operación.' As Mensaje;
    END;
  
 /*********************************************/
 /*  Modifica los datos de un empleado en particular            */ 
/*********************************************/   

If PsMenu = 'ModDatEmp' Then     START TRANSACTION;
      Update Sad_TCatEmpleados
         Set Emp_VNombre = PVNombre,
             Emp_VTelefono = PVTelefono,
             Emp_VDirec = PVDirec, 
             Emp_NSueldo = PNSueldo,
              Emp_DIngreso = PVIngreso, 
             Emp_CEstado = PCEstado,
             Emp_VUsuUltMod = PVUsuario,
             Emp_DFecUltAct = Now()
       Where Emp_Nid = PnIdEmp;
    Commit;
    Select 'Nada' As Mensaje;
  End If;

  If PsMenu = 'AgregaEmp' Then      START TRANSACTION;

     Select IFNULL(Max(Emp_Nid),0) + 1 InTo VD_SigIdEmp
       From Sad_TCatEmpleados; 

     Insert 
       INTO Sad_TCatEmpleados 
               (Emp_Nid, Emp_VNombre, Emp_VDirec, Emp_VTelefono,  
                Emp_NSueldo, Emp_DIngreso, Emp_CEstado, Emp_VUsuAlta,
                Emp_DFecAlta,Emp_VUsuUltMod, Emp_DFecUltAct)
     Values (VD_SigIdEmp,PVNombre, PVDirec, PVTelefono, PNSueldo, 
                PVIngreso, PCEstado, PVUsuario, Now(), PVUsuario, Now());
    Commit;
    Select 'Nada' As Mensaje;
  End If;


/**************************************************/ 
/*  Devuelve la lista de empleados activos                                 */ 
/**************************************************/ 

   If PsMenu = 'DameListEmpAct' Then     SELECT Emp_Nid, Emp_VNombre
      FROM Sad_TCatEmpleados
     WHERE Emp_CEstado = 'A';
  End If;    
  
  /****************************************************/ 
  /*  Devuelve la lista de empleados activos que no han sido asignados */ 
 /*****************************************************/  

  If PsMenu = 'DameListEmpActNoAsig' Then         SELECT CatEmp.Emp_Nid, Emp_VNombre
          FROM Sad_TCatEmpleados As CatEmp
     Left Join Sad_TCatUsuarios  As CatUsu
            On CatEmp.Emp_Nid = CatUsu.Emp_Nid
         WHERE Emp_CEstado = 'A' And                CatUsu.Emp_Nid is Null;
  End If;

      

END
__________________
Conoce mi blog http://www.edgartec.com

Última edición por poliburro fecha: 28-02-2008 a las 06:58:44. Razón: error
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con acentos con PHP y MySQL Vinicio PHP 5 15-04-2009 10:06:45
Problema al conectar con MySQL Sven Conexión con bases de datos 7 09-02-2007 04:40:23
Problema con php y mysql marcoev PHP 5 09-12-2006 04:28:07
problema con MonthName en MYSQL ach_666 Conexión con bases de datos 1 03-05-2006 01:31:44
Problema con myodbc+ado+mysql crievep Conexión con bases de datos 2 06-04-2006 23:46:05


La franja horaria es GMT +2. Ahora son las 23:03:26.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi