Store Procedure - Repaso de SQL

From Ibbddunq

(Difference between revisions)
Line 1: Line 1:
-
 
+
CREATE PROCEDURE `insertarValores` (nombreDeProducto varchar(45), stock varchar(45))
-
FUNCTION `insertarValores` (nombreDeProducto varchar(45), stock varchar(45))
+
  BEGIN
  BEGIN
   insert into producto(nomProd,stock,fecha) values
   insert into producto(nomProd,stock,fecha) values
Line 17: Line 16:
   select stock from producto where nomProd = nombreProducto2 into cantidadDeStockProducto2 ;
   select stock from producto where nomProd = nombreProducto2 into cantidadDeStockProducto2 ;
   
   
-
    return  (cantidadDeStockProducto1 >= cantidadDeStockProducto2 );
+
  return  (cantidadDeStockProducto1 >= cantidadDeStockProducto2 );
   
   
  END   
  END   
 +
FUNCTION `insertarValidandoCompra` (nombreDeProducto varchar(45), nombreDeCliente varchar(45),cantidad integer)
FUNCTION `insertarValidandoCompra` (nombreDeProducto varchar(45), nombreDeCliente varchar(45),cantidad integer)
  returns integer
  returns integer
  BEGIN
  BEGIN
-
 
   declare cantidadDeStockProducto integer;
   declare cantidadDeStockProducto integer;
-
 
   select stock from producto where nomProd = nombreProducto into cantidadDeStockProducto;
   select stock from producto where nomProd = nombreProducto into cantidadDeStockProducto;
-
 
   if (stock >= cantidad) then
   if (stock >= cantidad) then
     insert into producto(nomProd,nomCliente,fecha,cant) values
     insert into producto(nomProd,nomCliente,fecha,cant) values

Revision as of 20:34, 23 October 2009

CREATE PROCEDURE `insertarValores` (nombreDeProducto varchar(45), stock varchar(45))

BEGIN
 insert into producto(nomProd,stock,fecha) values
      (nombreDeProducto, sctock, now());
END  


FUNCTION `tieneMasStockQue` (nombreProducto varchar(45), nombreProducto2 varchar(45))
returns bool
BEGIN
  declare cantidadDeStockProducto1 integer;
  declare cantidadDeStockProducto2 integer;

  select stock from producto where nomProd = nombreProducto into cantidadDeStockProducto1 ;
  select stock from producto where nomProd = nombreProducto2 into cantidadDeStockProducto2 ;

  return  (cantidadDeStockProducto1 >= cantidadDeStockProducto2 );

END  


FUNCTION `insertarValidandoCompra` (nombreDeProducto varchar(45), nombreDeCliente varchar(45),cantidad integer)

returns integer
BEGIN
  declare cantidadDeStockProducto integer;
  select stock from producto where nomProd = nombreProducto into cantidadDeStockProducto;
  if (stock >= cantidad) then
    insert into producto(nomProd,nomCliente,fecha,cant) values
      (nombreDeProducto, nomCliente, now(),stock -cantidad);
    return stock -cantidad;
  else
    insert into producto(nomProd,nomCliente,fecha,cant) values
      (nombreDeProducto, nomCliente, now(),0);
    return stock;
  end if;
END
Personal tools