lunes, 12 de septiembre de 2011

Lengaje de Manipulacion de datos

La manipulación de datos jerárquicos necesita localizar primero los datos sobre los que va a trabajar para realizar a continuación la acción de recuperación o actualización sobre dichos datos.
  • Localización o selección.

La función de selección jerárquica es de tipo navegacional, es decir, trabaja registro a registro. Dada la
sencillez del modelo, la función de selección es también muy sencilla, existiendo únicamente las siguientes formas básicas de búsqueda:

- Seleccionar un determinado registro que cumpla una cierta condición. en el lenguaje DL/I se realizará este
tipo de selección mediante una sentencia (GET UNIQUE -GU-) que activará el primer registro que cumpla
la condición especificada en el predicado que acompaña a la sentencia.
- Seleccionar el siguiente registro, que se encuentra perfectamente definido al existir un único camino
jerárquico. También en este caso se puede especificar una condición que habrá de cumplir el registro para ser
seleccionado. En DL/I se utiliza una sentencia (GET NEXT -GN-) que selecciona y, al mismo tiempo,
recupera el siguiente registro en el preorden.
- Seleccionar el siguiente registro dentro de un padre. Esta sentencia (GET NEXT PARENT -GNP-) es
análoga a la anterior, pero la selección termina cuando no haya más descendientes de ese padre.
- Seleccionar el registro padre de otro dado (que ha sido activado previamente) se conoce como
normalización jerárquica ascendente, mientras que la selección de descendientes se llama normalización
jerárquica descendente.
  • Acción
Una vez seleccionado un registro, se tendrá que realizar sobre él una acción, sea de recuperación o de actualización.

La recuperación, que va asociada a la selección en el DL/I, consiste en llevar el registro marcado como activo en la selección realizada previamente al área de entrada/salida. Se utiliza la sentencia GET. En cuanto a la actualización, es preciso distinguir entre:
- Insertar un conjunto de datos (INSERT -ISRT-)
- Borrar un conjunto de datos (DELETE -DLET-)
- Reemplazar -modificar- uno o varios campos de un registro (REPLACE -REPL-)

Debido a la naturaleza jerárquica de las conexiones entre registros, las inserciones y borrados de registros
requieren consideraciones especiales:

- Cuando un nuevo registro se inserta en una base de datos jerárquica, excepto para la raíz, tiene que ser
conectado a un nodo padre previamente seleccionado mediante alguna sentencia de selección. El nuevo registro se inserta como hijo del registro padre seleccionado.

- Cuando un registro se borra en una base de datos jerárquica, excepto si se trata de una hoja, se han de borrar todos los registros descendientes de él.


Ejemplos






La transformación según las cardinalidades seria:
  • Cuando la relación es uno a uno.
  • Cuando la relación es uno a muchos.
  • Cuando la relación es muchos a uno.
  • Cuando la relación es muchos a muchos.





    Según las cardinalidades los diagramas de estructura de árbol pueden quedar de la siguiente manera:
  • Cuando la relación es uno a uno.
  • Cuando la relación es uno a muchos.
  • Cuando la relación es Muchos a uno.

No hay comentarios:

Publicar un comentario