Descripción general de la lección y conocimientos necesarios
Para completar esta lección práctica, debe poder definir una vista de base de datos y proporcionar una explicación para su uso en la administración de la base de datos. Debería poder describir índices y disparadores y su propósito. Además, debería haber instalado MySQL y los modelos clásicos de base de datos de muestra para usar en este curso. Consulte la lección de estudyando.com: https://estudyando.com/academy/lesson/practical-application-for-introduction-to-sql-installing-sample-data-for-mysql.html.
Código de programa
Una vista es una forma práctica de crear una consulta que muestra un subconjunto de información. Por ejemplo, es posible que desee permitir que los usuarios consulten una base de datos de empleados, pero solo recuperen la identificación del empleado y su ubicación de trabajo; esto protege la otra información confidencial de la tabla.
En la base de datos de classmodels tenemos una tabla de clientes . Hay numerosos campos demográficos: dirección, nombre, número de teléfono, etc. Consideremos que queremos crear una lista solo del número de cliente, su ciudad, estado y límite de crédito. Para proporcionar esta información, podemos crear una vista en MySQL.
Recuerde que la sintaxis general para crear una vista es:
CREAR VISTA view_name AS
SELECT column1, column2, ...
FROM table_name
WHERE condición;
A continuación, creemos una vista para la base de datos de modelos clásicos . Seleccionaremos los campos y los ordenaremos por límite de crédito, de mayor a menor.
Introducción al Derecho Empresarial para Startups
CREAR VISTA CreditLimits COMO
SELECCIONAR customerNumber, ciudad, estado, creditLimit
DE los clientes
ORDENAR POR creditLimit DESC;
Una vez creada la vista, debe hacer clic con el botón derecho en el esquema de modelos clásicos en el panel izquierdo y seleccionar Actualizar todo, como se muestra en la Figura 1.
![]() |
Ahora hay una carpeta Vistas disponible en el panel izquierdo, como se muestra en la Figura 2.
Ataque de inyección SQL: definición, tipos y ejemplos
![]() |
Haga clic con el botón derecho en la nueva vista que creó y seleccione ‘Seleccionar todo – Límite de 1000’ para obtener una instantánea de los datos.
![]() |
¡El cliente con el límite más alto está en Madrid!
Introducción a los Modelos Geográficos
Aplicación de código
Ahora que ha creado una vista a partir de una sola tabla, su tarea es crear una vista a partir de dos tablas. Cree una vista que seleccione información tanto de los clientes como de las tablas de pedidos : seleccione el número de pedido, el nombre del cliente, la fecha de envío y los comentarios.
Preguntas de seguimiento
Con base en las lecciones de este capítulo, complete las siguientes preguntas.
- Cree otra vista que refleje la que creó en la aplicación de código, pero extraiga los detalles del pedido de la tabla de detalles del pedido . Incluya el precio y la cantidad.
- Cree una vista para mostrar el total de todos los aviones (de la tabla de líneas de productos) vendidos. Como beneficio adicional, incluya el MSRP de la tabla de productos multiplicado por la cantidad pedida.
- ¿Qué diferencia a un disparador de una vista?
- Cree un índice en la tabla de clientes que incluya el número y ambos campos de nombre. La sintaxis para crear índices es:
CREATE INDEX index_name ON table_name (column_list)
Clave de respuesta
A continuación se encuentran las respuestas a la aplicación del código y las preguntas de seguimiento.
Aplicación de código.
Se utilizó el siguiente SQL para crear la vista.
CREAR VISTA customerOrders COMO
SELECCIONAR orderNumber, customerName, ShippingDate, comentarios
FROM orders
INNER ÚNETE a los clientes de
customers.customerNumber = orders.customerNumber
ORDER BY orderNumber;
Preguntas de seguimiento
Aquí están las respuestas a las preguntas de seguimiento.
Agregar una tercera tabla
Esto requiere otra instrucción INNER JOIN, así como un calificador en el campo orderNumber ya que existe tanto en las tablas orders como orderdetails .
CREAR VISTA customerOrderDetails COMO
SELECCIONAR orders.orderNumber, customerName, ShippingDate, comments, priceEach, amountOrdered
FROM orders
INNER JOIN clientes EN
customers.customerNumber = orders.customerNumber
INNER JOIN orderDetails ON
orderDetails.orderNumber = orders.orderNumber
ORDER BY orderNumber;
Crear una vista para aviones vendidos
CREAR VISTA planosVendido COMO
SELECCIONAR productlines.productLine, productName, orders.orderNumber,
MSRP,
amountOrder FROM orderdetails
INNER JOIN orders ON
orders.orderNumber = orderdetails.orderNumber
INNER JOIN productos ON
orderdetails.productCode = products.productCode
INNER JOIN productlines ON
= products.productLine productlines.productLine
DONDE productlines.productLine = 'Aviones';
Ahora, si desea crear un campo especial para el total, agregue lo siguiente a su declaración SELECT:
MSRP * cantidad Pedido como 'Gran total'
¿Qué diferencia a un disparador de una vista?
Como ha visto, podemos ejecutar y volver a ejecutar nuestras vistas en cualquier momento. Un disparador, por otro lado, es un evento que se puede ejecutar en base a otro evento, como una operación de inserción o selección en una tabla. Incluso pueden ejecutarse según un horario. Los desencadenadores también se pueden configurar para actualizar datos, mientras que una vista es solo eso: un vistazo a los datos, proporcionando solo las columnas que nosotros, como diseñadores, proporcionamos.
Crear un índice
Para crear un índice usando SQL, usaremos el siguiente comando:
CREAR ÍNDICE c_list ON
clientes
(customerNumber, contactLastName, contactFirstName);
Esto ayudará a acelerar las búsquedas futuras de esta tabla y contra estos datos. Un índice es una buena forma de reducir el tiempo que se tarda en acceder a los datos de una tabla de base de datos, especialmente a medida que la tabla crece.
Explora más sobre este tema
Selecciona un tema y sigue aprendiendo...



