Logo Studenta

Sesion 12 _1_VISTAS

¡Este material tiene más páginas!

Vista previa del material en texto

BASE DE DATOS
BASE DE DATOS
VISTAS
LOGRO
Al finalizar la sesión los estudiantes podrán gestionar objetos de una base de datos como tablas, vistas e índices, aplicando correctamente las herramientas de un DBMS para garantizar la seguridad y la integridad de la base de datos.
Introducción a las vistas
EmployeeView
 Lastname 
 Firstname
Davolio 
Fuller 
Leverling
Nancy 
Andrew 
Janet
Employees
EmployeeID
 LastName 
Firstname
Title
1
2
3
Davolio
Fuller
Leverling
Nancy
Andrew
Janet
~~~
~~~
~~~
Vista del usuario
USE Northwind
GO
CREATE VIEW dbo.EmployeeView
AS 
SELECT LastName, Firstname
FROM Employees
5
Ventajas de las vistas
6
Centrar el interés en los datos de los usuarios
Centrarse sólo en los datos importantes
Enmascarar la complejidad de la base de datos
Ocultar el diseño de la base de datos
Limitar el acceso a los datos confidenciales
Simplificar las consultas complejas
Simplificar la administración de los permisos de usuario
Mejorar el rendimiento
Organizar los datos para exportarse a otras aplicaciones
Creación de vistas
Creación de una vista
Restricciones en las definiciones de vistas
No se puede incluir la cláusula ORDER BY
No se puede incluir la palabra clave INTO
CREATE VIEW dbo.OrderSubtotalsView (OrderID, Subtotal)
AS
SELECT OD.OrderID,
 SUM(CONVERT(money,(OD.UnitPrice*Quantity*(1-Discount)/100))*100)
FROM [Order Details] OD
GROUP BY OD.OrderID
GO
7
Ejemplo: Vista de tablas combinadas
OrderID
10663
10827
10427
10451
10515
CustomerID
BONAP 	
BONAP 	
PICCO 	
QUICK
QUICK	
~~~ 	
~~~ 	
~~~ 	
~~~ 	
~~~
RequiredDate
1997-09-24
1998-01-26
1997-02-24
1997-03-05
1997-05-07
ShippedDate
1997-10-03
1998-02-06
1997-03-03
1997-03-12
1997-05-23
Orders
Customers
ShipStatusView
USE Northwind
GO
CREATE VIEW dbo.ShipStatusView
AS
SELECT OrderID, ShippedDate, ContactName
FROM Customers c INNER JOIN Orders o
 ON c.CustomerID = O.CustomerID
WHERE RequiredDate < ShippedDate
CustomerID
BONAP
PICCO
QUICK
CompanyName
Bon app'
Piccolo und mehr
QUICK-Stop	
ContactName
Laurence Lebihan
Georg Pipps
Horst Kloss
OrderID
10264
10271
10280
1996-08-21
1996-08-29
1996-09-11	
ShippedDate
1996-08-23
1996-08-30
1996-09-12
ContactName
Laurence Lebihan
Georg Pipps
Horst Kloss
8
Modificación y eliminación de vistas
Alteración de vistas
Conserva los permisos asignados
Hace que la instrucción SELECT y las opciones reemplacen la definición existente
Eliminación de vistas
USE Northwind
GO
ALTER VIEW dbo.EmployeeView
AS 
SELECT LastName, FirstName, Extension
FROM Employees
DROP VIEW dbo.ShipStatusView
9
Ocultación de la definición de las vistas
Uso de la opción WITH ENCRYPTION
No elimine las entradas de la tabla syscomments
USE Northwind
GO
CREATE VIEW dbo.[Order Subtotals]
 WITH ENCRYPTION
AS
SELECT OrderID,
 Sum(CONVERT(money,(UnitPrice*Quantity*(1-Discount)/100))*100)
 AS Subtotal
FROM [Order Details]
GROUP BY OrderID
GO
10
Modificación de datos mediante vistas
11
No pueden afectar a más de una tabla subyacente
No pueden afectar a ciertas columnas
Pueden provocar errores si afectan a columnas a las que la vista no hace referencia 
Se comprueba si se ha especificado WITH CHECK OPTION

Continuar navegando