Idiomas subd. Herramientas lingüísticas para sistemas de gestión de bases de datos. Herramientas de lenguaje y software para bases de datos.

Para trabajar con bases de datos se utilizan lenguajes especiales, generalmente llamados lenguajes de bases de datos. Los primeros DBMS admitían varios lenguajes especializados en sus funciones. La mayoría de las veces, se destacaron dos idiomas: lenguaje de definición de esquema DB (DDL - Lenguaje de definición de datos) Y lenguaje de manipulación de datos (DML - Lenguaje de manipulación de datos). DDL sirvió principalmente para definir la estructura lógica de la base de datos, es decir. la estructura de la base de datos tal como aparece ante los usuarios. El DML contenía un conjunto de operadores de manipulación de datos, es decir. Operadores que permiten ingresar datos a la base de datos, eliminar, modificar o seleccionar datos existentes.

Los DBMS modernos suelen admitir un único lenguaje integrado que contiene todas las herramientas necesarias para trabajar con una base de datos, desde su creación y proporcionando una interfaz de usuario básica con las bases de datos. Idioma estándar El DBMS relacional más común utilizado actualmente es SQL (lenguaje de consulta estructurado), que combina herramientas DDL y DML.


CAPÍTULO 2. ORGANIZACIÓN TÍPICA DE UN SGBD MODERNO

Naturalmente, la organización de un DBMS típico y la composición de sus componentes corresponde al conjunto de funciones considerado.

Lógicamente en lo moderno SGBD relacional podemos distinguir la parte más interna: el núcleo DBMS (a menudo llamado motor de base de datos), el compilador del lenguaje de la base de datos (generalmente SQL), el subsistema de soporte de tiempo de ejecución y un conjunto de utilidades. En algunos sistemas estas partes están claramente diferenciadas, en otros no, pero lógicamente dicha división se puede realizar en todos los DBMS. (Figura 1)

Núcleo de DBMS es responsable de la gestión de datos en memoria externa, Gestión del búfer RAM, gestión y registro de transacciones. En consecuencia, los componentes del núcleo pueden identificarse (al menos lógicamente, aunque algunos sistemas identifican explícitamente estos componentes) como un administrador de datos, un administrador de búfer, un administrador de transacciones y un administrador de registros. Las funciones de estos componentes están interconectadas y para garantizar funcionamiento correcto DBMS, todos estos componentes deben interactuar utilizando protocolos probados y cuidadosamente pensados. El kernel DBMS tiene su propia interfaz, a la que los usuarios no pueden acceder directamente y se utiliza en programas producidos por el compilador SQL (o en el subsistema para soportar la ejecución de dichos programas) y utilidades de bases de datos. El kernel DBMS es la principal parte residente del DBMS. Cuando se utiliza una arquitectura cliente-servidor, el kernel es el componente principal de la parte del servidor del sistema.

Función principal compilador de lenguaje de base de datos es la compilación de declaraciones del lenguaje de la base de datos en algún programa ejecutable. El principal problema de los DBMS relacionales es que los lenguajes de estos sistemas (generalmente SQL) no son procesales, es decir. en el operador de dicho lenguaje, se especifica alguna acción en la base de datos, pero esta especificación no es un procedimiento, sino que solo describe de alguna forma las condiciones para realizar la acción deseada. Por lo tanto, el compilador debe decidir cómo ejecutar una declaración de lenguaje antes de producir el programa. suficientemente aplicado métodos complejos optimizaciones del operador, que cubriremos en detalle en los siguientes capítulos.



El resultado de la compilación es un programa ejecutable, representado en algunos sistemas en código de máquina, pero más a menudo en código ejecutable interno independiente de la máquina. En este último caso, la ejecución real de la declaración se lleva a cabo con usando el subsistema de soporte de tiempo de ejecución, que es, en esencia, un intérprete de este lenguaje interno.

Finalmente, en utilidades de bases de datos individuales Por lo general, se identifican procedimientos que son demasiado costosos de realizar utilizando el lenguaje de la base de datos, por ejemplo, cargar y descargar una base de datos, recopilar estadísticas, verificar globalmente la integridad de la base de datos, etc. Las utilidades se programan utilizando la interfaz del kernel DBMS y, a veces, incluso penetrando en el kernel.

Arroz. 1. Relación entre programas y datos al utilizar un DBMS

Clasificación de usuarios de DBMS

Los usuarios de DBMS se pueden dividir en 3 grandes grupos.

Primero - programadores de aplicaciones, quienes son responsables de escribir programas de aplicación que utilizan la base de datos. Los programas de aplicación realizan todas las operaciones estándar con datos: muestreo información existente, insertar nueva información, eliminando o actualizando información existente. Todas estas funciones se realizan mediante una consulta adecuada al DBMS. Estos programas pueden ser programas simples. procesamiento por lotes o operacional aplicaciones cuya función es apoyar el trabajo del usuario final que tiene acceso directo en línea a la base de datos a través de puesto de trabajo o terminales. Mayoría aplicaciones modernas se refiere a los operativos.

Segundo - usuarios finales, que trabajan con sistemas de bases de datos directamente a través de una estación de trabajo o terminal. Usuario final puede acceder a la base de datos utilizando una de las aplicaciones en línea mencionadas anteriormente, o utilizar la interfaz integrada software el propio sistema de base de datos. Esta interfaz también es compatible aplicación operativa, pero esta aplicación no es creada por el usuario, es incorporado en el sistema de base de datos. La mayoría de los sistemas tienen al menos una de estas aplicaciones integradas, a saber: UPC lenguaje de consulta, que permite al usuario especificar comandos o expresiones alto nivel(como seleccionar o insertar) para un DBMS determinado. El lenguaje SQL mencionado anteriormente es un ejemplo típico de lenguaje de consulta para bases de datos.

Comentario. El término común "lenguaje de consulta" no refleja con precisión el concepto en cuestión, ya que la palabra "consulta" implica sólo una selección, mientras que el lenguaje también realiza operaciones de actualización, inserción y eliminación (y posiblemente muchas otras).

Además del lenguaje de consulta, la mayoría de los sistemas también proporcionan interfaces integradas adicionales en las que el usuario no utiliza explícitamente comandos como seleccionar. Para trabajar con esta base de datos, el usuario, por ejemplo, selecciona comandos necesarios menú o completar campos en formularios. Tales interfaces basado en menús y formularios, facilitar el trabajo con bases de datos para quienes no tienen experiencia trabajando con tecnologías de la información (TI; también se usa a menudo la abreviatura IS - sistemas de información, estos conceptos son casi equivalentes). Dominio interfaz, aquellos. El lenguaje de consulta, por otro lado, requiere cierta (tal vez no mucha) experiencia en TI. Sin embargo, una interfaz de comandos suele ser más flexible que una basada en menús y formularios; Además, los lenguajes de consulta suelen tener ciertas funciones, que no son compatibles con interfaces basadas en menús y formularios.

Tercer grupo - administradores de bases de datos, o DBA.

Echemos un vistazo más de cerca al concepto de gestión centralizada. Se supone que con una gestión centralizada en una empresa que utiliza un sistema de base de datos, hay una persona que tiene la responsabilidad principal de los datos de la empresa. Este administrador de datos, o BP, mencionado anteriormente en este capítulo. Debido al hecho de que los datos (como se señaló anteriormente) son uno de los principales valores de la empresa, el administrador debe comprender los datos y comprender las necesidades de la empresa en relación con los datos. a nivel de gestión de la alta dirección de la empresa. Por lo tanto, es responsabilidad del administrador de datos decidir qué datos deben ingresarse primero en la base de datos y garantizar que se mantengan y utilicen en orden una vez que se hayan ingresado en la base de datos. Por ejemplo, debe indicar quién, en qué condiciones, sobre qué datos y qué operaciones puede realizar. En otras palabras, debe proporcionar seguridad de datos.

Es muy importante que el administrador de datos trabaje como administrador y no como especialista. problemas técnicos(aunque, por supuesto, debería tener un buen conocimiento de las capacidades de las bases de datos a nivel técnico). Técnico especialista responsable de implementar soluciones administrador de datos, - Este administrador de base de datos, o DBA. Por lo tanto, un administrador de base de datos, a diferencia de un administrador de datos, debe ser Profesional especialista en el campo de las tecnologías de la información. El trabajo de un DBA es crear las propias bases de datos y control técnico necesario para implementar las decisiones del administrador de datos. El DBA también es responsable de garantizar el rendimiento necesario del sistema y su mantenimiento. Normalmente, un DBA cuenta con una plantilla de programadores de sistemas y asistentes técnicos (es decir, en la práctica, las funciones de un DBA las realiza un equipo de varias personas, en lugar de un solo empleado). Sin embargo, por simplicidad, es conveniente suponer que el administrador de la base de datos es una sola persona.

DISTRIBUCIÓN DE RESPONSABILIDADES EN SISTEMAS DE BASE DE DATOS.

Uno de los componentes del entorno DBMS son los usuarios.

Los usuarios de DBMS se pueden dividir en 4 grupos diferentes: administradores de bases de datos y datos, desarrolladores de bases de datos, programadores de aplicaciones y usuarios finales.

Administradores de datos y administradores de bases de datos.

La base de datos y el DBMS son recursos empresariales que deben administrarse como cualquier otro recurso. Normalmente, la gestión de datos y bases de datos implica gestionar y controlar el DBMS y los datos almacenados en él.

El Administrador de datos (DA) es responsable de la gestión de datos, incluida la planificación de bases de datos, el desarrollo y mantenimiento de estándares, reglas comerciales y procedimientos comerciales, y el diseño conceptual y lógico de bases de datos. La AD asesora y formula recomendaciones a la alta dirección, monitoreando el cumplimiento de la dirección general de desarrollo de bases de datos con los objetivos corporativos establecidos.

El Administrador de la base de datos (DBA) es responsable de la implementación física de la base de datos, incluido el diseño físico y la implementación del proyecto, garantizando la seguridad e integridad de los datos y manteniendo Sistema operativo, así como para garantizar máximo rendimiento aplicaciones y usuarios. En comparación con AD, las responsabilidades de un DBA son de naturaleza más técnica y requieren conocimiento del DBMS específico y del entorno del sistema. En algunas organizaciones no se hace distinción entre estos roles, mientras que en otras la importancia recursos corporativos reflejado precisamente en la selección grupos separados personal con el rango de responsabilidades especificado.

Administración de datos y administración de bases de datos.

El administrador de datos (DA) y el administrador de la base de datos (DBA) son responsables de gestionar las actividades relacionadas con los datos empresariales y la base de datos empresarial, respectivamente. Consideremos las metas y objetivos que están incluidos en las responsabilidades de AD y DBA en una determinada organización. La siguiente tabla muestra los pasos ciclo vital aplicaciones de bases de datos e indica la contribución de AD y DBA en cada una de ellas (o los roles que desempeñan (principal o auxiliar)).

Tabla 1. Etapas del ciclo de vida de la base de datos que indican el rol de AD y DBA

Escenario papel principal Papel secundario
Planificación del desarrollo de su base de datos INFIERNO administrador de bases de datos
Determinar los requisitos del sistema INFIERNO administrador de bases de datos
Recopilación y análisis de requisitos de usuario. INFIERNO administrador de bases de datos
Diseño conceptual de bases de datos. INFIERNO administrador de bases de datos
Seleccionar un DBMS de destino administrador de bases de datos INFIERNO
Diseño de bases de datos lógicas INFIERNO administrador de bases de datos
Desarrollo de aplicaciones administrador de bases de datos INFIERNO
Diseño de base de datos física administrador de bases de datos INFIERNO
Creación de prototipos administrador de bases de datos INFIERNO
Implementación administrador de bases de datos INFIERNO
administrador de bases de datos INFIERNO
Cuotas administrador de bases de datos INFIERNO
Operación y mantenimiento administrador de bases de datos INFIERNO

El administrador de datos asume un papel más activo en las primeras etapas del ciclo de vida, desde la planificación de la base de datos hasta diseño lógico, mientras que el administrador de la base de datos asume un papel más activo en las etapas posteriores, desde el diseño de la aplicación y diseño físico base de datos hasta la etapa de operación y mantenimiento del sistema terminado.

Las herramientas del lenguaje DBMS se utilizan para realizar las funciones de describir la presentación de una base de datos (lenguaje de descripción de datos), realizar operaciones de manipulación de datos (lenguaje de manipulación de datos) y proporcionar datos a los usuarios sobre sus solicitudes (lenguaje de consulta).

Funciones del SGBD

  • 1. Gestión de datos en memoria externa;
  • 2. gestión de buffers en memoria externa:

El buffering es para suavizar las diferencias. trabajo de velocidad entre la memoria externa y la interna.

Al trabajar con una base de datos, el SGBD puede determinar la mayor o menor relevancia de algunos datos. Los datos más actuales se pueden almacenar en un búfer en todo momento. Esta característica mejora la eficiencia del procesamiento de datos.

3 . gestión de transacciones:

transacción: una secuencia de operaciones sobre datos de una base de datos, que el DBMS considera como un todo lógico. Por todo lógico queremos decir que el DBMS registra el comienzo de un conjunto de operaciones y su final. Esta característica es necesaria para mantener la integridad de los datos y la coherencia lógica, así como la gestión segura de los datos. La transacción debe finalizar ya sea confirmando un nuevo estado o restaurando el estado anterior (reversión). Hay una posibilidad ejecución paralela múltiples transacciones (pero a veces esto no es posible). Ejecución en serie de transacciones: ejecución de acuerdo con el llamado plan en serie. Plan en serie: un plan de ejecución de transacciones en el que el efecto de una combinación de transacciones es equivalente a su ejecución secuencial. Los algoritmos de serialización se basan en capturas en serie (sincronización). El propósito de tales capturas es construir un plan en serie.

4. registro: mantener algún tipo de registros:

Hay dos tipos de fallas:

  • - suave, asociado con un corte de energía, parada de emergencia de la máquina, falla del sistema operativo;
  • - difícil - caracterizado por la pérdida de información en medios externos (accidente HD).

En caso de cualquier tipo de falla, es necesario prever la recuperación de la información. Esto implica almacenar el exceso información adicional. Esta información necesaria para la recuperación se almacena en registros. El registro es una parte del DBMS a la que el usuario no puede acceder y se mantiene con especial cuidado. La revista se almacena en varias copias o en varios soportes. El registro se utiliza para registrar todos los cambios que se realizan en los datos. Desde este punto de vista, se pueden considerar dos versiones de la revista:

  • - revista cambios locales- registra operaciones individuales asociadas con el cambio de páginas de la memoria externa;
  • - revista cambios globales- registra los resultados de transacciones o conjuntos de transacciones.

Cuando se utiliza el registro, se utiliza la estrategia WAL (Write Ahead Log). El objetivo de esta estrategia es registrar los cambios antes de los cambios mismos.

En caso de una falla grave, necesitará una copia del registro y copia de archivo DB, mientras que la copia del archivo y el registro deben ser consistentes - esto es tarea importante DB.

5. soporte para lenguajes de datos (lenguaje de datos)

Hay dos tareas de los sistemas de información:

  • - descripción de la estructura de datos;
  • - manipulación de estos datos.

Anteriormente, estos problemas se resolvían mediante medios lingüísticos. Aquellos. Se admitieron el lenguaje de descripción de datos SDL (Schema Definición Language) y el lenguaje de manipulación de datos DML (Data Manipulation Language). La tarea de SDL era proporcionar herramientas para nombrar objetos de bases de datos, escribir elementos individuales y descripciones de relaciones entre elementos de datos. DML admite la descripción de acciones para cambiar aquellos objetos que se describen en SDL.

En los DBMS modernos, las funciones de estos lenguajes se combinan en un lenguaje de consulta estructurado SQL (lenguaje de consulta estructurado). El compilador SQL convierte descripciones y consultas en una representación interna de los datos. Gracias a esto, la parte de control central del DBMS funciona solo con vistas internas, lo que garantiza un funcionamiento eficiente.

SQL contiene:

  • - medios para describir restricciones de integridad;
  • - medios para autorizar el acceso a diversos objetos:

La esencia es que cada objeto está asociado con un conjunto de acciones permitidas y un círculo de usuarios con diferentes poderes. Los poderes y acciones se describen en diferentes mesas. La herramienta de idioma le permite controlar esto.

Según la funcionalidad, se distinguen las siguientes categorías de idiomas:

  • 1. Idiomas que sólo tienen capacidades de consulta. Garantizan que los datos requeridos se muestren en la pantalla o se impriman en el formato requerido. Actualmente raramente usado.
  • 2. Lenguajes complejos de consulta/actualización. Estos son lenguajes más avanzados; te permiten formular consultas complejas en múltiples registros relacionados, y actualizar los datos es tan fácil como realizar consultas. Utilizándolos, los usuarios pueden crear sus propios archivos.
  • 3. Generadores de informes. Permiten seleccionar los datos deseados de archivos o bases de datos y formatearlos en los formularios de documento requeridos.
  • 4. Lenguajes gráficos. Uso herramientas graficas actualmente está en constante expansión. Con su ayuda, puede mostrar datos en forma de varios gráficos y tablas, así como utilizar otras capacidades visuales. Como generadores de informes, lenguajes graficos le permite seleccionar información de archivos o bases de datos de acuerdo con varios criterios, así como realizar manipulaciones aritméticas y lógicas con los datos.
  • 5. Herramientas apoyo a la decisión. Los lenguajes de este tipo están diseñados para crear sistemas de toma de decisiones. Estos pueden ser sistemas "qué pasaría si", sistemas que realizan análisis de tiempo o tendencias, etc. Es posible utilizar herramientas tanto universales como orientadas a problemas.
  • 6. Generadores de aplicaciones. Proporcionar la capacidad de describir de forma no procesal el procesamiento de información requerido y la posterior generación automática de programas.
  • 7. Lenguajes de especificación orientados a máquinas. De hecho, son generadores de aplicaciones, su mayor desarrollo. A diferencia de los generadores de aplicaciones, los lenguajes de especificación son más versátiles y permiten especificar diferentes tipos de aplicaciones.
  • 8. Idiomas de muy alto nivel. En la mayoría de los casos, las aplicaciones se crean utilizando lenguajes no procedimentales. Sin embargo, algunos lenguajes son procedimentales (por ejemplo, NOMAD), pero la programación en ellos es mucho más corta que, por ejemplo, en Cobol.
  • 9. Paquetes de programas de aplicación parametrizados (APP). Esta categoría de software se conoce desde hace mucho tiempo, y la “cuarta generación” se refiere a aquellos programas de software que permiten una fácil modificación del paquete en sí, permiten a los usuarios generar sus propios informes, consultas de bases de datos, etc.
  • 10. Idiomas de aplicación. Muchos lenguajes de cuarta generación son de propósito general, mientras que otros están diseñados para aplicaciones específicas. Ejemplos de estos lenguajes son los lenguajes para la gestión financiera, el control del funcionamiento de máquinas herramienta con programa controlado etc.

DB – sov interconectado. y estructurado datos en soportes legibles por máquina. La información se procesa en la base de datos utilizando una computadora.

Distinguir factual Y documental bases de datos. La base de datos factual almacena mucha información sobre objetos. área temática, sus propiedades, conexiones entre ellos. La base de datos documental le permite no solo acumular y procesar documentos de texto arbitrarios, sino también buscarlos rápidamente debido a la presentación estructurada e interconectada de la información en la base de datos.

La conexión de bases de datos entre sí y con usuarios remotos mediante redes de datos produce un efecto inusualmente poderoso en el uso de los recursos de información.

La búsqueda de los datos necesarios en la base de datos electrónica se produce en cuestión de segundos, y en el caso de utilizar redes informáticas No diferencia fundamental ya sea que el usuario esté cerca del ordenador que almacena la información o a cientos o miles de kilómetros de él. Al mismo tiempo, muchos clientes pueden utilizar los mismos datos simultáneamente (a diferencia de una biblioteca normal).

Valor principal La base de datos consiste en ofrecer la posibilidad de una búsqueda temática, en la que el usuario, utilizando palabras clave dadas, descubre el número de fuentes primarias en la base de datos, acota el problema, lee los títulos de los artículos y, posiblemente, sus resúmenes. Si la base de datos contiene textos completos, puede imprimir él mismo los extractos más interesantes. Toda la sesión de diálogo con la base de datos tiene una duración de 20 a 40 minutos, y mayoría Al usuario le toma tiempo reaccionar.

Todos los procesos dentro de la base de datos se implementan mediante un sistema de gestión de bases de datos (DBMS). DBMS es un conjunto de lenguajes y herramientas de software diseñados para describir una base de datos, su creación, mantenimiento y uso por parte de muchos usuarios.

Básico Funciones del SGBD:

1) crear bases de datos en una computadora

2) entrada, acumulación, visualización y modificación. Datos

3) respuestas a solicitudes de datos

4) preparación de informes,

Las bases de datos (BD) constituyen actualmente la base del soporte informático de los procesos de información que forman parte de casi todos los ámbitos de la actividad humana. Su universalidad está determinada por el hecho de que los procesos de procesamiento de la información tienen un carácter común y se basan en una descripción de fragmentos de la realidad, expresados ​​​​como un conjunto de datos interrelacionados. Las bases de datos son medios efectivos Representar y manipular estructuras de datos. El concepto de bases de datos implica el uso de medios integrados de almacenamiento de información para garantizar gestión centralizada datos y servirlos a muchos usuarios.

descrito o modelado utilizando la base de datos y sus aplicaciones. En el área temática se identifican objetos de información: objetos identificables. mundo real, procesos, sistemas, conceptos, etc., información sobre la cual se almacena en la base de datos.

Las etapas de implementación de la base de datos corresponden a niveles de descripción del área temática: la realidad tal como existe; descripción conceptual de la realidad; presentación de la descripción en forma de texto formal e implementación física de la base de datos en soporte informático.

Para ingresar a la base de datos, la descripción del área temática debe presentarse en términos de un lenguaje de descripción de datos especial (DDL), que se incluye en el conjunto de herramientas DBMS. El DDL divide los datos en tipos.


Tipos de datos.

Para ingresar a la base de datos, la descripción del área temática debe presentarse en términos de un lenguaje de descripción de datos especial (DDL), que se incluye en el conjunto de herramientas DBMS. La DEA divide los datos en los siguientes tipos.

Simple (elemental) dado - es la unidad de datos con nombre semánticamente significativa más pequeña (por ejemplo, el nombre del barco, el nombre del armador, el puerto de origen, etc.). Los valores de un dato simple describen la característica de un objeto representado por él para cada una de sus instancias. Los nombres de los datos simples se almacenan en la descripción de la base de datos, mientras que sus valores se almacenan en la propia base de datos.

Una colección de datos simples se puede combinar en dato compuesto de dos maneras. Primero, puedes conectar varios tipos diferentes de datos. Según este principio, se forma dato estructural, o tipo dado"estructura". La descripción de una estructura consta de una lista de sus partes constituyentes, el valor, de los valores de sus datos constituyentes. En segundo lugar, compuesto esto puede combinar un conjunto de datos del mismo tipo (lista de empleados, historial de los empleados, etc.). Un dato compuesto de este tipo se llama matriz. En la descripción de un $array basta con indicar la descripción de un elemento. El valor de una matriz está representado por una lista homogénea de los valores de sus elementos.

Tipos compuestos m.b. combinados en datos de varios niveles. Representación del área temática en forma de estructura de datos jerárquica. conexiones - jerárquicas. modelo de datos.


5. Bases de datos relacionales.

RT – DB, en cat. todos los datos disponible para el usuario, están organizados en forma de conexiones. Las tablas y todas las operaciones con datos se reducen a operaciones en estas tablas.

Definido por las 12 reglas de Codd.

regla 0: Regla básica: un DBMS relacional debe poder administrar completamente la base de datos utilizando relaciones entre datos.:

Ser sistema relacional sistema de gestión de bases de datos (DBMS), el sistema debe utilizar exclusivamente sus capacidades relacionales para gestionar la base de datos.

Regla 1: La regla de la información:

La información debe presentarse en forma de datos almacenados en celdas. Los datos almacenados en las celdas deben ser atómicos. El orden de las filas en una tabla relacional no debería afectar el significado de los datos.

Regla 2: Regla de acceso garantizado:

El acceso a los datos debe estar libre de ambigüedades. Se debe garantizar que cada elemento de datos sea accesible mediante una combinación de nombre de tabla, clave principal de fila y nombre de columna.

Regla 3: Procesamiento completo valores desconocidos (Tratamiento Sistemático de Valores Nulos):

Desconocido valores NULL, diferente a cualquier valor conocido, debe ser compatible con todos los tipos de datos al realizar cualquier operación. Por ejemplo, para datos numéricos, los valores desconocidos no deben tratarse como ceros, y para datos de caracteres, los valores desconocidos no deben tratarse como cadenas vacías.

regla 4: Acceso al diccionario de datos en términos del modelo relacional (Catálogo Activo en Línea Basado en el Modelo Relacional):

El diccionario de datos debe almacenarse en forma de tablas relacionales y el DBMS debe admitir el acceso a él mediante herramientas de lenguaje estándar, las mismas que se utilizan para trabajar con tablas relacionales que contienen datos de usuario.

Regla 5: Regla del sublenguaje de datos completo:

sistema de control bases de datos relacionales Los datos deben soportar al menos un lenguaje relacional que

(a) tiene una sintaxis lineal,

(b) se puede utilizar tanto de forma interactiva como en programas de aplicación,

(c) admite operaciones de definición de datos, operaciones de definición de vistas, manipulación de datos (interactiva y programática), operaciones de restricción de integridad, operaciones de control de acceso y operaciones de control de transacciones (inicio, confirmación y reversión).

Regla 6: Ver regla de actualización:

Cada vista debe admitir todas las operaciones de manipulación de datos que admiten las tablas relacionales: seleccionar, insertar, modificar y eliminar datos.

Regla 7: Disponibilidad de operaciones de gestión de datos de alto nivel (insertar, actualizar y eliminar de alto nivel):

Las operaciones de inserción, modificación y eliminación de datos deben admitirse no sólo en relación con una fila de la tabla relacional, sino en relación con cualquier conjunto de filas.

Regla 8: Independencia de los datos físicos:

Las aplicaciones no deben depender de los métodos utilizados para almacenar datos en los medios ni del hardware de las computadoras en las que se encuentra la base de datos relacional.

Regla 9: Independencia lógica de los datos:

La presentación de datos en una aplicación no debe depender de la estructura de tablas relacionales. Si el proceso de normalización divide una tabla relacional en dos, la vista debe garantizar que los datos se fusionen para que cambiar la estructura de las tablas relacionales no afecte las aplicaciones.

Regla 10: Integridad Independencia:

Toda la información necesaria para mantener la integridad debe estar contenida en el diccionario de datos. Un lenguaje de datos debe validar los datos de entrada y mantener automáticamente la integridad de los datos.

Regla 11: Independencia de Distribución:

La base de datos se puede distribuir, se puede ubicar en varias computadoras y esto no debería afectar las aplicaciones. Mover la base de datos a otra computadora no debería tener ningún impacto en las aplicaciones.

Regla 12: La regla de la no subversión:

Si se utiliza un lenguaje de acceso a datos de bajo nivel, no debe ignorar las reglas de seguridad y de integridad que admite el lenguaje de nivel superior.


6. SQL es un lenguaje estándar para trabajar con bases de datos.

Para procesar y leer datos contenidos en una base de datos informática, utilice. SQL es una abreviatura de lenguaje de consulta estructurado. Por razones históricas La abreviatura SQL suele leerse como “secuela”, pero también se utiliza una pronunciación alternativa. – “escolar”

Como sugiere el nombre, SQL es un lenguaje de programación que se utiliza para organizar la interacción del usuario con la base de datos. De hecho, SQL sólo funciona con bases de datos de una cierto tipo, es decir, con los relacionales.

En la figura. La Figura 2.3 muestra cómo funciona SQL. Según este esquema. Un sistema informático tiene una base de datos en la que se almacenan ciertos tipos de información. Si el sistema informático pertenece al sector empresarial, entonces la base de datos almacena datos sobre activos materiales, productos manufacturados, volúmenes de ventas y salarios. En la base de datos sobre ordenador personal puede almacenar información sobre cheques emitidos, números de teléfono y direcciones, o información extraída de un mayor sistema computacional. Indicado por separado en la figura (DBMS).

solicitar datos y obtener el resultado se denomina consulta a la base de datos, de ahí el nombre: estructurado. Lenguaje de consulta. Sin embargo, este nombre no se corresponde del todo con la realidad. En primer lugar, hoy en día SQL es mucho más que una simple herramienta de consulta, aunque para eso fue pensado originalmente. Aunque la lectura de datos sigue siendo una de las más funciones importantes SQL: ahora este lenguaje se utiliza para implementar todo funcionalidad, que el DBMS proporciona al usuario. Estos incluyen lo siguiente:

Organizando datos. SQL brinda al usuario la capacidad de cambiar la estructura de presentación de datos, así como establecer relaciones entre los elementos de la base de datos.

Lectura de datos. SQL le dará al usuario o aplicación la capacidad de leer y utilizar los datos contenidos en la base de datos.

Proceso de datos. Usando SQL, puede cambiar el contenido de la base de datos, es decir. agregar nuevos, así como eliminar o actualizar datos existentes.

Control de acceso. En ayuda SQL El administrador de la base de datos puede limitar la capacidad del usuario para leer y cambiar datos y protegerlos del acceso no autorizado.

Intercambio de datos. Coordenadas SQL intercambio datos de los usuarios que trabajan en paralelo para que no interfieran entre sí.

Integridad de los baños. SQL ayuda a garantizar la integridad de la base de datos, protegiéndola de la destrucción debido a cambios inconsistentes o fallas del sistema.

Hoy en día, SQL es el único lenguaje estándar para trabajar con bases de datos relacionales.


7. Sistema de ACCESO.

Access es principalmente un sistema de gestión de bases de datos (DBMS). Al igual que otros productos de esta categoría, está diseñado para almacenar y recuperar datos, presentar información en forma conveniente y automatización de operaciones frecuentemente repetidas (como contabilidad, contabilidad, planificación, etc.). Con Access puedes desarrollar de forma sencilla y formas convenientes introducir datos, así como procesar datos y emitir informes complejos.

Access es una potente aplicación de Windows; Por primera vez, el rendimiento de un DBMS se combina orgánicamente con la comodidad disponible para los usuarios. Windows. Dado que ambos productos son una creación microsoft, interactúan perfectamente entre sí. Sistema de acceso trabaja bajo control de ventanas 95 o Windows NT, para que al trabajar con él, el usuario tenga acceso a todos Beneficios de Windows. Puedes cortar, copiar y pegar datos desde cualquier aplicaciones de windows en Access y viceversa; Puede crear un proyecto de formulario en Access e insertarlo en el diseñador de formularios.

Los lenguajes de descripción de datos son lenguajes de alto nivel de tipo declarativo (no procesal), destinados a una descripción formalizada de tipos de datos, sus estructuras y relaciones. Textos fuente Las descripciones de los datos en este idioma, después de la traducción, se asignan a tablas de control que especifican la ubicación en la memoria de la computadora y las conexiones entre los datos en cuestión. De acuerdo con estas descripciones, el DBMS encuentra los datos necesarios en la base de datos, los transforma y los transmite, por ejemplo, a programa de aplicación el usuario que los requirió. Al escribir datos en la base de datos, el DBMS utiliza estas descripciones para determinar la ubicación en la memoria de la computadora donde deben colocarse, los convierte a una forma determinada y establece las conexiones necesarias.

La primera de estas funciones la proporciona un lenguaje de descripción de datos (DDL). A menudo también se le llama lenguaje de definición de datos. La descripción de una base de datos que utiliza LDB se denomina esquema de base de datos. Incluye una descripción de la estructura de la base de datos y las restricciones de integridad de los datos que se le imponen. Además funciones especificadas El DML de algunos DBMS también brinda la capacidad de establecer restricciones de acceso a datos o permisos de usuario en el esquema. Un esquema de base de datos representa un modelo intencional de un dominio dentro de un entorno de sistema de base de datos. El lenguaje de manipulación de datos (DML) le permite realizar operaciones de manipulación de datos en una base de datos. La naturaleza de estas operaciones depende de modelo específico datos. Pero en cualquier caso, dichos lenguajes prevén operaciones para insertar nuevos datos en la base de datos, eliminar o actualizar los datos existentes. Algunos modelos de datos proporcionan operaciones de navegación adicionales que le permiten ubicarse en la instancia de datos deseada en la base de datos antes de realizar una operación. Esta instancia de datos se convierte en la actual. Son posibles varios efectos secundarios: propagación de la operación por toda la estructura de la base de datos, formación automática de nuevas relaciones entre instancias de datos, cálculo de datos derivados, etc. En los llamados modelos de datos gráficos (jerárquicos, de red), el argumento de cada operación de manipulación de datos es una instancia única de los datos. Al mismo tiempo, las operaciones en el modelo relacional son de naturaleza múltiple.

DL y ML no siempre están formalizados sintácticamente como lenguajes independientes. Pueden ser parte de un único lenguaje de datos que combine capacidades de definición y manipulación de datos. Existen numerosos ejemplos de lenguajes DBMS que combinan capacidades de descripción y manipulación de datos dentro de un único marco sintáctico. El lenguaje más común de este tipo es SQL.

Lenguaje de definición de datos (DDL).

Creando una tabla

La declaración CREATE se utiliza para crear cualquier tipo de objetos que componen la base de datos, incluidas las tablas.

La sintaxis para crear una tabla es:

CREAR TABLA nombre_tabla(

campo1 tipo1 [restricciones],

[campo2 tipo2 [restricciones], ...]);

Posibles restricciones en las tablas:

  • * NOT NULL: se debe definir el valor del atributo (opción NOT NULL);
  • * ÚNICO: los valores de los atributos son únicos (clave única);
  • * CLAVE PRIMARIA: el atributo es la clave principal ( clave primaria);
  • * VERIFICAR: define una condición que deben cumplir los valores de los atributos (dominio);
  • * DEFAULT: asignación de valores predeterminados para atributos.

Por ejemplo:

CREAR TABLA Distribuidores1(

Nombre VARCHAR2(30),

Porcentaje NÚMERO(4,2),

Comentarios VARCHAR2(50) DEFAULT `sin comentarios");

El lenguaje de definición de datos (DDL) proporciona a los usuarios un medio para especificar el tipo de datos y su estructura, así como un medio para especificar restricciones sobre la información almacenada en la base de datos.

Operadores: CREAR, ALTERAR (ver 14), SOLTAR.

Sistema de gestión de bases de datos (DBMS) - programa especializado(normalmente un conjunto de programas) diseñado para organizar y mantener una base de datos. Para crear y gestionar sistema de información Un DBMS es necesario en la misma medida que se necesita un traductor para desarrollar un programa en un lenguaje algorítmico.

Funciones principales del DBMS:

· gestión de datos en memoria externa (en discos);

· gestión de datos en RAM usando caché de disco;

· cambios de registro, respaldo y recuperación de bases de datos después de fallas;

· soporte para lenguajes de bases de datos (lenguaje de definición de datos, lenguaje de manipulación de datos).

Normalmente, un DBMS moderno contiene los siguientes componentes:

· el kernel, que es responsable de gestionar los datos en la memoria RAM y externa y de registrarlos;

· un procesador de lenguaje de base de datos que optimiza las consultas para recuperar y cambiar datos y crear, por regla general, código interno ejecutable independiente de la máquina;

· un subsistema de soporte de tiempo de ejecución que interpreta programas de manipulación de datos que crean una interfaz de usuario con el DBMS;

· programas de servicio(servicios públicos externos) que proporcionan una serie de características adicionales mantenimiento del sistema de información.

Clasificación de DBMS.

Según el modelo de datos:

· Jerárquico;

· Red;

· Relacional;

· Objeto-relacional;

· Orientado a objetos.

Según la arquitectura de la organización del almacenamiento de datos:

· DBMS local (todas las partes del DBMS local están ubicadas en una computadora);

· DBMS distribuido (partes del DBMS pueden ubicarse en dos o más computadoras).

Por método de acceso a la base de datos:

· Servidor de archivos.

En los DBMS de servidor de archivos, los archivos de datos se encuentran centralmente en un servidor de archivos. El kernel DBMS se encuentra en cada computadora cliente. Se accede a los datos a través de una red local. La sincronización de lecturas y actualizaciones se realiza mediante bloqueos de archivos. La ventaja de esta arquitectura es la baja carga en la CPU del servidor, pero la desventaja es carga alta red local.

Ejemplos: Microsoft Access, Borland Paradox.

· Cliente-servidor.

Estos DBMS constan de una parte de cliente y un servidor. Los DBMS cliente-servidor, a diferencia de los DBMS de servidor de archivos, proporcionan control de acceso entre usuarios y tienen poca carga en la red y máquinas cliente. El servidor es un programa externo al cliente, pudiendo ser sustituido por otro si es necesario. La desventaja del DBMS cliente-servidor es el hecho mismo de la existencia del servidor y los grandes recursos informáticos consumidos por el servidor.

Ejemplos: Firebird, Interbase, MS Servidor SQL, Sybase, Oracle, PostgreSQL, MySQL, LINTER.

· Incorporado.

Un DBMS integrado es una biblioteca que le permite almacenar grandes cantidades de datos en una máquina local de forma unificada. Se puede acceder a los datos a través de SQL o mediante funciones especiales de DBMS. Los DBMS integrados son más rápidos que los convencionales cliente-servidor y no requieren instalación en el servidor, por lo que tienen una gran demanda en el software local que se ocupa de grandes volúmenes datos (por ejemplo, sistemas de información geográfica).

Ejemplos: OpenEdge, SQLite, BerkeleyDB, una de las variantes de Firebird, una de las variantes de MySQL, Sav Zigzag, Microsoft SQL Server Compact, LINTER.

Soporte de lenguaje de base de datos

Para trabajar con bases de datos se utilizan lenguajes especiales, generalmente llamados lenguajes de bases de datos. Los primeros DBMS admitían varios lenguajes especializados en sus funciones. La mayoría de las veces, se distinguían dos lenguajes: el lenguaje de definición de esquemas de bases de datos (SDL - Lenguaje de definición de esquemas) y el lenguaje de manipulación de datos (DML - Lenguaje de manipulación de datos). SDL sirvió principalmente para definir la estructura lógica de la base de datos, es decir. la estructura de la base de datos tal como aparece ante los usuarios. El DML contenía un conjunto de operadores de manipulación de datos, es decir. Operadores que permiten ingresar datos a la base de datos, eliminar, modificar o seleccionar datos existentes.

Los DBMS modernos suelen admitir un único lenguaje integrado que contiene todas las herramientas necesarias para trabajar con una base de datos, desde su creación y proporcionando una interfaz de usuario básica con las bases de datos. El lenguaje estándar de los DBMS relacionales más comunes actualmente es SQL (lenguaje de consulta estructurado).

Las principales funciones de un DBMS relacional soportadas al implementar la interfaz SQL son:

En primer lugar, el lenguaje SQL combina las herramientas de SDL y DML, es decir. le permite definir un esquema de base de datos relacional y manipular datos. Al mismo tiempo, la denominación de objetos de la base de datos (para una base de datos relacional, denominación de tablas y sus columnas) se admite a nivel de lenguaje en el sentido de que el compilador lenguaje SQL convierte nombres de objetos en sus identificadores internos basándose en tablas de catálogo de servicios especialmente admitidas. Interior El DBMS (kernel) no funciona en absoluto con los nombres de las tablas y sus columnas.

El lenguaje SQL contiene herramientas especiales para definir restricciones de integridad de la base de datos. Nuevamente, las restricciones de integridad se almacenan en tablas de catálogo especiales y el control de integridad de la base de datos se garantiza a nivel de idioma, es decir. Al compilar operadores de modificación de bases de datos, el compilador SQL, basándose en las restricciones de integridad existentes en la base de datos, genera el código de programa correspondiente.

Los operadores SQL especiales le permiten definir las llamadas vistas de bases de datos, que en realidad son consultas almacenadas en la base de datos (el resultado de cualquier consulta a una base de datos relacional es una tabla) con columnas con nombre. Para el usuario, una vista es la misma tabla que cualquier tabla base almacenada en la base de datos, pero con la ayuda de las vistas puede limitar o, por el contrario, ampliar la visibilidad de la base de datos para usuario específico. Las representaciones también se mantienen a nivel lingüístico.

La autorización de acceso a los objetos de la base de datos también se realiza sobre la base de un conjunto especial declaraciones SQL. La idea es que para ejecutar sentencias SQL diferentes tipos el usuario debe tener varios permisos. El usuario que creó la tabla de la base de datos tiene un conjunto completo de derechos para trabajar con esta tabla. Estas facultades incluyen la facultad de delegar total o parcialmente la facultad a otros usuarios, incluida la facultad de transferir. Los permisos de usuario se describen en tablas de catálogo especiales y el control de permisos se admite a nivel de idioma.




Arriba