Principales respuestas
¿Como es mejor hacer consultas?

Pregunta
-
Como es mejor hacer consultas en vb?
Tener las consultas almacenadas y llamarlas desde el codigo o hacer la consulta en el mismo codigo?
y en c#?
Yo siempre las he hecho en el codigo y creo que es mas ordenador y mucho mas claro pero nose si es mejor
o peor hablando de recursos, velocidad, etc...
Un saludo, infinitas gracias.
Respuestas
-
Hola tximas,
La principal ventaja de tener el código t-sql encapsulado en procedimientos almacenados es la reutilización:
- Reutilización del plan de ejecución, lo que repercute en mejoras en tiempos de respuesta
- Reutilización de código
Además, y no menos importante, si hubiese algún cambio "menor" en un procedimiento o la refactorización del mismo sólo atacas contra el objeto a nivel de base de datos y no tienes que compilar nuevamente el proyecto, y claro, los métodos de acceso a datos te quedan "más limpios".
- Editado Willams Morales jueves, 11 de febrero de 2016 14:02
- Marcado como respuesta tximas viernes, 12 de febrero de 2016 6:16
Todas las respuestas
-
>>Tener las consultas almacenadas y llamarlas desde el codigo o hacer la consulta en el mismo codigo?
depende, usar stored procedure implica que las queries esten analizadas y precompiladas en el servidor lo cual la hacen algo mas performance que ejecutar una query desde codigo
pero tambien requiere mantenimiento de esos procedure los cuales no forman parte del repositorio de codigo, si es que usas una tool de control de codigo como ser TFS, git, etc
>>y en c#?
es lo mismo
>>Yo siempre las he hecho en el codigo y creo que es mas ordenador y mucho mas claro pero nose si es mejor
si te da buen resultado y la respuestas de las consultas estan dentro de los parametros que consideras valido entonces es correcto como lo implementas
aunque no evaluaste usar un ORM, como ser entity framework ?
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina -
No te entendido muy bien Leandro. Dices que si tienes las consultas alamcenadas en la BBDD consume menos recursos? Yo seguire haciendo directamente en la BBDD ya que me parece mucho mas sencillo y si alguna vez otra persona tenga que trabajar con mi proyecto mejor que lo entienda.
-
Hola tximas,
La principal ventaja de tener el código t-sql encapsulado en procedimientos almacenados es la reutilización:
- Reutilización del plan de ejecución, lo que repercute en mejoras en tiempos de respuesta
- Reutilización de código
Además, y no menos importante, si hubiese algún cambio "menor" en un procedimiento o la refactorización del mismo sólo atacas contra el objeto a nivel de base de datos y no tienes que compilar nuevamente el proyecto, y claro, los métodos de acceso a datos te quedan "más limpios".
- Editado Willams Morales jueves, 11 de febrero de 2016 14:02
- Marcado como respuesta tximas viernes, 12 de febrero de 2016 6:16