Download BASE DE DATOS

Document related concepts

Microsoft SQL Server wikipedia , lookup

Base de datos distribuida wikipedia , lookup

Modelo de base de datos wikipedia , lookup

NoSQL wikipedia , lookup

SQL wikipedia , lookup

Transcript
BASE DE DATOS
Asignatura Clave: COM006
Número de Crédito: 8
Teórico: 6
Práctico: 2
INSTRUCCIONES PARA OPERACIÓN ACADÉMICA:
El Sumario representa un reto, los Contenidos son los ejes temáticos,
los Activos una orientación inicial para resolverlos y la síntesis concluyente,
como posibilidad de integración conceptual corresponderá a lo factible de
un punto de vista temático amplio. La visión global de los asuntos resueltos
como Titular Académico, te ofrecerá oportunidades de discusión que se
enriquecerán en la medida que intensificas las lecturas, asistes a tu comunidad
de estudio, te sirves de los asesores y analizas la ciberinformación disponible
posicionándote de los escenarios informativos adecuados. Los períodos de
evaluación son herramientas de aprendizaje. Mantén informado al Tutor de
tus avances académicos y estado de ánimo. Selecciona tus horarios de
asesoría. Se recomienda al Titular Académico (estudiante) que al iniciar su
actividad de dilucidación, lea cuidadosamente todo el texto guión de la
asignatura.
COMPETENCIAS: Conocer y emplear el software de manejo de base de
datos más actuales e identificar las necesidades y ventajas del empleo de las
mismas.
SUMARIO: Introducir a los modos de estructura y explotación de los datos
temporarios
o permanentes soportados por medios informáticos, en sus
diferentes formas de implementación lógica y física.
BASE DE DATOS
CONTENIDOS:
Unidad I
Unidad II
Unidad III
Unidad IV
Unidad V
Unidad VI
Unidad VII
Organización Lógica de una Base de Datos
Organización Física de una Base de Datos
Arquitectura de una Base de Datos
Base de datos distribuidas
Lenguajes de Base de Datos
Enfoque de Base de Datos
Programación en SQL
ACTIVOS
UNIDAD I
Organización Lógica de una Base de Datos
I.1.I.2.I.3.I.4.I.5.I.6.I.7.I.8.-
Concepto de Base de datos
Características de una Base de Datos
Sistema de administración de base de datos
Sistema de gestión de Base de Datos
Entidades y atributos
Estructuras ramificadas
Estructura plex
Organización Lógica de una Base de Datos
UNIDAD II
Organización física de una Base de Datos
II.9.II.10.II.11.II.12.II.13.-
Introducción
Diferencia entre organización lógica y física
Punteros
Estructura en cadena y anillo
Técnicas de direccionamiento
UNIDAD III
Arquitectura de una Base de Datos
III.14.III.15.III.16.III.17.III.18.-
Introducción
Niveles de la arquitectura de la base de datos
Modelo interno
Modelo Conceptual
Modelo externo
UNIDAD IV
Base de datos distribuidas
IV.19.-Concepto de Base de Datos distribuidas
IV.20.-Almacenamiento de datos en Base de Datos distribuidas
IV.21.-Procesamiento distribuido de consultas
IV.22.-Modelo de transacciones distribuidas
IV.23.- Protocolos de compromiso
IV.24.-Sistemas con múltiples base de datos
UNIDAD V
Lenguajes de Base de datos
V.25.- Lenguajes de definición de datos
V.26.- Lenguajes de manipulación de datos
UNIDAD VI
Enfoque de Base de datos
VI.27.- Sistemas centralizados
VII.28.- Sistemas cliente-servidor
VII.29.- Sistemas paralelos
VII.30.- Sistemas distribuidos
UNIDAD VII
Programación en SQL
VIII.31.- Introducción a SQL
VIII.32.- Estructura básica.
Conferencia Temática magistral
ESCENARIOS INFORMATIVOS:
- Asesores Locales
- Asesores Externos
- Disposición en Internet.
- Puntualidad en Intranet.
- Fuentes Directas e Indirectas.
BIBLIOGRAFÍA
Y. H. Alice, Tsai
1990 Sistemas de Base de Datos .
Editorial Prentice Hall.
James, Martín
1995 Organización de las Base de Datos.
Editorial Prentice Hall.
Piattini, Mario
1999 Fundamentos y modelos de Base de Datos.
2da. edición Alfaomega.
Páginas WEB:
BASE DE DATOS
PRINCIPIA TEMATICA:
I.1.-
Una base de datos es un conjunto de datos relacionados entre sí.
Por datos entendemos hechos conocidos que pueden registrarse y que
tienen un significado implícito.
1.2.•
Seguridad e integridad de los datos
•
•
Consulta, interrogación interactiva
Independencia de los datos
I.3.-
Es un software
que controla
la organización, almacenamiento,
recuperación, seguridad e integridad de los datos en una base de datos.
Acepta pedidos de datos de sde un programa de aplicación y le ordena
al sistema operativo transferir los datos apropiados
Cuando se usa un sistema de gestión de base de datos, los sistemas de
información pueden ser cambiados más fácilmente a medida que
cambien los requerimientos de la organización.
I.4.-
Es un conjunto de programas que permite a los usuarios crear y
mantener una base de datos. Por tanto es un sistema de software de
propósito general que facilita el proceso de definir, construir y manipular
base de datos para diversas aplicaciones.
I.5.-
Llamaremos entidades a las cosas sobre las cuales se almacena
información. Una entidad puede ser un objeto tangible, como por
ejemplo: un empleado, una pieza o artículo, o un lugar, pero también
puede ser algo intangible tal como un suceso, un nombre de tarea, la
cuenta de un cliente o un concepto abstracto.
Toda entidad tiene propiedades que eventualmente conviene registrar
tales como color, valor monetario o nombre.
Por lo común mantenemos un registro para cada entidad y agrupamos
en conjunto de registro de entidad todos los registros pertinentes a
entidades similares. Los registros se refieren a atributos de las entidades
y contienen los valores de estos atributos. Los atributos registrados en
relación con una cosa pueden incluir la dirección, número de habitación,
superficie de terreno, valuación fiscal, fecha de construcción, etc.
I.6.-
Todo árbol está compuesto con una jerarquía de elementos
denominados nudos. El nivel más alto de la jerarquía tiene un solo nudo
el que se llama raíz.
Con excepción de la raíz, todo nudo está vinculado a otro nudo de nível
más alto al que llamamos padre. Ningún elemento puede tener más de
un padre. En cambio todo elemento puede tener uno o más elementos
relacionados, en un nível más bajo; estos son los hijos. Los elementos
que se encuentran en las puntas de las ramas (es decir, que no tienen
hijos) se llaman hojas.
Los árboles se dibujan casi siempre cabeza abajo, es decir, con la raíz
arriba y las hojas abajo. Estos árboles se utilizan tanto para las
descripciones lógicas como para las descripciones físicas. En las
descripciones lógicas sirven para describir las relaciones que existen
entre tipos de segmentos o tipos de registros. En las organizaciones
físicas de datos se los emplea para describir conjuntos de punteros y
relaciones entre entradas de los índices.
I.7.-
Sin una relación entre datos un hijo tiene más de un padre, la relación no
puede ya ser descrita por medio de un árbol o estructura jerárquica. Se
lo describe en cambio por medio de una estructura plex o una red. Los
términos red y estructura plex son sinónimos pero como red es un
término red es muy gastado hablaremos aquí de estructuras plex.
En una estructura plex cualquier componente puede vincularse con
cualquier otro.
Como en el caso de un árbol la estructura plex puede ser descrita en
términos de padres e hijos, y dibujada de tal manera que los hijos
aparezcan debajo de los padres. Pero la estructura plex un hijo puede
tener más de un padre.
La organización lógica se preocupa por la organización general de la
base de datos de la cual puede derivarse múltiples organizaciones de
archivos.
Existe una independencia lógica de datos donde la modificación de la
estructura general no afecta a los programas de aplicación (el cambio
desde luego no debe eliminar ninguno de los datos que el programador
necesite ).
La descripción lógica de un registro puede contener para un
programador item, que son distintos a los que aparecen en la
descripción del mismo registro de un programador.
I.8.-
II.9.- La selección de la organización física está principalmente basada en la
necesidad de asegurar el buen rendimiento operativo, adecuados
tiempos de respuesta y la minimización de los costos.
II.10.Organización lógica
Organización física
Los requerimientos delos
Los requerimientos de los
programas de aplicación se ajustan programas de aplicación pueden
a la estructura lógica de los datos
referirse a datos de forma
totalmente diferentes de las de
almacenamiento de los datos.
La simplicidad es importante.
La organización compleja suele ser
ventajosa. El software oculta esta
complejidad a los usuarios.
La independencia de los datos es
La independencia de los datos
de principal importancia.
carece de importancia si se
proveen medios para reestructurar
los datos físicos sin alteración del
esquema.
El empleo eficiente del almacén es El empleo eficiente del almacén es
de escasa importancia.
un factor de la mayor importancia
para la elección de la técnica de
representación yu distribución física
de los datos.
Las características de la unidad de Las características de la unidad de
almacenamiento no debería afectar almacenamiento tales como la
la organización lógica.
longitud de pistas y tamaño del
volumen. Son factores
determinantes para la organización
del almacenamiento.
En los archivos lógicos existe a
La eliminación de la redundancia es
menudo un alto nivel de
uno de los objetivos dela
redundancia
organización física.
II.11.- Muchas bases de datos tienen nexos entre registros, denominados
punteros.
El puntero es un campo de un registro que indica donde se almacenan
otros registros. Suelen vincular también agregados de datos.
II.12.- Muchas bases de datos utilizan cadenas para interconectar los registros.
La cadena consiste en un conjunto de registros distribuidos en los
archivos e interconectados por una serie de punteros.
La principal desventaja de los registros en cadena,. Está en que se
necesitan muchas operaciones de lectura para seguir las cadenas
largas.
Los anillos son comunes en muchas organizaciones de archivos. Se los
utiliza con el fin de eliminar redundancias. Cuando se entra a un anillo
por un punto no muy alejado de su cabeza, puede resultar conveniente
obtener rápidamente la información contenida en está última, es decir
sin recorrer todos los eslabones subsiguientes.
II.13.- Técnica uno: exploración o barrido del archivo.
Técnica dos: búsqueda por bloque.
Técnica tres: búsqueda binaria.
Técnica cuatro: archivos secuenciales indizados.
Técnica cinco: archivos no secuenciales indizados.
Técnica seis: direccionamiento clave- igual-dirección.
Técnica siete: algoritmo para conversión de clave.
Técnica ocho: desmenuzamiento(hashing).
II.14.- La arquitectura de un sistema de base de datos esta influenciada en
gran medida por el sistema informatico subyacente en el que se ejecuta
el sistema de base de datos. En la arquitectura de un sistema de base
de datos se reflejan aspectos como la conexión de red, el paralelismo y
la distribución.
•
•
•
La conexión de red: de varias computadoras permite que algunas
tareas se ejecuten en un sistema servidor y que otras se ejecuten en
los sistemas clientes. Esta división de trabajo ha conducido al
desarrollo de sistema de base de datos cliente – servidor.
El procesamiento paralelo: dentro de una computadora permite
acelerar las actividades del sistema de base de datos,
proporcionando a las transacciones una respuesta más rápida, así
como la capacidad de ejecutar más transacciones por segundo.
La distribución de datos: a través de las distintas sedes o
departamentos de una organización permite que estos datos residan
donde han sido generados o donde son más necesarios, pero
continuar siendo accesibles desde otros lugares o departamentos
diferentes.
II.15.Nivel externo
Perspectiva personal del programador
Nivel conceptual
Perspectiva del usuario
Esquema
externo
Esquema
externo
Esquema
conceptua
l
Esquema
interno
Nivel interno
Perspectiva del almacenamiento fisico.
Base de
datos
Esquema
externo
III.16.- Es la representación del nivel inferior de una base de datos. Mapea la
base lógica hacia el alamacenamiento físico y establece trayectoria de
datos para el acceso aleatorio a la base de datos.
Un modelo interno es modelo es descrito por el DBMS, como un
esquema interno. El esquema contiene especificaciones detalladas del
almacenamiento de todos los registros almacenados por la base de
datos así como los descriptores del sistema: señaladores, palabras de
control y trayectorias de datos necesarios para recuperación sobre
claves secundarias.
III.17.- El administración de la base de datos define el modelo conceptual
(database adminstrator DBA) por medio de un modelo conceptual. Este
modelo representa la visión organizacional de la base que se obtiene al
integrar los requerimientos de todos los usuarios en una empresa.
Un esquema conceptual consta de las siguientes definiciones:
a)
Definición de los datos
b)
Relación entre datos
Un modelo conceptual se formula sin importar el almacenamiento fisico
de los registros correspondientes. En el nivel conceptual la base de
datos aparece solo como una colección de registros lógicos, sin
descriptores de almacenamiento.
III.18.- Representa la percepción individual de cada programador de la base de
datos porque los programadores pueden estar trabajando en distintos
subconjuntos de una base integrada.
IV.19.- Un sistema distribuido de base de datos consiste en una colección de
emplazamientos, cada uno de los cuales mantiene un sistema local de
base de datos. Cada emplazamiento puede procesar las transacciones
locales: las transacciones que solo tienen acceso a ese único
emplazamiento. Además un emplazamiento puede participar en la
ejecución de las transacciones globales.
Los sistemas distribuidos de base de datos consisten en
emplazamientos poco acoplados que no comparten componentes
físicos. Más aún los sistemas de base de datos que se ejecutan en cada
emplazamiento puede tener un grado significativo de independencia
mutua.
IV.20.- Hay varios enfoques del almacenamiento de esta relación en la base
de datos distribuídas:
•
•
Réplica. El sistema conserva varias réplicas (copias) idénticas de
la relación. Cada réplica
se guarda en un emplazamiento
diferente, lo que da lugar a la réplica de los datos. La alternativa a
la réplica es guardar sólo una copia de la relación R.
Fragmentación. La relación se divide en varios fragmentos. Cada
•
fragmento se guarda en un emplazamiento diferente.
Réplica y fragmentación. La relación se divide en varios
fragmentos. El sistema conserva varias réplicas
de cada
fragmento.
IV.21.-Para los sistemas centralizados, el criterio principal para medir el coste
de una estrategia concreta es el número de acceso a disco. En los
sistemas centralizados hay que tener en cuenta otros asuntos,
incluyendo:
•
•
El coste de la transmisión de los datos por la red
La ganancia potencial en rendimiento respecto de hacer que varios
emplazamientos procesen en paralelo parte de la consulta.
IV.22.El acceso a los diferentes elementos de datos en los sistemas
distribuidos suele realizarse
mediante transacciones, que deben
conservar las propiedades ACID. Hay que tener en cuenta dos tipos de
transacciones:
Las transacciones locales: son las que tiene acceso y actualizan datos
sólo en una base de datos local.
Las transacciones globales son las que tienen acceso y actualizan
datos en varias bases de datos locales.
Cada emplazamiento tiene su propio gestor de transacciones locales
cuya función es asegurar las propiedades ACID de las transacciones
que se ejecutan en ese emplazamiento. Los diferentes gestores de
transacciones colaboran para ejecutar las transacciones globales. Cada
emplazamiento del sistema contiene dos subsistemas:
•
•
El gestor de transacciones: Gestiona la ejecución de las
transacciones (o substracciones) que tienen acceso a datos
guardados en un emplazamiento local.
El coordinador de transacciones: coordina la ejecución de
diferentes transacciones (tanto locales como globales) iniciadas en
ese emplazamiento.
IV.23.- Entre los protocolos de compromiso más sencillos y más ampliamente
utilizados está el protocolo de compromiso de dos fases (C2F). Una
alternativa es el protocolo de compromiso de 3 fases (C3F), que evita
algunos inconvenientes del protocolo C2F pero aumenta la complejidad
y la sobrecarga.
•
Compromiso de dos fases: Sea T una transacción iniciada en el
emplazamiento E1 y sea C el coordinador de transacciones en E2 .
Cuando T completa su ejecución, es decir cuando todos los
emplazamiento en que T se ha ejecutado informan a C, de que T se
ha completado, C inicia el protocolo C2F.
• Compromiso de tres fases: El protocolo C3F está diseñado para
evitar la posibilidad de bloqueo en un caso restringido de posibles
fallos. La versión del protocolo C3F que se describe exige que:
- No puedan producirse divisiones de la red
- Como máximo K emplazamientos participantes pueden fallar
mientras se ejecute el protocolo C3F para una transacción. K es
un parámetro que indica la tolerancia del protocolo a los fallos de
los emplazamientos.
- En cualquier momento deven funcionar al menos
K + 1
emplazamientos.
IV.24.-En los últimos años se han desarrollado nuevas aplicaciones de base de
datos que necesitan datos de gran variedad de base de datos ya
existentes ubicadas en una colección heterogénea de entornos de
hardware y de software. El tratamiento de la información ubicada en
bases de datos heterogéneas exige otra capa más de software por
encima de los sistemas de bases de datos existentes. En esta capa de
software denominada sistema con múltiples bases de datos.
Los sistemas con múltiples bases de datos crean la ilusión de la
integración lógica de bases de datos sin exigir
V.25.- Un sistema de base de datos proporciona dos tipos de lenguajes
diferentes: uno para especificar el esquema de base de datos y el otro
para expresar las consultas y actualizaciones de las bases de datos.
LENGUAJE DE DEFINICION DE DATOS:
Un esquema de base de datos se especifica mediante un conjunto de
definiciones expresadas
mediante un lenguaje especial llamado
lenguaje de definición de datos (LDD). El resultado de la compilación
de las instrucciones del LDD es un conjunto de tablas almacenadas en
un archivo especial llamado diccionario de datos o directorio de datos.
Un diccionario de datos es un archivo que contiene metadatos, es decir
datos acerca de los datos. Este archivo se consulta antes de leer o
modificar los datos reales del sistema de base de datos.
La estructura de almacenamiento y los métodos de acceso usados por
el sistema de base de datos se especifica mediante un conjunto de
definiciones de un tipo especial de LDD llamado lenguaje de
almacenamiento y definición de datos. El resultado de la compilación de
estas definiciones es un conjunto de instrucciones para especificar los
detalles de implementación de los esquemas de base de datos.
V.26.- LENGUAJE DE MANIPULACION DE DATOS:
Por manipulación de datos se quiere decir:
•
•
•
•
La recuperación de información almacenada en la base de datos
La inserción de información nueva en la base de datos
El borrado de información de la base de datos
La modificación de la información almacenada en la base de datos.
Un lenguaje de manipulación de datos (LMD) es un lenguaje que permite
a los usuarios acceder o manipular los datos organizados mediante el
modelo de datos apropiado. Hay 2 tipos de básicamente:
• LMD PROCEDIMENTALES: Requiere que el usuario especifique
que datos se necesitan y como obtener esos datos.
• LMD NO PROCEDIMENTALES: Requiere que el usuario
especifique qué da
VI.27.-Los sistemas de base de datos centralizados son aquellos que se
ejecutan en un único sistema informático sin interaccionar con ninguna
otra computadora. Tales sistemas comprenden el rango desde los
sistemas de bases de datos monousuarios
ejecutándose
en
computadoras personales hasta los sistemas de base de datos de alto
rendimiento ejecutándose en grandes sistemas.
Una computadora moderna de propósito general consiste en una o
unas pocas unidades centrales de procesamiento
y
número
determinado de controladores para los dispositivos que se encuentren
conectados a través de un bus común, el cual proporciona acceso a la
memoria compartida. Las UCP poseen memorias caché locales donde
se almacenan copias de ciertas partes de la memoria para acelerar el
acceso a los datos. Cada controlador de dispositivos se encarga de un
tipo especifico de dispositivos (por ejemplo, una unidad de disco, una
tarjeta de sonido o un monitor). La UCP
y los controladores de
dispositivos pueden ejecutarse concurrentemente, compitiendo así por
el acceso a la memoria, ya que la UCP necesita acceder a la memoria
compartida un número de veces menor.
Se distinguen dos formas de utilizar las computadoras: como sistemas
monousuarios o multiusuarios.
En los sistemas monousuarios se encuentran las computadoras
personales y las estaciones de trabajo. Un sistema monousuario típico
es una unidad de sobremesa utilizada por una única persona que
dispone de una sola UCP, de uno o dos discos fijos y que trabaja con un
sistema operativo que solo permite un único usuario.
En los sistemas multiusuarios típicos tienen más discos y más memoria,
puede disponer de varias UCP y trabaja con un sistema operativo
multiusuario. Se encarga de dar servicio a un gran número de usuarios
que están conectados
al sistema a través de terminales. Estos
sistemas se denominan con frecuencia sistemas servidores.
SISTEMA INFORMATICO CENTRALIZADO
.
Discos
impresora
unidades de cinta
controlad
or de
disco
UCP
Controlad
or de
impresora
Controlad
or de
unidad de
cinta
Controlador de
la memoria
memoria
VI.28.-Los terminales conectados a un sistema central han sido suplantados
por computadoras personales. De igual forma, la interfaz de usuario, que
solía estar gestionada directamente por el sistema central, esta
pasando a ser gestionada cada vez más por las computadoras
personales, como consecuencia los sistemas centralizados actúan hoy
como sistemas servidores que satisfacen peticiones generadas por los
sistemas clientes.
La funcionalidad de una base de datos se puede dividir, a grandes
rasgos en dos partes; la parte visible al usuario y el sistema subyacente.
El sistema subyacente gestiona el acceso a las estructuras, la
evaluación y optimización de consultas, el control de concurrencia y la
recuperación. La parte visible al usuario de un sistema de base de datos
está formada por herramientas como formularios, diseñadores de
informes y facilidades gráficas de interfaz de usuario.
Estructura general de un sistema cliente – servidor
Cliente
cliente
Cliente
cliente
Red
Servidor
Los sistemas
servidores pueden
dividirse en servidores de
transacciones y servidores de datos:
• Los sistema servidores de transacciones, también llamados
sistemas servidor de consultas, proporcionan una interfaz a través
de la cual los clientes pueden enviar peticiones para realizar una
acción que el servidor ejecutará y cuyos resultados se devolverán al
cliente.
• Los sistemas servidores de datos permiten que los clientes
puedan interaccionar con los servidores realizando peticiones de
lectura o modificación de datos en unidades tales como archivos o
páginas.
VI.29.-Los sistemas paralelos mejoran la velocidad de procesamiento y de
E/S mediante la utilización de UCP y discos en paralelo.
En el procesamiento paralelo se realizan muchas operaciones
simultáneamente, mientras que en el procesamiento secuencial los
distintos pasos computacionales han de ejecutarse en serie.
Existen varios modelos de arquitectura oara las máquinas paralelas.
• Memoria compartida: Todos los procesadores comparten una
memoria común
• Disco compartido. Todos los procesadores comparten un disco
común. Algunas veces los sistemas de discos compartidos se
denominan agrupaciones.
• Sin compartimiento. Los procesadores no comparten ni memoria
ni disco.
• Jerárquico. Este modelo es un híbrido de las arquitecturas
anteriores.
VI.30.- En un sistema distribuido de base de datos se almacenan la base de
datos en varias computadoras. Varios medios de comunicación, como
las redes de alta velocidad o las líneas telefónicas, son los que pueden
poner en contacto las distintas computadoras de un sistema distribuido.
No comparten ni memoria, ni disco. Las computadoras de un sistema
distribuido pueden variar en tamaño y función, pudiendo abarcar desde
las estaciones de trabajo a los grandes sistemas.
Las bases de datos distribuidas normalmente se encuentran en varios
lugares geográficos distintos, se administran de forma separada y
poseen interconexión más lenta, en un sistema de bases de datos
distribuidas se dan dos tipos de transacciones, las locales y las
globales.
Las transacciones locales son aquellas que acceden a los datos del
único emplazamiento en el cual se inició la transacción.
Una transacción global es aquella que o bien accede a los datos
situados en un emplazamiento diferente de aquel en el que se inició la
transacción, o bien accede a datos de varios emplazamientos distintos.
SISTEMA DE DATOS DISTRIBUIDO
Emplazamiento A
Emplazamiento C
red
Comunicación a través de
la red
Emplazamiento B
TIPOS DE REDES
La Base de datos distribuidas y los sistemas cliente - servidor se
construyen en torno a las redes
de comunicación. Existen
básicamente dos clases redes: las redes de área local y las redes de
área amplia.
La diferencia principal entre ambas es la forma en que están
distribuidas geográficamente. Las redes locales están compuestas por
procesadores distribuido en áreas geográficas pequeñas, tales como
un edificio o varios edificios adyacentes. Las redes de área amplia se
componen de un número determinado de procesadores autónomos
que están distribuidos a lo largo de una extensa área geográfica,
como puede ser España el mundo entero.
VIII.31.- SQL (Structured Query
Language, Lenguaje Estructurado de
Consultas).
SQL usa una combinación de álgebra relacional y construcciones del
cálculo relacional.
Aunque el lenguaje SQL se considere un lenguaje de consultas,
contiene muchas otras capacidades además de la consulta de bases
de datos. Incluye características para definir la estructura de los datos,
para la modificación de los datos en la base de datos y para la
especificación de ligaduras de seguridad.
SQL se ha establecido claramente como el lenguaje estándar de base
de datos relacionales.
El lenguaje tiene varios componentes:
• Lenguaje de definición de datos (LDD).
El LDD de SQL
proporciona órdenes para la definición de esquemas de relación,
nborrado de relaciones, creación de índices y modificación de
esquemas de relación.
• Lenguaje interactivo de manipulación de datos (LMD). El LMD de
SQL incluye un lenguaje de consultas, basado tanto en el álgebra
relacional como en el cálculo relacional de tuplas. Incluye también
órdenes para insertar, borrar y modificar tuplas de la base de datos.
• LMD Incorporado: La forma incorporada de SQL se diseñó para el
uso sin lenguaje de programación de propósito general, tales como
cobol, pascal, fortran, c, etc.
• Definición de vistas: El LDD de SQL incluye órdenes para
definiciones de vistas
• Autorización: El LDD de SQL incluye órdenes para la especificación
de los derechos de acceso a relaciones de vistas.
• Integridad: El LDD de SQL incluye órdenes para la especificación de
ligaduras que deben satisfacer los datos almacenados en la base de
datos. Las actualizaciones que violen las ligaduras de integridad se
rechazan
• Control de transacciones: SQL incluye órdenes
para la
especificación del comienzo
y final de transacciones. Varias
implementaciones permiten también bloqueo explícito de los datos
para el control de la concurrencia.
VIII.32.- Una base de datos relacional consiste en un conjunto de relaciones
cada una de las cuales se le asigna u nombre único.
SQL permite el uso de valores nulos para indicar que el valor o bien es
desconocido o no existe.
La estructura básica
de una expresión SQL consiste en tres
cláusulas: Select, From y where.
•
La Cláusula Select: Corresponde a la operación de álgebra
relacional. Se usa para listar los atributos deseados del resultado
de una consulta.
•
•
La cláusula From: corresponde a la operación proyección del
álgebra relacional. Lista las relaciones que deben ser analizadas
en evaluación de la expresión
La cláusula Where: corresponde al predicado selección del
álgebra relacional. Es un predicado que engloba a los atributos de
las relaciones que aparecen en la cláusula From.
OPERACIONES SOBRE CONJUNTOS:
Las operaciones Unión, intersect y except, operan sobre relaciones y
corresponden a las operaciones del álgebra relaciona U, ∩ y -.
Dichas operaciones eliminan duplicados automáticamente. Para
conservar los duplicados se utilizará Union all en lugar de unión,
inserct all, en lugar de inserct, except all en lugar de except.
FUNCIONES DE AGREGACION:
Las funciones de agregación son funciones que toman una colección (un
conjunto o multiconjunto) de valores como entrada y producen un único
valor como salida. SQL proporciona cinco funciones de agregación
primitivas:
•
•
•
•
•
Media: avg
Mínimo: min
Máximo: max
Total: sum
Cuenta: count.
La entrada a sum y avg debe ser una colección de números, pero los
otros operadores pueden operar sobre colecciones de datos de tipo no
numéricos, tales como las cadenas.
VALORES NULOS:
SQL permite el uso de valores nulos para indicar la ausencia de
información sobre el valor de un atributo.
En un predicado se puede usar la palabra clave null para comprobar si
un valor es nulo o no.
El predicado is nor null pregunta por la ausencia de un valor nulo.
El uso de un valor nulo en las operaciones aritméticas y de
comprobación causa varias complicaciones.
El resultado de cualquier comparación que involucre un valor nulo se
puede considerar falso., en concreto SQL trata estos resultados de este
tipo de comparaciones como desconocido, lo cual no es cierto ni falso.
SUBCONSULTAS ANIDADAS:
SQL proporciona un mecanismo para las subconsultas anidadas. Una
subconsulta es una expresión select-from.where, que se anida dentro
de otra consulta. Un uso común de subconsultas es llevar a cabo
comprobaciones sobre pertenencias a conjuntos, comparación de
conjuntos y cardinalidad de conjuntos.
RELACIONES DERIVADAS:
SQL permite el uso de una expresión de subsonsultas en la cláusula
from. Si se usa una expresión de este tipo, se debe dar un nombre a la
relación resultado y se pueden renombrar atributos.
VISTAS:
Una vista en SQL se define utilizando la orden create view. Para definir
una vista se le debe dar un nombre y se debe construir la consulta que
genere dicha vista.
INTEGRACIÓN CONCEPTUAL PARA LA DISCUSIÓN: (El Titular Académico,
tendrá conocimientos para crear, manipular bases de datos para diferentes
aplicaciones, a través de consulta SQL; creación de tablas, conexión de datos
en una red, llamado cliente servidor, organización lógica y física de datos.
---------------------------------------------------------------------------------------------------------REPORTES CRÍTICOS O SUGERENTES A: Ing. Manuel de Jesús Valdez
Acosta, Secretario General. Instituto de Antropología. Universidad, (Correo
electrónico: [email protected] ); MC Ernesto Guerra García,
Coordinador General Educativo. (Correo electrónico: [email protected])
Benito Juárez No. 39, Mochicahui, El Fuerte, Sinaloa, México. C.P. 81890, Tel.
01 (689) 2 00 42.
UNIVERSIDAD AUTÓNOMA INDÍGENA DE MÉXICO
Mochicahui, El Fuerte, Sinaloa
Juárez 39, C.P. 81890. Tel y fax: (698)8 92 00 42 y 8 92 00 23
Correo electrónico:_ [email protected]
Página Web: http//www.uaim.edu.mx