Contactos

Terminología y conceptos básicos de bases de datos relacionales. Las características generales del modelo de datos relacionales. Introducción a la normalización de datos.

Idiomas de base de datos de soporte

Los idiomas especiales se utilizan para trabajar con la base de datos, en general, llamados lenguajes de base de datos.

En las primeras bases de datos hubo 2 idiomas:

1. Diagrama base de SDL Idioma predeterminado.

2. Idioma de manipulación de datos DML.

El primero se desempeñó para determinar la estructura lógica de la base de datos, y la segunda contenía un conjunto de operadores, que permitió manipular los datos, es decir, ponerlos en la base de datos y eliminarlos. En DBMS modernos, se mantiene un idioma, que contiene todas las herramientas necesarias para trabajar con la base de datos. Este idioma le permite crear una base de datos y proporcionar a un usuario una base de datos.

Hasta la fecha, el lenguaje más común es

S.tructo

L.anguaje

Este idioma admite, y crea un esquema de base de datos y permite que estos datos se manipulen. Contiene todos los medios necesarios para garantizar la integridad de la base de datos. Estas restricciones de integridad están contenidas en directorios especiales, lo que permite en el nivel de idioma controlar todo el estado de la base de datos. Los operadores de idiomas SQL especiales definen las llamadas vistas de la base de datos. Ver - ϶ᴛᴏ Solicitudes que se almacenan en la base de datos. Para una vista de usuario - ϶ᴛᴏ Tabla con la que puede limitar o ampliar la visibilidad de la base de datos para un usuario de datos específico. El idioma SQL contiene operandos tan especiales que proporcionan autorización de acceso a objetos de base de datos. Dado que los diferentes usuarios tienen poderes diferentes para trabajar con los datos, estos poderes se describen en tablas especiales: directorios que están respaldados en el nivel de idioma.

Los conceptos principales de las bases de datos relacionales son: Tipo de datos, dominio, atributo, tupla, clave principal, actitud.

Bajo el tipo de datos en el modelo relacional, es habitual comprender lo mismo que el tipo de datos en los lenguajes de programación, es decir, los datos son simbólicos, numéricos, cuerdas de bits, datos numéricos especiales (dinero), así como datos temporales especiales. (tiempo, intervalo de tiempo).

En la forma más general, el dominio está determinado por la tarea de un cierto tipo de datos básico a la que los elementos de este dominio incluyen el concepto de dominio. Se entiende por su comprensión, como una base de datos de valor múltiple permisible. El dominio tiene una carga semántica. Los datos se consideran comparables solo en el caso cuando se relacionan con un dominio.

Según la tupla, es habitual que entienda muchos pares de elementos de base de datos que contienen una entrada de cada semilla de atributo en el esquema de relaciones.

Esquema de relaciones: ϶ᴛᴏ el par de elementos de varios elementos. Una B.

cORGET \u003d Valor de nombres de atributos, es decir, una tupla es un conjunto de valores con nombre del tipo especificado.

La proporción es un conjunto de tupores correspondientes a un solo esquema único, es decir, una base de datos relacional, un conjunto de relaciones cuyos nombres coinciden con los nombres de las relaciones en la estructura de la base de datos.

Conferencia 4.

· Conceptos básicos de bases de datos relacionales.

Decama los siguientes conceptos básicos. bases de datos relacionales: tipo de datos, dominio, atributo, tribunal, actitud, clave primaria.

Para empezar, mostraremos el significado de estos conceptos en el ejemplo. relaciones Empleados que contienen información sobre los empleados de alguna empresa (Fig. 1).

Higo. 2.1.

· Tipo de datos

Valores de datos almacenados en base de datos relacionalSe tipifican, es decir, es conocido por el tipo de cada valor almacenado. Concepto tipo de datos en modelo de datos relacionales Completa plenamente al concepto. tipo de datos En lenguajes de programación. Recordemos que la definición tradicional (no golpeada) tipo de datos Consta de tres componentes principales: determinar el conjunto de valores de este tipo; determinación de un conjunto de operaciones aplicables a los valores de tipo; Determinación del método de representación externa de valores de tipo (literales).

Generalmente en moderno bases de datos relacionales Se permite el almacenamiento de datos simbólicos, numéricos (precisos y aproximados), datos numéricos especializados (como "dinero"), así como datos especiales "temporales" (fecha, hora, intervalo de tiempo). Además, los sistemas relacionales mantienen la capacidad de determinar los usuarios de los suyos. tipo de datos .

En el ejemplo en la FIG. 1 Estamos tratando con los datos tres. tipos: cadenas de personajes, enteros y "dinero".

· Dominio

Concepto dominio Más específico para las bases de datos, aunque existen analogías con subtipos en algunos idiomas de programación. En general dominio determinado estableciendo algunos básicos tipo de datosa lo que se relacionan los elementos dominio, y una expresión lógica arbitraria aplicada al elemento de este tipo de datos (restricciones de dominio ). El elemento de datos es un elemento dominio En eso y solo si el cálculo de esta expresión lógica da el resultado. cierto (Para valores lógicos, utilizaremos alternativamente las designaciones. cierto y falso o cierto. y falso). Con todo dominio El nombre está asociado, único entre los nombres de todos. dominios Base de datos apropiada.

La interpretación intuitiva más correcta del concepto. dominio Es su percepción de un potencial permitido, un subconjunto limitado de los valores de este tipo. Por ejemplo, dominio Nombres En nuestro ejemplo, se define en el tipo básico de cadenas de caracteres, pero uno de sus valores puede incluir solo aquellas líneas que pueden representar los nombres (en particular, para la posibilidad de representar los nombres rusos, tales líneas no pueden comenzar con una Signo suave o sólido y no puede ser más largo, por ejemplo, 20 caracteres). Si algun atributo relaciones Determinado en algunos domonado (como, por ejemplo, en la Fig. 1 atributo Seda Definido por domonado Nombres ) entonces en el futuro restricción de dominio interino limitaciones de integridadimpuesto en el significado de esto atribuacion.

También debe tenerse en cuenta la carga semántica del concepto. dominio: Los datos se consideran comparables solo cuando se relacionan con uno dominio. En nuestro valor de ejemplo dominios Números de pasaje y departamentos Estos son el tipo de enteros, pero no son comparables (no tendría sentido permitirles compararlos).

· Elementos de la relación.

Concepto relaciones es el más fundamental en enfoque relacional para la organización de bases de datos., en la medida ennORTE. -Aire actitud es la única estructura de datos genérica almacenada en base de datos relacional. Esto se refleja en el nombre general. acercarse - término relacional (relacional) derivado de relación. Sin embargo, el término en sí actitud es extremadamente inexacto porque, hablando de los datos guardados, debemos tener en cuenta un tipo Estos datos, valores de esta tipo y variablesen el que se guardan los valores. En consecuencia, para aclarar el término. actitud Los conceptos se destacan relaciones de título, valores de la relación y relación variable. Además, necesitaremos concepto auxiliar. codo.

Entonces, título (o esquema) Relación r (hr. ) Llamadas finitas Muchos pares de tipo ordenados donde un. llamado el nombre atribuacion, peroT. Denota el nombre de algunos básicos. tipo o previamente definido dominio. Por definición requiere todos los nombres atributos en relación de encabezado Fue diferente. En el ejemplo en la FIG. 2.1 relación del título Servicio es mucha par{<слу_номер, номера_пропусков>, <слу_имя, имена>, <слу_зарп, размеры_выплат>, <слу_отд_номер, номера_отделов>} .

Si todos atributos relaciones de título Definido en diferentes dominios, para no producir nombres innecesarios, use razonablemente para nombrar atributos Los nombres son relevantes dominios (Sin olvidar, por supuesto, que este es solo un método conveniente para nombrar, lo que no elimina las diferencias entre los conceptos. dominio y atribuacion).

Tupla tr correspondiente encabezamiento Hora. , llamados triplets tipo ordenados. , uno de esos tripletes para cada uno atribuacion enHora. . Tercer elemento -v - triplete debe ser un valor permisible tipo de datos o dominio T. . Relación del título Servicio corresponde, por ejemplo, lo siguiente cortezzi: {<слу_номер, номера_пропусков, 2934>, <слу_имя, имена, Иванов>, <слу_зарп, размеры_выплат, 22.000>, <слу_отд_номер, номера_отделов, 310>} , {<слу_номер, номера_пропусков, 2940>, <слу_имя, имена, Кузнецов>, <слу_зарп, размеры_выплат, 35.000>, <слу_отд_номер, номера_отделов, 320>} .

Tel Br. relaciones R. Llamado un conjunto arbitrario tupla tr . Uno de los posibles relación de cuerpos Servicio Mostrando en la FIG. 2.1. Tenga en cuenta que en el caso general, como lo demuestran, en particular, la FIG. 2.1 y un ejemplo del párrafo anterior puede existir tal cortezzi tr que correspondeHR, pero no incluido en BR.

Significado Vr. relaciones R. llamado un par de setsHr y br. . Uno de los permisibles valores de la relación Servicio Mostrando en la FIG. 2.1.

En cambio base de datos relacional Tienda relaciones, valores que cambian con el tiempo. Variable Varr. Llamado un contenedor con nombre que puede contener cualquier permisible valor Vr. . Naturalmente, al determinar cualquierVarr. Se requiere especificar el correspondiente. relación del título HORA.

Vale la pena enfatizar que cualquier actualización adoptada en la práctica. base de datos – Insertar. (insertar codo en relación variable), Borrar. (Borrar codo del valor relaciones relación variable) I.Actualizar. (modificación codo valores relaciones relación variable) - desde un punto de vista del modelo es una operación de asignación relación variable algún nuevo significado relaciones. Esto no significa que las operaciones enumeradas se lleven a cabo de esta manera en el DBMS: lo principal es que el resultado de las operaciones corresponden a este modelo semántica.

Tenga en cuenta que en el futuro en los casos en que el significado exacto del término está claro desde el contexto, usaremos el término actitud Como en el sentido el valor de la relación.y en el sentido relación variable.

Un priorato, grado o "Aronónón" , relaciones de título, codocorrespondiente a ello encabezamiento, relaciones corporales, valores de la relación y relación variable es poder relaciones de título. Por ejemplo, grado de relación Servicio igual a cuatro, es decir, es 4-Arral cuaternario).

Con las definiciones de las definiciones se consideran razonablemente. esquema de base de datos relacional Conjunto de par<имя_VARr, Hr> incluyendo nombres y titulares de todos relaciones variablesque se definen en base de datos. Base de datos relacional - Este es un conjunto de parejas. (Por supuesto cada relación variable en cualquier momento contiene algunos actitud, en particular, vacío).

Tenga en cuenta que en clásico bases de datos relacionales Después de determinar circuitos de base de datos Solo los valores podrían cambiar relaciones variables. Sin embargo, ahora en la mayoría de las implementaciones se permite cambiar circuitos de base de datos: Definición de nuevo y cambiando los títulos de los existentes relaciones variables. Se llama evolucióncircuitos de base de datos.

· Clave primaria

Un priorato, clave primaria relación variable Este es un subconjunto S. Colocar atributos su encabezado que en cualquier momento valor clave primaria (compuesto, si la composición clave primaria Incluye más de uno. atribuacion) en cualquier corgasa relaciones corporales difiere del valor clave primaria en cualquier otro corgasa cuerpo de esta relaciones, y sin subconjunto S. Esta propiedad no posee. En la siguiente sección, mostraremos esa existencia. clave primaria en cualquier valores de la relación Es una consecuencia de una de las propiedades fundamentales. relación, a saber, esa propiedad que relaciones corporales es un conjunto tupla.

Por la idea cotidiana habitual relaciones es un mesa, titular cual es el esquema relaciones, pero instrumentos de cuerdacortezzi relaciones-Enxpilero; En este caso, los nombres. atributos corresponde al nombre columna Esta mesa. Por lo tanto, a veces hablan de las "columnas de la tabla", que significa " atributos relaciones».

Por supuesto, es una terminología bastante rugosa, porque las mesas y las líneas habituales, y las columnas se ordenan, mientras que atributos y cortezzi relación Son elementos de conjuntos desordenados. Sin embargo, cuando procedemos a la consideración de los temas prácticos de la organización. bases de datos relacionales y la gestión significa, usaremos esta terminología "cotidiana". Dicha terminología se adhiere a la mayoría de los DBMS relacionales comerciales. A veces los términos también se utilizan. expediente Como tabla analógica, registro Como una línea analógica y campo Como una columna analógica. Permítanme recordarle que usamos esta terminología en las conferencias 1.

· Propiedades fundamentales de las relaciones.

Demosmoste ahora en algunas propiedades importantes. relaciónque siguen las definiciones definidas anteriormente.

Falta de tuples-duplicados,
Teclas de relaciones primarias y posibles

Entonces propiedad que cuerpo alguien relaciones nunca contiene tupla-Delikatov, sigue de la definición. relaciones corporales como muchos tupla. En la teoría clásica de los conjuntos, por definición, cualquier conjunto consta de varios elementos.

Es de esta propiedad que la presencia de cada uno. valores de la relación clave primaria - conjunto mínimo atributoscual sulema encabezamiento Esto relaciones, Compuesto valor que determina de forma única tribunal relaciones. Realmente porque en cualquier momento todo cortezzi cuerpo alguien relaciones Diferente, cualquier valores de la relación La propiedad de la singularidad tiene al menos un conjunto completo de ella. atributos. Sin embargo, en la definición formal. clave primaria Requiere su "minimalidad", es decir, en el set atributos clave primaria no debe incluir tal atributosque se puede descartar sin perjuicio de la propiedad principal - Definición no ambigua codo. Un poco más tarde mostraremos por qué la propiedad mínima. clave primaria Esto es crítico. Está claro que si alguna relaciones Hay un conjunto atributosTener una propiedad de singularidad, entonces hay un conjunto mínimo. atributosTener una propiedad de singularidad.

Por supuesto, puede existir valores de la relación Con varios conjuntos mínimos inconsistentes. atributosTener las propiedades de la singularidad. Por ejemplo, si regresa a las suposiciones de la conferencia 1 sobre la singularidad de los valores. atributos Lateral y servicio relaciones Servicio Entonces para todos valores de esta relaciones Tenemos dos sets atributosreclamando clave primaria(Servicio) y (s) . En este caso, el diseñador. base de datos Debe decidir cuál de los conjuntos alternativos. atributos llamada clave primaria, y el resto de los conjuntos mínimos. atributosTener la propiedad de la singularidad se llama llaves posibles 1).

Concepto clave primaria Es extremadamente importante en relación con el concepto de integridad. bases de datos. Tenga en cuenta que aunque formalmente existencia clave primaria valores de la relación es una consecuencia de lo que relaciones corporales - Esto es mucho, en la práctica. primario (y posible) Llaves relaciones variables Aparece como resultado de instrucciones explícitas del diseñador. relaciones. Determinado relación variable, el diseñador simula parte del área temática, los datos de los cuales contendrán base de datos. Y, por supuesto, el diseñador debe conocer la naturaleza de estos datos. Por ejemplo, se debe saber que ningún empleado en ningún momento puede tener un certificado con el mismo número. Por lo que puede (e incluso debería, como se mostrará un poco más tarde) declarar claramente(Caso) clave posible. Si la compañía ha encontrado que todos los empleados deben tener diferentes nombres completos, el diseñador puede (y nuevamente debe declarar clave posible y(LADO) . Entonces el diseñador debe apreciar cuál de llaves posibles es más confiable (la propiedad de su singularidad nunca será cancelada) y elegirá el más confiable clave posible como primario (En nuestro caso, la clave sería la clave.(Caso) Debido a que la decisión sobre la singularidad de los nombres completos de los empleados se ve artificial y puede cancelarse fácilmente por la gestión de la empresa).

Ahora explicaremos por qué el diseñador debe declarar explícitamente las claves primarias y posibles de las relaciones variables 2). El hecho es que, como resultado de esto, los DBMS declaran la información que se utilizará como limitaciones de la integridad 3). DBMS nunca permitirá la apariencia en relación variable valores relacionesque contiene dos codo Con el mismo significado atribuacion Sidmer (definición clave primaria Para una dada relación variable Cancelar no se puede cancelar). La aparición de dos tupla Con el mismo significado atribuacion Seda También será imposible siempre y cuando la definición permanezca.(LADO) como clave posible. Así, anuncios primario y llaves posibles Dar a los DBMS la oportunidad de mantener la integridad. base de datos Incluso en caso de intentos de traer datos incorrectos en ella.

Finalmente, de vuelta a la propiedad mínima. primario y llaves posibles. Como se señaló anteriormente, esta propiedad es crítica, y la importancia se manifiesta en la interpretación. primario y llaves posibles como restricciones de interazos. En nuestro ejemplo con relación Servicio No solo muchos poseerán la propiedad de la singularidad. atributos (Caso) , pero también, por ejemplo, mucho.(SIDMER, SID_OTD_NOMER). Pero si nos pusieron de acuerdo como limitaciones de integridad Requisito de singularidad(SIDMER, SID_OTD_NOMER)Luego los DBMS garantizarían la ausencia. tupla Con el mismo significado atribuacion Sidmer no de la misma manera relaciones Servicio , pero solo en grupos tupla con el mismo significado atribuacion Sail_tener . Está claro que esto no corresponde al significado del área temática simulada.

Avanzando, observamos que en muchas implementaciones prácticas de DBMS relacional permitieron una violación de la propiedad de la singularidad tupla Para intermedios relacióngenerado implícitamente al ejecutar consultas. Semejante relaciones No son conjuntos, sino multisets, que en algunos casos hacen posible alcanzar ciertas ventajas, pero a menudo conduce a problemas graves. Nos centraremos en esto con más detalle al discutir el idioma SQL.

Falta de orden de tuplas.

Por supuesto, formalmente la propiedad de la falta de orden. tupla en valor de relación También es una consecuencia de la determinación. relaciones corporales como muchos tupla. Sin embargo, esta propiedad también puede mirar al otro lado. Si el hecho de que relaciones corporales es un conjunto tupla, Facilita la construcción de un mecanismo completo. modelo de datos relacionales, incluyendo medios básicos para manipular datos - Álgebra relacional y cálculo. Pero, en mi opinión, la razón principal no está en esto.

Muy a menudo, los usuarios de DBMS y los desarrolladores del sistema de información relacionados causan irritación el hecho de que no pueden almacenar cortezzi relación En el nivel físico en el orden deseado. Y los enlaces a los requisitos de la teoría relacionatoria no son muy apropiados aquí. Sería posible desarrollar otra teoría en la que se ordena " relaciones" Sin embargo, mantenga las listas ordenadas tupla En condiciones de actualización intensiva. base de datos Es mucho más complicado técnicamente, y el apoyo de ordenar conlleva una sobrecarga significativa.

No hay requisito para mantener el orden en el set tupla relaciones Da la flexibilidad adicional de DBMS durante el almacenamiento. bases de datos en memoria externa y al realizar solicitudes a base de datos. Esto no contradice el hecho de que al formular una solicitud de base de datos, por ejemplo, en SQL, puede necesitar clasificar la tabla resultante de acuerdo con los valores de algunas columnas. Este resultado, en general, no es relacióny alguna lista ordenada tuplaY solo puede ser un resultado final que las solicitudes ya pueden ser abordadas.

Falta de atributos de pedido.

Atributos relación no ordenado porque por definición relación del título Hay muchos par<имя атрибута, имя домена> . Para referencia al valor. atribuacion en corgasa relaciones Nombre siempre usado atribuacion. Fácil de notar una analogía explícita entre títulos de relaciones y tipos estructurales en lenguajes de programación. Incluso en el lenguaje de programación C con sus posibilidades prácticamente ilimitadas de trabajar con los punteros, se recomienda persistentemente para ponerse en contacto con los campos de las estructuras solo por sus nombres. Si, por ejemplo, la variable estructural se define en el idioma C

estructura (int a; char b; int c) d;

ese estándar de idioma no se recomienda usar para acceder al campo Símbolo.b diseño * (y D + STEYOF (INT)) (Tome la dirección de la variable estructural.d. , agregue el número de bytes en varios números y tome el valor del byte en la dirección recibida). Esto se explica por el hecho de que con una ubicación real en la memoria de los campos, tal variable estructural en el orden según lo definido, en muchas computadoras será necesario alinear el campoc. Por byte con una dirección uniforme. Por lo tanto, un byte simplemente desaparece. Cuando la variable estructural se encuentra en la memoria, el compilador económico (o más bien, el optimizador) reorganizará el campob y C. , y el diseño anterior no proporcionará acceso al campo.b. . Para el manejo correcto del campo.b Variable D. Necesitas usar construccionesd.b or & d-\u003e b , es decir, especifique explícitamente el nombre del campo.

Consideraciones prácticas similares justifican la falta de orden. atributos en relación de encabezado. En este caso, los DBMS en sí deciden qué orden físico debe ser almacenado atributos tupla (Aunque generalmente se admite el mismo orden físico para todos tupla CADA relaciones). Además, esta propiedad facilita la operación de la modificación de los esquemas de los existentes. relación No solo agregando nuevos atributosPero también eliminando los existentes.

Corriendo de nuevo, notamos que en SQL en algunos casos, se permite una indicación de índice atributos, y como orden implícito atributos Utiliza su orden en forma lineal de determinar el esquema. relaciones (Esta es una de las características condenadas del idioma SQL).

Atomicidad de los valores de atributo
Primera forma normal

Valores de todos atributos son atómicos (o más bien escalar). Esto sigue de la definición. dominio Como un conjunto potencial de valores escalares. tipo de datos, es decir, entre los valores. dominio Puede que no haya valores con la estructura visible, incluido el conjunto de valores ( relaciones). Tenga en cuenta que esto no contradice lo que se dijo en la sección "Los conceptos básicos de las bases de datos relacionales" en el uso potencial de usar la especificación atributos tipo de datosDefinido por los usuarios. Por ejemplo, sería posible agregar al esquema. relaciones Servicio atributo Sidewo definido por domonado (o tipo de datos) Fotografías . Lo principal en la atomicidad de los valores. atributos Es que los DBMS relacional no deben proporcionar a los usuarios una visibilidad explícita de la estructura interna del valor. Con todos los valores solo se pueden aplicar utilizando las operaciones definidas en el apropiado tipo de datos.

Es habitual decir que en bases de datos relacionales Solo se permiten normalizados. relaciones, o relacionesrepresentado por B. primera forma normal.

Un ejemplo es anormalizado. relaciones mostrado en la fig. 2.2. Podemos decir que aquí tenemos binario. actituden que valores atribuacion Departamentos están relaciones. Tenga en cuenta que el original actitud Servicio Es una opción normalizada. relaciones Departamentos que sirven . La variante normalizada se muestra en la FIG. 2.3.

Normalizado relaciones Conformar la base del clásico enfoque relacional para la organización de bases de datos.. Tienen algunas limitaciones 1) (no todas las informaciones son convenientes para representar en forma de tablas planas), pero simplifique significativamente la manipulación de datos. Considere, por ejemplo, dos operadores de aplicaciones idénticas codo:

nORTE. para inscribir al empleado Kuznetsov (Pase el número 3000, salario 25000.00) al número 320;

nORTE. inscriba al empleado Kuznetsov (omitir el número 3000, salario 25000.00) al número 310.


Higo. 2.


Higo. 3. Servicio de relación: opción normalizada
Servicios de relación

Si la información sobre los empleados se presenta como relaciones Servicio , ambos operadores se realizarán igualmente (insertar tribunal en actitud Servicio ). Si trabajas con anormalizado. relación Departamentos que sirven Luego, el primer operador conducirá a una simple inserción. codo, y el segundo para agregar codo en valor actitud atribuacion EL DEPARTAMENTO codo de clave primaria 310 .

Al trabajar con anormalizado. relaciones Se producen dificultades similares al realizar operaciones de eliminación y modificación. tupla.

· Modelo de datos relacionales

Cuando en las secciones anteriores hablamos de conceptos básicos. bases de datos relacionalesNo aliviamos en ninguna implementación específica. Estos argumentos se refieren igualmente a cualquier sistema, cuándo se usó la construcción. enfoque relacional.

En otras palabras, usamos los conceptos de los llamados. modelo de datos relacionales. Modelo de datos (en el contexto de la región. bases de datos) describe un cierto conjunto de conceptos genéricos y signos de que todos los DBMS específicos y ellos base de datosSi se basan en este modelo. La presencia de un modelo de datos le permite comparar implementaciones específicas utilizando un idioma común.

Aunque el concepto del modelo de datos es general, y podemos hablar de modelos de datos jerárquicos, de red, semánticos y otros datos, se debe tener en cuenta que en el área bases de datos Este concepto fue introducido por Edgar Coddo en relación con los sistemas relacionales y se usa de manera más efectiva en este contexto. Los intentos de uso rectilíneo de modelos similares a las organizaciones duulantes muestran que modelo relacional Muy "genial", y para las organizaciones de tiro, resulta ser "pequeño".

características generales

Aunque el concepto modelo de datos relacionales El primero introdujo al Fundador. enfoque relacional Edgar Codd, la interpretación más común. modelo de datos relacionalesAparentemente, pertenece a un popularizador conocido de las ideas de la Codda Cristofour, que lo reproduce (con varias aclaraciones) en casi todos sus libros (ver, por ejemplo, K. Fecha. Introducción al sistema de base de datos. 6ta ed., M.; San Petersburgo: Williams.- 2000). Según la interpretación de la fecha, modelo relacional Consta de tres partes que describen diferentes aspectos. enfoque relacional: Parte estructural, parte de manipulación y parte holística.

En la parte estructural. modelos Se soluciona que la única estructura genérica de los datos utilizados en la base de datos relacional está normalizada.nORTE. -Aire actitud. Conceptos definidos dominios, atributos, tupla, encabezamiento, cuerpo y relación variable. En esencia, en las dos secciones anteriores de esta conferencia, consideramos los conceptos y propiedades del componente estructural. modelo relacional.

En manipulación modelos Se determinan los dos mecanismos fundamentales de la manipulación de las bases de datos relacionales: algebra relacional y cálculo relacional. El primer mecanismo se basa principalmente en la teoría clásica de los conjuntos (con algunas aclaraciones y adiciones), y el segundo está en el aparato lógico clásico del cálculo de los predicados de primer orden. Consideraremos estos mecanismos con más detalle en las siguientes conferencias, pero solo para nosotros tenga en cuenta que la función principal de la parte de manipulación modelo relacional es garantizar la relación de la relación de cualquier idioma en particular de las bases de datos relacionales: el idioma se llama relacional, si no tiene menos expresividad y poder que el álgebra relacional o el cálculo relacional.

Integridad de entidad y enlaces.

Finalmente, en una parte holística. modelo de datos relacionales Se registran dos requisitos básicos de integridad que deben ser apoyados en cualquier DBMS relacional. El primer requisito se llama el requisito de la integridad de la esencia (integridad de la entidad). El objeto o esencia del mundo real en bases de datos relacionales corresponden cortezzi relación. Específicamente, el requisito es que cualquier tribunal cualquier significado relaciones alguna relación variable debe ser distinguido de cualquier otro codo de esta valores de la relación Según los valores constitutivos de un conjunto predeterminado. atributos relación variable, es decir, en otras palabras, cualquier relación variable debe tener clave primaria. Como hemos visto en la sección anterior, este requisito se satisface automáticamente si las propiedades básicas no se violan en el sistema. relación.

De hecho, el requisito. integridad de la esencia Totalmente suena de la siguiente manera: cualquier relación variable debe existir clave primaria, y sin importancia clave primaria en cortech valores relaciones relación variable no debe contener valores inciertos. Para que esta redacción se entienda completamente, debemos al menos discutir brevemente el concepto significado incierto (NULO).

Por supuesto, teóricamente cualquier tribunalsellado actituddebe contener todas las características de la esencia del mundo real que queremos mantener base de datos. Sin embargo, en la práctica, no todas estas características pueden ser conocidas en el momento en que se requiere arreglar la esencia en base de datos. Un ejemplo simple puede ser un procedimiento para hacer que una persona, cuyos salarios aún no están definidos. En este caso, el empleado del departamento de personal, que entra. actitud Servicio tribunaldescribir al nuevo empleado simplemente no puede proporcionar valor atribuacion Sidmarp (Algún valor dominio Dimensions_text Será incorrecto caracterizar el salario del nuevo empleado).

Edgar CODD propuesto para usar en tales casos valores inciertos. Valor incierto No pertenece a ninguna tipo de datos y puede estar presente entre los valores de cualquier atribuaciondefinido en cualquier tipo de datos (Si claramente no está prohibido al determinar atribuacion). Si unuNA. - Esto es tan yo tipo de datos oNulo, op. - cualquier operación bidimensional "aritmética" de este tipo de datos (p.ej,+), y lop - Operación de comparación de los valores de este. tipo (p.ej,= ), entonces por definición:

un OP NULL \u003d NULL

Nulo op a \u003d nulo

un lop null \u003d desconocido

Null lop a \u003d desconocido

Aquí desconocido - Este es el tercer valor de lógico, o booleano, como las siguientes propiedades:

No desconocido \u003d desconocido

verdadero y desconocido \u003d desconocido

verdadero o desconocido \u003d verdadero

falso y desconocido \u003d falso

falso o desconocido \u003d desconocido

(Recordemos que las operaciones y o o están conmutativas) 2). En esta conferencia, tenemos una breve introducción suficiente para valores inciertosPero en las siguientes conferencias, volveremos a este tema repetidamente.

Entonces, el primero de los requisitos es el requisito. integridad de la esencia - significa que clave primaria debe identificar completamente a todas las entidades y, por lo tanto, en la composición de cualquier valor clave primaria No se permite presencia. valores inciertos. (En clásico modelo relacional Este requisito se aplica a llaves posibles; Como se mostrará en las siguientes conferencias, en DBM orientado a SQL, un requisito de este tipo para llaves posibles No soportado.)

Segundo requisito llamado requisito de integridad referencial (integridad referencial), es más complejo. Obviamente, cuando cumple con la normalización. relación Las esencias complejas del mundo real se presentan en la base de datos relacional en forma de varios tupla varios relación. Por ejemplo, imagine lo que se requiere para enviar. base de datos relacional EsenciaEL DEPARTAMENTO de atributos Reminner (número de departamento), departamento (número de empleados) ySalida (Muchos empleados del departamento). Para cada empleado necesita almacenarSidmer (número de empleado),Seda (Nombre del empleado) ySidmarp (Salario de los empleados). Como veremos en la conferencia 7, con el diseño correcto de la base de datos correspondiente en ella aparecerá dos relaciones: Departamentos (Salida, Departamento) (clave primaria(Salida)) y Empleados (Sidmer, SIDS, SIDMARP, SIDS) (clave primaria(Sidser)).

Como se vio, atributo Sid_otd_na Presentado B. actitud Servicio no porque el número del departamento es su propia propiedad del empleado, y solo para poder restaurar la esencia completa si es necesarioEL DEPARTAMENTO . Valor atribuacion Sid_otd_na en cualquier corgasa relaciones Servicio Debe corresponder a valor atribuacion Movimiento rápido del ojo en algunos corgasa relaciones Departamentos . Atributo Este tipo (tal vez compuesto) se llama llave extranjera (clave externa) Porque sus valores caracterizan inequívocamente a las entidades presentadas. cortays Algún otro relaciones (es decir, establecer sus valores clave primaria). Seguro, clave externa puede ser compuesto, es decir, consiste en varios atributos. Ellos dijeron eso actituden el que se determina clave externa, se refiere a lo apropiado actituden el que lo mismo atributo es un clave primaria.

Demanda integridad de enlaces o requisito de integridad clave externa, es eso por cada valor clave externaemergiendo en corgasa valores relaciones referente relación variableo en valor actitud relación variableen el que se debe encontrar el enlace, se debe encontrar tribunal con el mismo significado clave primariaO el valor clave externo debe estar completamente indefinido (es decir, no indica nada) 3). Por ejemplo, esto significa que si se especifica el número de servicio, debe existir este departamento.

Tenga en cuenta que, como clave primaria, clave externa debe especificarse para determinar relación variable y es una limitación para valores permisibles. relaciones Esto variable. En otras palabras, definición clave externa es una definición limitaciones de integridad base de datos.

Restricciones integridad de la esencia y según los enlaces Debe ser apoyado por el DBMS. Para el cumplimiento integridad de la esencia Suficiente para garantizar la ausencia en cualquier relación variable valores relaciónque contiene cortezzi con el mismo significado clave primaria (y prohibir la entrada en valor clave primaria valores inciertos). DE integridad de enlaces La situación es algo más complicada.

Está claro que al actualizar la referencia. relaciones (INSET DE NUEVO tupla O modificaciones de valor clave externa en existencia cortech) Es suficiente para garantizar que los valores incorrectos no aparecieran. clave externa. Pero cómo estar al eliminar codo de relaciones¿Cuál es el plomo del enlace?

Hay tres enfoques aquí, cada uno de los cuales apoya. integridad de enlaces. El primer enfoque es que está prohibido eliminar. codoPara los cuales hay enlaces (es decir, primero necesitas eliminar las referencias cortezzio para cambiar sus valores en consecuencia clave externa). Con el segundo enfoque al retirar. codoen el que hay enlaces en todos los referentes cortech valor clave externa automáticamente se vuelve completamente incierto. Finalmente, el tercer enfoque (eliminación en cascada) es que al retirar codo de relacionesque se hace referencia de referente relaciones Todas las referencias se eliminan automáticamente. cortezzi.

En DBMS relacional desarrollado, generalmente puede elegir cómo mantener integridad de enlaces Para cada caso de definición. clave externa. Por supuesto, para tomar tal decisión, es necesario analizar los requisitos de un área aplicada específica.

· Conclusión

Lo más probable es que los lectores potenciales de este curso funcionen o trabajarán con cualquier DBMS orientado a SQL. Cualquier compañía que produce DBMS similares les llama a los sistemas relacionales. Es muy importante comprender claramente qué propiedades de tales sistemas son realmente relacionales, y que no corresponden del todo con la fuente, claras y estrictas ideas enfoque relacional E incluso contradecirlos. Ayudará a organizar más correctamente. base de datos y construir aplicaciones en un entorno DBMS orientado a SQL.

En varias conferencias de este curso, las posibilidades de las lenguas actuales de SQL están suficientemente discutidas en detalle: SQL: 1999 y SQL: 2003. Pero los primeros lectores se les ofrece un material que representa. enfoque relacional en forma pura. En esta conferencia, se introduce la base de conceptos. enfoque relacional; Se determinan los términos principales; Se investigan las consecuencias fundamentales de las definiciones básicas. Considerado modelo de datos relacionales Se pretende principalmente para evaluar el cumplimiento de varias implementaciones del total DBMS. enfoque relacional.

Introducción

El comienzo del siglo XXI, los especialistas se convierten en un siglo de tecnología informática. La humanidad entra en una época de información fundamentalmente nueva. Todos los componentes del estilo de vida de las personas están cambiando. El nivel de información se convierte en una de las características del nivel de desarrollo del estado.

Muchos países en desarrollo se han dado cuenta en el nivel adecuado las ventajas que no están cubiertas con la difusión y el desarrollo de las tecnologías de la información y la comunicación. Y no hay duda de que el hecho de que el movimiento a la sociedad de la información sea un tipo de camino, que está dirigido al futuro de la civilización humana.

Según el modelo relacional, la base de datos es un conjunto específico de tablas sobre las cuales se realizan las operaciones que se formulan en términos de álgebra relacional y cálculo relacional.

En el modelo relacional de la operación en relación con los objetos de la base de datos, existe un carácter teórico que es el núcleo de cualquier base de datos. El modelo representa una variedad de datos estructurales, restricciones de integridad y operaciones de manipulación de datos.

Conceptos básicos del modelo de datos relacionales.

Los principales conceptos peculiares de los datos relacionales se consideran el tipo de datos, el dominio, el atributo, la tupla, la relación clave principal. Inicialmente, notaremos el significado de estos conceptos sobre el ejemplo de la relación de los "empleados", que contenimos información sobre los empleados de alguna organización.

El concepto del tipo de datos es proporcional a un modelo de datos relacionales con el concepto de tipo de datos en lenguajes de programación. En las bases de datos relacionales modernas, el almacenamiento de datos numéricos simbólicos, cadenas de bits, así como datos especiales "temporales", que se están desarrollando de manera bastante activa en el proceso de expandir las posibilidades de los sistemas relacionales.

El concepto de un dominio tiene cierta especificidad para las bases de datos, aunque tienen alguna antología con probabilidades con respecto a algunos lenguajes de programación. En general, el dominio está determinado por la tarea de algún tipo básico al que se relaciona el elemento de dominio y una expresión lógica arbitraria con la aplicación en el elemento de tipo de datos. En el caso, cuando el cálculo de esta expresión lógica representa el resultado de "verdad", el elemento es un elemento del dominio.

Se considera que una interpretación más correcta del concepto de dominio es la comprensión del dominio, como uno de los conjuntos potenciales permisibles de los valores de este tipo.

Por ejemplo, un dominio "Nombres" en nuestro caso, en el tipo básico de símbolo, se define, pero el número de sus valores incluirá solo aquellos plazos que puedan representar el nombre), dichas fechas no pueden comenzar con un Sign Sign). También es necesario tener en cuenta la carga semántica del concepto del dominio: solo en el caso de que los datos sean comparables cuando sean relevantes para el dominio, pero solo uno

En nuestro caso, los valores de los dominios de los "números de paso" y "números de grupo", que están relacionados con el tipo de entero, no pueden ser comparables. Tenga en cuenta que en algunos casos el concepto del dominio en sí no encuentra la aplicación en sí, porque Ya apoyado en Oracle V.7.

El esquema de la relación es una pareja múltiple personal: que incluye: el nombre del atributo, el tipo, pero solo si el concepto del dominio no es compatible. El grado de "artismo" es un esquema de relaciones: este es un cierto poder de estos conjuntos.

Al mismo tiempo, las relaciones "empleados" serán iguales a cuatro y se considerarán con 4-Arral. Y si todos los atributos de una relación se definen en dominios relativamente diferentes, es inteligentemente nombrar nombres de atributos de los dominios respectivos, sin olvidar que esto se considera solo uno de los métodos de nombres convenientes y no brinda la oportunidad de eliminar las diferencias con respecto a la Concepto de un dominio y atributo. El diagrama de la base de datos es un conjunto específico de circuitos de relaciones.

Una tupla que corresponde a este esquema de la relación es un conjunto de pares, que se refleja en la entrada de cada nombre de atributo propiedad del esquema de relaciones.

El "valor" se considera el valor permisible del dominio de este atributo, en el caso de que el concepto del dominio no es compatible. Como resultado, el grado de la cónica, es decir,. El número de ciertos elementos coincide con el grado de esquema de relación relevante

La tupla es un conjunto de valores nominales de un tipo específico.

La proporción es una gran cantidad de tuplas que corresponden a un esquema de relación. De hecho, el concepto del esquema de relación está más cerca del concepto de un tipo estructural de datos en las lenguas de programación fue el encabezado y la actitud como un conjunto de tuplas fue una relación corporal. Por lo tanto, sería lógico resolver el esquema de relación por separado, y más tarde, una o más relaciones con este esquema, pero las bases de datos relacionales no se aceptan.

El nombre del circuito de relaciones en relación con estas bases de datos en la mayoría de los casos coincide con el nombre del espécimen correspondiente. En las bases de datos relacionales clásicas, después de un esquema de base de datos específico, solo cambian las relaciones de instancia. Pueden aparecer nuevos y existentes mechones. Pero al mismo tiempo, en muchas implementaciones, se encuentra un cambio en el esquema de la base de datos: determinar el nuevo y cambiar los circuitos de relaciones ya existentes, que es habitual llamada evolución del esquema de la base de datos.

La visión habitual de la relación se considera una tabla, cuyo título se considera un esquema de relaciones y cadenas: la corteza de la instancia de la instancia, en este caso, los nombres de los atributos se denominan las columnas de esta tabla. En este sentido, a veces dicen la "columna de la mesa", lo que implica "atributo de la relación". Como se puede ver, los principales conceptos estructurales del modelo de datos relacionales (excepto el concepto de dominio) tienen una interpretación intuitiva muy simple, aunque en la teoría de la base de datos relacionales, todos están determinados de manera absolutamente formal y precisa.

Como se mencionó, los modelos relacionales de datos son los más populares. De acuerdo con el modelo de datos relacionales, los datos se envían en forma de un conjunto de tablas sobre las cuales se pueden realizar las operaciones formuladas en términos de álgebra relacional o cálculo relacional.

A diferencia de los modelos jerárquicos y de red de datos en el modelo relacional de operaciones sobre objetos son la naturaleza teórica y múltiple. Esto permite a los usuarios formular sus solicitudes más compactas, en términos de unidades de datos más grandes.

Considere la terminología utilizada cuando se trabaja con bases de datos relacionales.

Clave primaria.La clave principal es un campo o un conjunto de campos, identificando inequívocamente el registro.

A menudo hay varias opciones para elegir la clave principal. Por ejemplo, en una pequeña organización de las claves principales de la entidad del empleado, tanto un número de tabla como una combinación del apellido, nombre y número patronímico (con confianza que no hay tesis completa en la organización), o el número y la serie del pasaporte (si hay pasaportes para todos los empleados). En tales casos, al elegir una clave primaria, se da preferencia a las teclas más simples (en este ejemplo, el número de tabla). Otros candidatos para el papel de la clave principal se denominan claves alternativas.

Requisitos para la clave principal:

    singularidad, es decir, la tabla no debe existir dos o más registros con el mismo valor de la clave principal;

    la clave principal no debe contener valores vacíos.

Al elegir una clave principal, se recomienda elegir un atributo, cuyo valor no cambia durante todo el tiempo de la instancia de la existencia (en este caso, el número de la tabla es preferible al apellido, ya que se puede cambiar , mejorándolo).

En los campos que se utilizan a menudo al buscar y clasificar los datos se establecen llaves secundarias: Ayudarán al sistema a encontrar los datos necesarios mucho más rápidos. A diferencia de los campos primarios de los campos para los índices (claves secundarias) pueden contener valores no únicos.

Las claves primarias se utilizan para establecer enlaces entre tablas en la base de datos relacional. En este caso, la clave principal de una tabla (parental) corresponde a clave externaotra tabla (subsidiaria). La clave externa contiene los valores del campo asociado, que es la clave principal. Los valores en el hombre exterior pueden ser irrazonables, pero no deben estar vacíos. Las claves primarias y externas deben ser del mismo tipo.

Vínculos entre tablas. Las entradas en la tabla pueden depender de uno o más registros de otra tabla. Tales relaciones entre las tablas se llaman conexiones.La comunicación se define de la siguiente manera: campo o varios campos de una tabla, llamados clave externase refiere a la clave principal de otra tabla. Considere un ejemplo. Dado que cada pedido debe provenir de un cliente específico, cada entrada de la tabla Pedidos.(pedidos) debe referirse a la entrada de la tabla apropiada Clientes.(Clientes). Esta es la conexión entre las tablas. Pedidos.y Clientes.. Mesa Pedidos.debe haber un campo donde se almacenan los enlaces con aquellos u otras entradas de la tabla. Clientes..

Tipos de conexiones. Hay tres tipos de conexiones entre las tablas.

Doce y cincuenta y nueve de la noche -cada grabación de la tabla principal está conectada solo con la grabación de un niño. Tal conexión se encuentra en la práctica mucho con menos frecuencia. uno a muchose implementado determinando una clave externa única. Comunicación doce y cincuenta y nueve de la nocheuse si no quiere que la tabla "volteó" de una gran cantidad de campos. Las bases de datos que incluyen tablas con un bono de este tipo no se pueden considerar completamente normalizadas.

Uno a muchos -cada grabación de la tabla principal está asociada con una o más entradas subsidiarias. Por ejemplo, un cliente puede hacer varios pedidos, pero varios clientes no pueden hacer un pedido. Comunicación O. dean a muchoses la más común para las bases de datos relacionales.

Muchos a muchos -varios registros de una tabla están asociados con varias entradas. Por ejemplo, un autor puede escribir algunos libros y algunos autores: un libro. En caso de tal conexión, en general, es imposible determinar qué entrada de una tabla corresponde al registro seleccionado de otra tabla, lo que hace lo físico imposible (a nivel de índices y desencadenantes) la implementación de tal relación entre Las tablas relevantes. Por lo tanto, antes de pasar al modelo físico, todos los enlaces "muchos a muchos" deben redefinirse (algunos fondos de casos, si se usan al diseñar datos, hágalo automáticamente). Una relación similar entre las dos tablas se implementa creando una tercera tabla y la implementación del tipo "uno a muchos" de cada una de las tablas disponibles con una tabla intermedia.

Base de datos (base de datos) -este es el conjunto nombrado de datos estructurados relacionados con un área temática determinada y destinados a almacenamiento, acumulación y procesamiento utilizando computadoras.

Base de datos relacional (RBD) - Este es un conjunto de relaciones cuyos nombres coinciden con los nombres de los esquemas en el esquema DB.

Conceptos básicosbases de datos relacionales:

· Tipo de datos - Tipo de valores de columna específicos.

· Dominio (Dominio) - El conjunto de todos los valores de atributos válidos.

· Atributo (atributo) - Título de la columna de la tabla, caracterizando la propiedad de objetos con nombre, como el apellido de los estudiantes, la fecha de pedido, el lugar de empleado, etc.

· Tribunal - Una cadena de una tabla, que es un conjunto de valores de atributos lógicamente relacionados.

· Actitud (Relación): una tabla que refleja información sobre los objetos del mundo real, por ejemplo, sobre estudiantes, pedidos, empleados, residentes, etc.

· Clave primaria (Tecla principal): el campo (o conjunto de campos) de la tabla, identifica inequívocamente cada uno de sus registros.

· Clave alternativa - Este es un campo (o un conjunto de campos), inconsistente con la clave principal y una instancia de registro de identificación única.

· Clave externa - Este es un campo (o un conjunto de campos) cuyos valores coinciden con los valores existentes de la clave principal de otra tabla. Al escribir dos tablas con la clave principal de la primera tabla, se asocia la tecla externa de la segunda tabla.

· Modelo de datos relacionales (RMD)- Organización de datos en forma de tablas bidimensionales.

Cada tabla relacional debe tener las siguientes propiedades:

1. Cada entrada de la tabla es única, es decir,. El conjunto de valores en los campos no se repite.

2. Cada valor se registra en la intersección de la cadena y la columna, es atómica (inseparable).

3. Los valores de cada campo deben ser un tipo.

4. Cada campo tiene un nombre único.

5. El procedimiento para la ubicación de los registros es insignificante.

Elementos básicos de BD:

Campo - Unidad elemental de la organización de datos lógicos. Las siguientes características se utilizan para describir el campo:

· Nombre, como apellido, nombre, patronímico, fecha de nacimiento;

· Tipo, por ejemplo, cadena, símbolo, numérico, fecha;

· Longitud, por ejemplo, en bytes;

· Precisión para datos numéricos, por ejemplo, dos signos decimales para mostrar la parte fraccionada del número.

Registro - Un conjunto de valores de campos lógicamente relacionados.

Índice - Acelerar la operación de búsqueda de registros utilizados para instalar conexiones entre tablas. La tabla para la cual se usa el índice se denomina indexado. Al trabajar con índices, es necesario prestar atención a la organización de los índices, que es la base de la clasificación. El índice simple está representado por un campo o una expresión lógica que procesa un campo. El índice compuesto está representado por varios campos con la posibilidad de usar varias funciones. Los índices de tabla se almacenan en el archivo de índice.


Integridad de los datos - Esta es una herramienta de protección de datos en campos de comunicación, lo que permite soportar tablas en un estado consistente (consistente) (es decir, no permitir la existencia en la tabla subordinada de entradas que no tienen registros apropiados en la tabla principal).

Consulta - una pregunta formulada a una o más tablas interrelacionadas que contienen criterios de muestreo de datos. La solicitud se realiza utilizando el lenguaje de consulta SQL estructurado (lenguaje de consulta SRtrucred). Como resultado de las muestras de datos de una o más tablas, se puede obtener una variedad de registros, llamada la vista.

Presentación de datos - La base de datos se almacena en la base de datos de una selección de datos (de una o más tablas).

La presentación es esencialmente una tabla temporal formada como resultado de la ejecución de la solicitud. La solicitud en sí puede enviarse a un archivo, informe, tabla temporal, tabla de información, etc.

Informe- Componente del sistema, cuyo objetivo principal es una descripción y salida para imprimir documentos basados \u200b\u200ben información de la base de datos.

Características generales de trabajar con RBD:

La interpretación más común del modelo de datos relacionales, aparentemente pertenece a la fecha, lo que la reproduce (con varias aclaraciones) en casi todos sus libros. Según la fecha, el modelo relacional consiste en tres partes que describen diferentes aspectos del enfoque relacional: la parte estructural, la parte de manipulación y la parte holística.

En la parte estructural del modelo, se soluciona que la única estructura de los datos utilizados en la base de datos relacional se normaliza la actitud de N-Arous.

En la manipulación del modelo, se aprobaron dos mecanismos fundamentales para manipular la base de datos relacionada. - Álgebra relacional y cálculo relacional. El primer mecanismo se basa principalmente en la teoría clásica de los conjuntos (con algunas aclaraciones), y el segundo está en el aparato lógico clásico del cálculo de los predicados de primer orden. Tenga en cuenta que la función principal de la parte de manipulación del modelo relacional es garantizar la relación entre cualquier idioma en particular de las bases de datos relacionales: el idioma se llama relacional, si no tiene menos expresividad y poder que un álgebra relacional o cálculo relacional.


28. Idiomas algorítmicos. Traductores (intérpretes y compiladores). Idioma algorítmico Baysik. Estructura del programa. Identificadores. Variables. Operadores. Procesamiento de matrices unidimensionales y bidimensionales. Función del usuario. Subrutinas Trabajar con archivos de datos.

Idioma de alto nivel - Idioma de programación, conceptos y estructura de los cuales son convenientes para la percepción por el hombre.

Lengua algorítmica (Lenguaje algorítmico) - lenguaje de programación - lenguaje artificial (formal) diseñado para registrar algoritmos. El lenguaje de programación está establecido por su descripción y se implementa como un programa especial: compilador o intérprete. Ejemplos de lenguas algorítmicas Sirven - Borland Pascal, C ++, Básico, etc.

Los conceptos principales de la lengua algorítmica:

Composición del lenguaje:

Un lenguaje hablado ordinario consiste en cuatro elementos principales: símbolos, palabras, frases y sugerencias. El lenguaje algorítmico contiene elementos similares, solo las palabras se llaman estructuras elementales, frases - expresiones, ofertas: operadores.

Símbolos, las estructuras elementales, las expresiones y los operadores son una estructura jerárquica, ya que las estructuras elementales se forman a partir de una secuencia de caracteres.

Expresiones - Esta es una secuencia de estructuras y símbolos elementales,

Operador - Secuencia de expresiones, estructuras elementales y símbolos.

Descripción del idioma:

La descripción de los personajes es enumerar los caracteres permisibles del idioma. Bajo la descripción de las estructuras elementales, se entienden las reglas para su educación. Una descripción de la expresión son las reglas para la formación de cualquier expresión que tenga sentido en este idioma. La descripción de los operadores consiste en consideración de todos los tipos de operadores permisibles en el idioma. Una descripción de cada elemento de idioma está configurado en su sintaxis y semántica.

Sintaxis Las definiciones establecen reglas para construir elementos de lenguaje.

Semántica Determina el significado y las reglas para usar aquellos elementos del idioma para los cuales se dieron definiciones sintácticas.

Símbolos de idioma - Estos son signos indivisibles básicos, en cuanto a los cuales se escriben todos los textos en el idioma.

Estructuras elementales - Estas son unidades mínimas de lenguaje con significado independiente. Se forman a partir de los caracteres básicos del idioma.

Expresión El lenguaje algorítmico consiste en estructuras y símbolos elementales, especifica la regla para calcular algún valor.

Operador Especifica una descripción completa de alguna acción que debe realizarse. Para describir una acción compleja, se puede requerir un grupo de operadores.

En este caso, los operadores se combinan en Operador compuesto o Cuadra. ComportamientoEspecificado por los operadores se realizan en los datos. Las sugerencias del lenguaje algorítmico, que proporcionan información sobre los tipos de datos, se denominan descripciones o operadores no observados. El algoritmo combinado Las descripciones y los operadores combinados forman un programa en el lenguaje algorítmico. En el proceso de estudiar el lenguaje algorítmico, es necesario distinguir un lenguaje algorítmico del idioma mediante el cual se describe el lenguaje algorítmico descrito. El lenguaje generalmente estudiado se llama simplemente por el idioma, y \u200b\u200bel idioma, en términos de los cuales se describe el idioma, Pareo.

Traductor - (Traductor en inglés - traductor) es un programa de traductores. Convierte un programa escrito en uno de los idiomas de alto nivel en un programa que consiste en comandos de máquinas.

Un programa escrito en un lenguaje algorítmico de alto nivel no se puede realizar directamente en una computadora. Eum entiende solo el idioma de los equipos de la máquina. En consecuencia, el programa en el lenguaje algorítmico debe traducirse (traducido) al idioma del comando EUM específico. Dicha traducción se realiza mediante programas de traductores especiales automáticamente creados para cada idioma algorítmico y para cada tipo de computadoras.

Hay dos formas principales de transmitir - compilación e interpretación.

1. Finalización: compilador (Inglés. Compilador - Compilador, colector) Lee el programa completo por completo, lo convierte en una traducción y crea una versión completa del programa en la máquina, que luego se ejecuta.

Para compilacion El programa de fuente completo se convierte inmediatamente en una secuencia de comandos de la máquina. Después de eso, el programa resultante resultante se realiza por computadora con datos de origen existentes. La ventaja de este método es que la transmisión se realiza una vez, y (múltiple) que realice el programa resultante se puede llevar a cabo a alta velocidad. Al mismo tiempo, el programa resultante puede tomar mucho espacio en la memoria de la computadora, ya que un operador de idioma es reemplazado por cientos o incluso miles de comandos. Además, la depuración y las modificaciones del programa traducido son muy difíciles.

2. Interpretación: intérprete. (Intérprete de inglés: un intérprete, intérprete) traduce y ejecuta el programa de cadenas del programa.

Para interpretaciones El programa de origen se almacena en la memoria de la computadora casi sin cambios. El programa del intérprete decodifica a los operadores del programa original en uno y garantiza inmediatamente sus datos existentes. El programa interpretable ocupa un lugar pequeño en la memoria de la computadora, es fácil depurar y modificar. Pero la ejecución del programa se produce bastante lentamente, porque cada vez que se aceptan cada vez en cada vez que se aceptan todas las ejecuciones.

Los programas compilados trabajan más rápido, pero se interpretan más fáciles de corregir y cambiar

Cada idioma específico está orientado, ya sea en la compilación, o a la interpretación, dependiendo del propósito que se creó. Por ejemplo, Pascal se usa generalmente para resolver tareas bastante complejas en las que la velocidad de los programas es importante. Por lo tanto, este idioma generalmente se implementa utilizando un compilador.

Por otro lado, Beysik fue creado como un lenguaje para programadores novatos para quienes la construcción del programa tiene ventajas innegables.

A veces hay un compilador para un idioma, y \u200b\u200bel intérprete. En este caso, para desarrollar y probar el programa, puede usar el intérprete y luego compilar el programa depurador para aumentar la velocidad de su ejecución.



¿Te gustó el artículo? Compártelo