Desde que MySQL comenzó a admitir procedimientos almacenados, nunca los he usado realmente. En parte porque no soy un gran escritor de consultas, en parte porque a menudo trabajo con los DBA que hacen esas elecciones por mí, en parte porque estoy cómodo con Lo que sé.MySQL: Vistas vs Procedimientos almacenados
En términos de selección de datos, específicamente cuando se considera una selección que es esencialmente una des-normalización (uniones) y agregado (promedio o máximo, subconsultas con recuentos, etc.) selección de datos, ¿cuál es la elección correcta en MySQL 5.x? ¿Una vista? O un procedimiento almacenado?
Vistas Me siento cómodo con - usted sabe cómo se supone que debe verse su consulta SELECT, así que solo cree eso, asegúrese de que sea indexado y lo que sea, simplemente haga un CREATE VIEW [View] AS SELECT [...]
. Luego, en mi aplicación, trato la vista como una tabla de solo lectura, representa una versión desnormalizada de mis datos normalizados.
¿Cuáles son las desventajas aquí, si las hay? ¿Y qué cambiaría (ganancias o pérdidas) si moviera esa misma instrucción SELECT exacta a un procedimiento almacenado?
Espero encontrar una buena información "oculta" que ha sido difícil de encontrar al buscar en Google este tema, pero realmente doy la bienvenida a todos los comentarios y respuestas.
Para cualquier otra persona que encuentre esta publicación y no sienta que estas respuestas se ajustan perfectamente a sus necesidades, hay algunos comentarios excelentes sobre [MSDN Social] (http://social.msdn.microsoft.com/Forums/es-ES/sqlgetstarted/thread/64e834bc-c473-41dc-bb3c-6fd3bcfa0d57) que realmente ayudan a construir una comprensión más sólida de los fundamentos. – Chiramisu