Mostrando entradas con la etiqueta actualizacion. Mostrar todas las entradas
Mostrando entradas con la etiqueta actualizacion. Mostrar todas las entradas

domingo, 26 de junio de 2011

ACTUALIZACION

     Para que una vista se pueda actualizar debe existir una relación directa entre las filas y columnas de la vista y las de la tabla fuente. Según el estándar ANSI, se puede actualizar a través de las vistas si la consulta que la define, satisface las siguientes restricciones:

1ª - No especifica DISTINCT
2ª - FROM debe especificar una única tabla
3ª - La lista de selección no puede contener expresiones, columnas calculadas o
funciones de columna, solo referencias a columnas simples.

4ª - WHERE no debe incluir subconsultas.
5ª - No debe incluir ni GROUP BY ni HAVING.
EJEMPLO:

1)    Crear una vista que muestre los vendedores de la región este. 

CREATE VIEW repEste AS
SELECT *
FROM RVENTAS
WHERE r_oficina IN (11,12,13); //que serían las situadas al Este
Ahora añadimos un nuevo vendedor a través de la vista.
INSERT INTO repEste (num_empl, nombre, r_oficina, edad, ventas)
VALUES (113, ‘Jorge Ruiz’, 11, 43, 0.00);
Ahora resulta que trasladan a otro empleado(104) a otra oficina (12).
UPDATE repEste


SET r_oficina = 21  //aquí se equivocan y en lugar de poner 12 ponen 21
WHERE num_empl = 104;
Con lo cual este señor no figuraría en la vista, pero sí en la tabla.