Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/09/2008, 13:27
Avatar de usuariobaneado
usuariobaneado
 
Fecha de Ingreso: diciembre-2007
Mensajes: 402
Antigüedad: 16 años, 5 meses
Puntos: 5
Pregunta Ejecutar sentencias sql desde la aplicación o desde un procedimiento almacenado?

Que tal buenas tardes...

Estoy analizando la manera más optima de hacer consultas a la base de datos por medio de una aplicación web, para lo cual tengo dos casos:

Desde la aplicación web abrir una conexión y una transacción, armar y ejecutar las sentencias sql necesarias (inserts, updates, deletes) luego hacer un commit tran y cerrar la conexión. Todo ejecutado desde la aplicación.

Desde la aplicación web abrir una conexión, armar un xml que contengan todos los datos, enviarselos a un procedimiento almacenado, crear una transacción (sentencia BEGIN TRAN) y que el procedimiento almacenada haga todos los inserts, updates y deletes necesarios para luego hacer un COMMIT TRAN y controlar los errores con un ROLL BACK TRAN.

Yo digo que sería mejor la segunda porque solo llamo a un procedimiento y el profiler me aparecerá una sola ejecución la cual la voy a poder analizar en el caso de algún problema. En cambio de la primera forma en el profiler me aparecerán muchas sentencias ejecutadas. Un compañero me dice que de la segunda forma voy a sobrecargar el servidor, que es mejor que se ejecuten sentencias desde la aplicación web. Y yo le replico que sea como sea las sentencias sql llegarán al servidor y se ejecutarán ya que por la lógica del negocio de una u otra forma deberán ejecutarse.

Entonces que es mejor, llamar a un procedimiento almacenado que haga todo, o ejecutar sentencias sql desde la aplicación?
__________________
Yo quiero ser el pelucón del barrio