2.2 Beses de Datos Relacionales
Características de una Relación
Cada table recibe un nombre; la información en la BD son datos explícitos; No pueden existir dos filas con los mismos datos; el orden de las filas de las tablas es irrelevante; todas las entradas de cualquier columna son de un solo tipo; cada columna recibe un nombre que refleje la carácterística del mundo real; el orden de las columnas no es importante; cada ntrada de la tabla es atómica ya que no admite valores múltiples; las intersecciones fila columna tienen un solo valor también
Clave Primaria
Clave elegida por el usuario por razones ajenas al modelo relacional para identificar las filas. Es posible nombrar las filas con una clave numérica aleatoria sin significado por si misma, a estas claves se las denomina subrogadas
Clasificación de Modelo de Datos
Conceptuales: describen estructuras y restricciones, se usan durante el análisis, representan elementos que intervienen y relacionan; Lógicos: orientados a operaciones, se implementan en manejador de BD; Físicos: estructura de datos de bajo nivel, implementadas en el propio manejador
Clave Primaria Compuesta
Conjunto de atributos no vacío esta compuesto por más de una columna (siempre una única clave, pero si opta por una clave compuesta esta deberá ser única respecto de las demás filas. por ejemplo para el nombre y apellido por conjunto)
Clave Primaria Simple
Conjunto de atributos no vacío está compuesto por una sola columna
Rol
Conjunto de privilegios de sistema y objetos bajo un mismo nombre. Se asignan a usuarios o a otros roles. Se recive cómo: asignación explícita del usuario, asignando a roles (grupo de privilegios)
Clave Candidata
Conjunto no vacío de atributos que identifican cada fila de una tabla. Como puede haber mñas de una el usuario debe seleccionar una clave primaria
DDL (Lenguaje de Descripción de Datos)
Data Definition Language. Lenguaje proporcionado por el sistema de gestión de la BD que permite a los usuarios definir, modificar estructura de los objetos
Valor NULL
Definido por Edgar Frank Codd. Indica un valor asignado a un atributo que no contiene ninguno de los valores de su dominio. En los DBMS representa información "desconocida" o "no aplicable". No es posible realizar operaciones aritméticas pero sí logicas de resultado verdadero o falso escepto cuando interviene un valor nulo que generan resultados indeterminados que generanun sistema de Lógica ternaria(verdadero, falso y desconocido)
APRENDE MÁS
El número de filas de la tabla se denomina Cardinalidad de la tabla, el número de columnas es el Grado de la tabla y, el conjunto de valores válidos que puede tener cada atributo Dominio.
Tipos de Datos
En teoría de BD no existen normas respecto a los tipos de datos a contener. Cualquier valor disponible para hardware y sistema operativo o los nuevo introducidos por usuario pueden ser válidos
Claves Alternativas. Pros
Evitan la lectura secuencial; Ayudan a no sobrecargar la CPU, disco ni la concurrencia; Las consultas tipo SELECT (más rápidas si tenemos clave alternativa en cláusula WHERE); útiles en campos sin datos duplicados
Sentencias con respectivas en DCL
GRANT: asignar privilegios y roles; REVOKE: elimina privilegios GRANT; CREATE ROL: colección de privilegios y derechos aplicados a un gran numero de usuarios simultaneamente; CREATE USER: crea usuario con permisos determinados; Nombre_de_privilegio: tipo de privilegio (ALL, EXECUTE, SELECT); Objeto: elemento al que se le aplicará el derecho (tablas, vistas, procedimientos); Usuario: usuario al que se le concede el permiso; PUBLIC: permiso para todos los usuarios; Rol: grupo de usuarios al que aplicar simultanemente permisos; WITH GRANT OPINION: designa administradores
Sistemas Gestores de BD
Incorporan sus propias especificasiones de tipos. Para cada columna es necesario especificar el ripo que contiene para un almacenamiento bajo el mínimo espacio
Relación entre Tablas. Uno-a-muchos
La mñas común. Una fila en tabla padre tiene muchas filas en tabla hija, pero una fila en tabla hija tiene una en tabla padre
Modelo de Datos
Lenguaje orientado a descibir bases de datos que permite: Estructuras de Datos: tipo y relación; Restricciones de Integridad: condiciones para representar la realidad; Operaciones de Manipulación: agregado, borrado, modificación y recuperación;
Sentencias
Modificar el esquema de la BD, añadir, cambiar, eliminar definiciones de tablas y objetos. Pueden mezclarse con sentencias SQUL por lo que DDL no es realmente un lenguaje independiente de SQL
APRENDE MÁS
NULL también se usa en el lenguaje de consulta estructurada SQL para indicar que no existe un valor para un atributo de una tabla de la BD
Claves Alternativas. Contra
No adecuadas en tablas que utilicen operaciones de escritura; no se aprecia mejora en tablas pequeñas; no se aconsejan en consultas que devuelven gran cantidad de datos; ocupan espacio
Tipos de datos que puede contener una columna o atributo
Numéricos: entero o fraccionarias (como flotante); Fecha: fechas y horas (mes entre 0 y 12, día entre 0 y 31); Cadena: alfanuméricos o binarios como BLOB
APRENDE MÁS. Stored Procedure
O Procedimiento Almacenado. Es un programa guardado en una BD. Se ejecuta directamente y sólo necesita enviar resultados al usuario eliminando, comunicar grandes cantidades de datos salientes-entrantes.
APRENDE MÁS. Triggers
O disparadores. Son procedimientos almacenados y utilizados para la validación de datos
Privilegio
Permiso dado al usuario de la BD para realizar procesos o acceder a determinados objetos: Privilegio de sistema: acción particular en el sistema o sobre el un objeto, la mayoría son administradores o programadores; Privilegios de Objetos: acciones sobre objeto, usuarios finales
Terminilogía del Modelo Relacional
Relación (relation): datos organizados en tablas, se compone de tuplas y atributos, cada intersección tupla-atributo contiene un valor; Tupla (tuple): cada una de las ocurrencias de la relación; Atributo (attribute): columnas de la relación, el conjunto de ralciones compone una tupla
APRENDE MÁS
Relación y tupla han caido en desuso. a la relación se la denomina tabla, a la tupla fila. El atributo se usa indistintamente como columna en el modelo relacional.
Índices
Se guarda el elemento a indexar y su posición. Pueden crearse con una o más columnas que permiten las busquedas rápidas al azar o un acceso ordenado a registros evitando la secuencialidad. No se consideran parte de la base de datos
Uso de las vistas
Seguridad adicional con restricciones; Como tabla única, ocultando complejidad de datos; Cambio de perspectiva, modificando sin cambiar la base; Obligar al gestor de base a hacer cambios con más comodidad que con sentencias SQL
Claves Alternativas
Son las claves candidatas que no han sido seleccionadas como primarias pero pueden identifiacar de forma única una fila.
Vista
Tabla lógica que permite acceder a datos de otras tablas, denominadas base. No contiene datos en sí misma, se entiende como virtual y una vez definida puede usarse en cualquier lugar como una única tabla. Sin restricciones se pueden modificar, insertar, borrar y seleccionar datos
Relación entre Tablas. Muchos-a-muchos
Una fila en tabla padre tiene muchas filas en tabla hija(y viveversa). Puede crearse definiendo una tercera tabla, llamada de unión, cuya clave primaria consiste en foráneas de ambas tablas
SQL
a diferencia de muchos DCL permite asignar a los usuarios permisos para realizar tareas en la BD. DCL no es relamente independiente de DCL. La existencia de estas sentenias dependerá de la implementaciñon del estándar SQL que el gestor de BD utilice
Relación entre Tablas. Uno-a-uno
una fila en tabla padre no tiene más de una fila en tabla hija(y viceversa)
APRENDE MÁS
Índices recomendados en campos que poseen amplio abanico de valores, para un binario también son útiles pero solo despeja el 50% frente al 99% si hablamos de atributos "id"
DCL Lenguaje de Control de Datos
(Data Control Language). Lenguaje proporcionado por el sistema de gestión de BD que permite al administrador controlar los accesos
Modelo Relacional
1970 por Edgar Frank Codd de IBM. Estructura de datos simples y uniformes (de sus relaciones) en la que el lugar y el modelo de almacenamiento pierde peso. Pro: almacenamiento conceptualmente facil de entender, se hacen tablas que permiten interconexiones versátiles entre diversas tablas. En su diseño las tablas pasan por la normalización de una base de datos
Claves Ajenas o foráneas
Atributos de una tabla hija o referida que referencia a la clave primaria en otra padre o referida y determina la relación entre ambas. No necesitan claves únicas en la tabla referida pero sí en la que está referenciada
Juego de Caracteres (Charset)
CConjunto de caracteres reconocidos por hardware o software. Cada código es una expresión numérica de cada carácter (ASCII basado en alfabeto latino, código de siete bit que van de 0 a 127 en base decimal). También existen de 8bit(256 caracteres) y 16bit(65.535 caracteres). Casi todos utilizan ASCII
Sentencias en SQL
CREATE: crea una tabla para definir los atributos que tendrá y el formato y características de la clave primaria y foránea; ALTER: Modifica la estructura de una tabla creada; DROP: elimina una tabla creada; TRUNCATE: vacía todo el contenido de una tabla