| |||
procedimientos y query en aplicacion tengo una duda de cual es la diferencia entre usar procedimientos almacenados y de poner un query directamentre desde la aplicacion de visual net......... y tambien saber cual de los dos querys es mas rapido en ejecutarse.....ok muchas gracias y espero k me puedan ayudar |
| |||
Re: procedimientos y query en aplicacion Sin duda lo mejor es que este en la base de datos, el procedimiento almacenado, por muchas causas: Te sera mas facil la implementacion, porque lo trabajaras desde tu aplicacion como una "caja negra". Te imaginas generar una nueva version de tu aplicativo cada vez, porque cambio el nombre de un campo de la tabla a la que haces referencia ? !!!!!..... Con respecto a la velocidad, al menos que alguien diga lo contrario, me parece que es mas rapido en la base de datos, porque el procedure ya esta compilado y no pierdes tiempo de compilacion, en cambio si tu armas el select y siempre se lo mandas como un string... el motor debe interpretar la consulta, optimizarla si se puede y recien... ejecutarla. Cuando notaras la diferencia? Si tu select es de mas o menos 1000 lineas de codigo, te recomiendo el procedure, pero son 100 o menos lineas.... la opcion de procedure es simplemente para brindar un mejor management del query. Espero que te haya servido... Sldo Atte, Mario. |
| ||||
Re: procedimientos y query en aplicacion Hola, Estoy parcialmente de acuerdo con lo postado por Mario, es decir Cita: Hasta aqui, 100% de acuerdo.Sin duda lo mejor es que este en la base de datos, el procedimiento almacenado, por muchas causas: Te sera mas facil la implementacion, porque lo trabajaras desde tu aplicacion como una "caja negra". Te imaginas generar una nueva version de tu aplicativo cada vez, porque cambio el nombre de un campo de la tabla a la que haces referencia ? !!!!!..... Cita: El cache del plan de ejecucion se guarda siempre, no importa si viene desde un procedimiento o desde una aplicacion, si la consulta no cambia se reutiliza el plan de ejecucion que esta en la shared pool.Con respecto a la velocidad, al menos que alguien diga lo contrario, me parece que es mas rapido en la base de datos, porque el procedure ya esta compilado y no pierdes tiempo de compilacion, en cambio si tu armas el select y siempre se lo mandas como un string... el motor debe interpretar la consulta, optimizarla si se puede y recien... ejecutarla. Cita: No creo que la opcion de un procedure o guardar las consultas dentro de la aplicacion tenga que ver con la cantidad de lineas, es meramente una cuestion de diseño, en mi opinion todo lo referente a base de datos debe guardarse en base de datos, para cualquier aplicacion deberia ser transparente como se modifican o se obtienen datos.Cuando notaras la diferencia? Si tu select es de mas o menos 1000 lineas de codigo, te recomiendo el procedure, pero son 100 o menos lineas.... la opcion de procedure es simplemente para brindar un mejor management del query. Justamente hace unos dias atras tuve una discusion similar con un desarrollador, y simplemente le hice referencia al siguiente link, que debo decir, nunca vi una explicacion mejor, esta en ingles. http://asktom.oracle.com/pls/asktom/...25405782527721 Saludos. |
| ||||
Re: procedimientos y query en aplicacion en este tipo de aplicaciones yo tambien me inclino por dejarle a la base de datos todas las reglas de negocio o que la aplicacion solo haga validaciones sencillas (fechas, numeros, etc)
__________________ |