El objetivo de comunicarles esto no es el que revisen el Delete, el objetivo es 
conocer su opinión acerca de esto:

"El procedimiento almacenado anterior muestra un 
ejemplo de como no deberían hacerse las cosas, en su lugar, debemos 
crear 3 procedimientos almacenados, uno por cada DELETE y orquestar la 
transacción de borrado en la capa de negocio.
Los procedimientos almacenados deberían ser una 
herramienta para persistir datos, no un repositorio de lógica de 
negocio, además los procedimientos almacenados deberían operar solo con 
una única tabla, excepto aquellos en los que sea necesario realizar un 
join con varias tablas."




>________________________________
> De: Alvaro Herrera <alvhe...@alvh.no-ip.org>
>Para: Alejandro Carrillo <faster...@yahoo.es> 
>CC: Ayuda <pgsql-es-ayuda@postgresql.org> 
>Enviado: lunes 21 de noviembre de 2011 15:11
>Asunto: Re: ¿Que opinan de esto?
> 
>
>Excerpts from Alejandro Carrillo's message of lun nov 21 16:48:25 -0300 2011:
>> Buenas tardes,
>> 
>> Que opinan de lo siguiente:
>> 
>> http://kartones.net/blogs/coco/archive/2009/11/27/la-capa-de-negocio-ii-aspectos-de-implementaci-243-n.aspx
>> 
>> "En ocasiones la funcionalidad de borrado de datos es 
>> asociada con un solo procedimiento almacenado que se encarga de 
>> orquestar el orden de borrado, en estos casos, el procedimiento 
>> almacenado contiene lógica de negocio :
>> CREATE PROCEDURE [dbo].[deleteCustomer] @CustomerId int
>> AS
>> BEGIN DELETE FROM CustomerAddresses WHERE CustomerId = @CustomerId DELETE 
>> FROM CustomerSalesPerson WHERE CustomerId = @CustomerId DELETE FROM 
>> Customers WHERE CustomerId = @CustomerId
>> El procedimiento almacenado anterior muestra un 
>> ejemplo de como no deberían hacerse las cosas, en su lugar, debemos 
>> crear 3 procedimientos almacenados, uno por cada DELETE y orquestar la 
>> transacción de borrado en la capa de negocio.
>
>Honestamente, hace muucho tiempo que no veo una aplicación que realmente
>haga DELETE de los registros de clientes ;-)
>
>-- 
>Álvaro Herrera <alvhe...@alvh.no-ip.org>
>
>
>

Responder a