domingo, 26 de febrero de 2012

2.5 Lenguajes De Un DMBS (DDL,DML):

Lenguajes De Base De Datos:
Un sistema de bases de datos proporciona un lenguaje de definición de datos para especificar el esquema de la base de datos y un lenguaje de manipulación de datos para expresar las consultas a la base de datos y las modificaciones. En la práctica, los lenguajes de definición y manipulación de datos no son dos lenguajes separados; en su lugar simplemente forman partes de un único lenguaje de bases de datos, tal como SQL, ampliamente usado.



Un esquema de base de datos se especifica mediante un
conjunto de definiciones expresadas mediante un lenguaje
especial llamado lenguaje de definición de datos
(LDD). Por ejemplo, la siguiente instrucción en el lenguaje
SQL define la tabla cuenta:
create table cuenta
(número-cuenta char(10),
saldo integer)
La ejecución de la instrucción LDD anterior crea la tabla cuenta. Además, actualiza un conjunto especial detablas denominado diccionario de datos o directorio de datos.
Un diccionario de datos contiene metadatos, es decir,
datos acerca de los datos. El esquema de una tabla es
un ejemplo de metadatos. Un sistema de base de datos
consulta el diccionario de datos antes de leer o modificar
los datos reales.
Especificamos el almacenamiento y los métodos de
acceso usados por el sistema de bases de datos por un
conjunto de instrucciones en un tipo especial de LDD
denominado lenguaje de almacenamiento y definición
de datos. Estas instrucciones definen los detalles de
implementación de los esquemas de base de datos, que
se ocultan usualmente a los usuarios.

Los valores de datos almacenados en la base de datos
deben satisfacer ciertas restricciones de consistencia.
Por ejemplo, supóngase que el saldo de una cuenta no
debe caer por debajo de 100 €. El LDD proporciona
facilidades para especificar tales restricciones. Los sistemas
de bases de datos comprueban estas restricciones
cada vez que se actualiza la base de datos.


Lenguaje De Manipulacion De Datos:
La manipulación de datos es:
• La recuperación de información almacenada en la
base de datos.
• La inserción de información nueva en la base de
datos.
• El borrado de información de la base de datos.
• La modificación de información almacenada en la
base de datos.
Un lenguaje de manipulación de datos (LMD) es
un lenguaje que permite a los usuarios acceder o manipular
los datos organizados mediante el modelo de datos
apropiado. Hay dos tipos básicamente:
• LMDs procedimentales. Requieren que el usuario
especifique qué datos se necesitan y cómo obtener
esos datos.
• LMDs declarativos (también conocidos como
LMDs no procedimentales). Requieren que el
usuario especifique qué datos se necesitan sin especificar
cómo obtener esos datos.
Los LMDs declarativos son más fáciles de aprender
y usar que los LMDs procedimentales. Sin embargo,
como el usuario no especifica cómo conseguir los datos,
el sistema de bases de datos tiene que determinar un
medio eficiente de acceder a los datos. El componente
LMD del lenguaje SQL es no procedimental.



Una consulta es una instrucción de solicitud para recuperar
información. La parte de un LMD que implica recuperación
de información se llama lenguaje de consultas. Aunque técnicamente sea incorrecto, en la práctica se usan los términos lenguaje de consultas y lenguaje de manipulación de datos como sinónimos. Esta consulta en el lenguaje SQL encuentra el nombre
del cliente cuyo identificador de cliente es 19.283.746:

select cliente.nombre-cliente
from cliente
where cliente.id-cliente = ‘19 283 746’

La consulta especifica que las filas de (from) la tabla cliente donde (where) el id-cliente es 19 283 746 se debe recuperar, y que se debe mostrar el atributo nombrecliente de estas filas. Las consultas pueden involucrar información de más de una tabla. Por ejemplo, la siguiente consulta encuentra el saldo de todas las cuentas pertenecientes al cliente cuyo identificador de cliente es 19 283 746.

select cuenta.saldo
from impositor, cuenta
where impositor.id-cliente = ‘19-283-746’ and
impositor.número-cuenta = cuenta.númerocuenta
Si la consulta anterior se ejecutase con las tablas el sistema encontraría que las dos cuentas denominadas C-101 y C-201 pertenecen al cliente 19 283 746 e imprimiría los saldos de las dos cuentas, es decir, 500 y 900 €.
Hay varios lenguajes de consulta de bases de datos en uso, ya sea comercialmente o experimentalmente. Se estudiará el lenguaje de consultas más ampliamente usado, SQL.

En el nivel físico se deben definir algoritmos que permitan un acceso eficiente a los datos. En los niveles superiores de abstracción se enfatiza la facilidad de uso. El objetivo es proporcionar una interacción humana eficiente con el sistema. El componente procesador de consultas del sistema de bases de datos (que se estudia en los Capítulos 13 y 14) traduce las consultas LMD en secuencias de acciones en el nivel físico del sistema de bases de datos.

Acceso a la base de datos
desde programas de aplicación Los programas de aplicación son programas que se usan para interaccionar con la base de datos. Los programas de aplicación se escriben usualmente en un lenguaje anfitrión, tal como Cobol, C, C++ o Java. En el sistema bancario algunos ejemplos son programas que emiten los cheques
de las nóminas, las cuentas de débito, las cuentas de crédito o las transferencias de fondos entre cuentas.
Para acceder a la base de datos, las instrucciones
LMD necesitan ser ejecutadas desde el lenguaje anfitrión.
Hay dos maneras de hacerlo:

  1. • Proporcionando una interfaz de programas de aplicación (conjunto de procedimientos) que se puedenusar para enviar instrucciones LMD y LDD a la base de datos, y recuperar los resultados. El estándar de conectividad abierta de bases de datos (ODBC, Open Data Base Connectivity) definido por Microsoft para el uso con el lenguaje C es un estándar de interfaz de programas de aplicación usado comúnmente. El estándar conectividad de Java con bases de datos (JDBC, Java Data Base Connectivity) proporciona características correspondientes para el lenguaje Java.

  2. Extendiendo la sintaxis del lenguaje anfitrión para incorporar llamadas LMD dentro del programa del lenguaje anfitrión. Usualmente, un carácter especial precede a las llamadas LMD, y un preprocesador, denominado el precompiladorLMD, convierte las instrucciones LMD en llamadas normales a procedimientos en el lenguaje anfitrión.


BiblioGrafia: Fundamentos De Base De Datos, 4ta EdicionAbraham Silberschatz ,Bell Laboratories Henry F. Korth, Bell Laboratories S. Sudarshan Instituto Indio de Tecnología, Bombay

Sigamos Aquí Biene Lo Bueno.... :D

2.5 Lenguajes De Un DMBS (DDL,DML):
Todo SGBD se componen, inicialmente, de 4 unidades diferenciadas:

1.-DDL: Lenguaje de de nición de datos (Data De nition Language). Sencillolenguaje arti cial para de nir y describir los objetos de la base de datos, su estructura, relaciones y restricciones. En la práctica puede consistir en un subconjunto de instrucciones
de otro lenguaje informático. Además, suele poseer dos subconjuntos de instrucciones:

  • DSDL: Lenguaje de de nición del almacenamiento de los datos (Data Storage De nition Language). permite especi car características físicas de la base de datos (volúmenes y archivos donde van a ser almacenados los datos, etc).

  • DCL: Lenguaje de control de datos (Data Control Language). encargado del control y seguridad de los datos (privilegios y modos de acceso, etc).


2. DML: Lenguaje de manipulación de datos (Data Manipulation Language). Lenguaje arti cial de cierta complejidad que permite el manejo y procesamiento del contenido de la base de datos. En la práctica puede consistir en un subconjunto de instrucciones
de otro lenguaje informático. Las aplicaciones que trabajan sobre la base de datos se programan en un lenguaje de programación (C, Cobol, ...) insertando en el código fuente sentencias del DML. Al utilizar un DML se deben especi car los datos que serán afectados
por las sentencias del lenguaje. Un DML puede tener o no procedimientos, según sea necesario especi car además cómo deben obtenerse esos datos. Los DML con procedimientos
tienen sentencias de control de ujo como bucles o condicionales. Los DML sin procedimientos son conocidos también como declarativos.
3. Diccionario de datos:Conjunto de archivos que almacenan convenientemente las de niciones realizadas utilizando el DML.



  • Gestor: componente software (programa) encargado de la interface entre las peticiones de los usuarios de la base de datos y los propios datos en sí. Interacción con el sistema operativo.


El uso real de un SGBD puede realizarse de forma única o combinada utilizando directamente el
DDL y el DML o bien a través de una interfaz grá ca o basada en menús. Aunque usualmente
se utilizan indistintamente los términos datos e información, en rigor existe una importante
distinción entre ellos: datos se re ere a los valores registrados físicamente en la base de datos, e
información alude al signi cado de esos valores según el sentido que les otorgue un humano.
El contenido de la base de datos puede estructurarse en tres niveles:

  • Campo: unidad de datos individual de menor tamaño y con signi cado pleno. Los campos pueden agruparse para constituir otros más complejos (ej. fecha de nacimiento). Pueden ser de diversa naturaleza (numérica, alfabética, multimedia, etc). Tienen un tamaño asociado, medido físicamente en bytes.



  • Registro: conjunto de campos intrínsecamente relacionados mediante una signi cacióncomún y que determinan la información asociada a uno de los objetos del mundo real que se pretende modelizar. Suele constituir la unidad básica de acceso a la base de datos (contenido que se puede almacenar o recuperar en un solo acceso).



  • Fichero: conjunto de ocurrencias de un mismo tipo de registros.


No hay comentarios:

Publicar un comentario