Comparación de consultas y vistas
Actualización: noviembre 2007
Puesto que las consultas y las vistas tienen tantas similitudes, resulta sencillo pasar por alto sus diferencias. Esta sección compara brevemente las consultas y las vistas.
Almacenamiento Las vistas se almacenan como parte de un diseño de base de datos, pero no sucede lo mismo con las consultas. A medida que diseña una base de datos, puede incluir vistas en el diseño por los motivos siguientes:
Algunos subconjuntos de datos resultan de interés para muchos usuarios. Como cada vista se almacena en la base de datos, estas vistas constituyen un subconjunto concreto de datos que puede utilizar cualquier usuario de la base de datos.
**Las vistas pueden ocultar las tablas base. **Para impedir el acceso de todos los usuarios a las tablas de la base de datos, puede obligarles a que utilicen los datos únicamente a través de las vistas. Esta posibilidad puede proteger a los usuarios y a los programas de aplicaciones de determinadas modificaciones de base de datos. Por ejemplo, puede crear una vista llamada "Ventas del mes actual". El primer día de cada mes, puede modificar la definición de vista en consecuencia. Sin este tipo de vista, los usuarios tendrían que volver a escribir cada mes las consultas para seleccionar las filas de ventas del mes adecuado.
Actualización de resultados Las restricciones de la actualización de conjuntos de resultados son diferentes para vistas y consultas. Para obtener más información, vea Reglas para actualizar resultados.
Orden de resultados (Sólo Microsoft SQL Server) Puede ordenar cualquier resultado de consulta, pero sólo puede ordenar una vista si ésta incluye la cláusula TOP. Para obtener más información sobre la cláusula TOP, consulte la documentación de SQL Server. Para obtener más información sobre el orden de los resultados, vea Ordenar y agrupar los resultados de la consulta.
Generación de un plan de consulta Un plan de consulta es una estrategia interna por la cual un servidor de base de datos intenta crear conjuntos de resultados rápidamente. Un servidor de base de datos puede establecer un plan de consulta para una vista en cuanto se guarda la vista. Sin embargo, para una consulta, un servidor de base de datos no puede establecer un plan de consulta hasta que se ejecuta realmente la consulta: es decir, hasta que el usuario solicita de forma explícita el conjunto de resultados.
Parametrización Puede crear parámetros para una consulta, pero no para una vista. Para obtener más información sobre las consultas parametrizadas, vea Realizar consultas con parámetros.