Tecnología

Inicio

Cuál es el efecto en la Base de la mesa cuando los datos en una vista que se cambia?

Cuál es el efecto en la Base de la mesa cuando los datos en una vista que se cambia?


Muchos sistemas de gestión de bases de datos modernas, como Oracle, DB2 de IBM y Microsoft SQL Server, permiten utilizar las estructuras de base de datos llamados puntos de vista como una alternativa a las tablas de datos. Una vista es una "mesa virtual", que aparece como un conjunto de columnas y filas y que tiene una tabla como fuente. Al igual que con las tablas, puede cambiar los datos de puntos de vista mediante el uso de instrucciones de lenguaje estructurado de consultas apropiadas. Actualización de datos tiene algunas restricciones que dependen de las tablas subyacentes de la vista.

Puntos de vista

Bases de datos ofrecen vistas como una manera cómoda, segura para representar los datos. Haces una vista mediante sentencia "CREATE VIEW" de la base de datos, proporcionando una declaración "SELECT" que especifica una o más tablas junto con las condiciones. La siguiente declaración, por ejemplo, crea una vista basada en una tabla de clientes:

CREATE VIEW indiana_customers
customer_id AS SELECT, nombre, dirección FROM clientes
DONDE = Estado "en";

Esta vista muestra sólo los clientes de Indiana. Una vista puede tener el mismo número de campos que la tabla primaria o puede omitir campos. Por ejemplo, es posible conceder acceso a una vista basada en tabla de empleados de una empresa, pero dejar de sueldo y otra información confidencial.

Vistas sola tabla

Puede cambiar los datos en una vista basada en una sola tabla con pocas restricciones. "UPDATE" "Insertar" y "Borrar" sentencias SQL tratan a las opiniones de los mismos que las tablas; los cambios realizados en los datos de vista fluyen de nuevo a la tabla subyacente. Sin embargo, hay que tener cuidado con las reglas de campo, tales aquellos que no permite valores nulos; si la tabla tiene campos con reglas pero la vista no lo hace, una instrucción INSERT puede fallar porque la vista no puede pasar valores de la tabla para aquellos campos que no incluye.

Múltiples vistas de tabla

Una vista puede incorporar datos de más de una tabla; instrucción SELECT de la vista puede tener una cláusula JOIN que conecta dos mesas juntas. En este caso el punto de vista puede tener campos de cualquiera de las tablas. Puede cambiar los datos en una vista de varias tablas, aunque hay que observar algunas reglas. Puede cambiar la información en una sola de las tablas subyacentes, y que la mesa debe tener un campo de clave presente en la vista. La marca de software de base de datos puede tener sus propias normas de actualización de estos tipos de vistas.

No vistas actualizables

Algunos puntos de vista no permiten cambios. Por ejemplo, Oracle tiene una opción "Solo Lectura" que impide una visión desde el cambio de datos de la tabla. No se puede actualizar una vista que especifica la palabra clave "DISTINCT" o "GROUP BY" cláusulas en sus instrucciones SELECT, ya que sus registros constan de agregados de registros de la tabla subyacente. Aunque puede solucionar esto con la base de datos activa como "en lugar de" este enfoque añade complejidad a las actualizaciones de datos.