Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Desde el punto de vista informático, una base de datos es un conjunto de datos almacenados en discos
que permiten el acceso directo a ellos y el conjunto de programas que manipulan ese conjunto de
datos.
Una BD es una colección de archivos que cumplen con las siguientes propiedades:
Definiciones:
ENTIDAD: Es cualquier objeto distinguible que puede ser representado en una BD. Las entidades están
vinculadas por asociaciones. Una entidad posee características que la definen y son inherentes a ella.
ATRIBUTO: Son las características, variables, particularidades o aspectos de una entidad y son
relevantes.
DOMINIO DE UN ATRIBUTO: Es el conjunto de posibles valores que puedan tener las instancias, para
cada uno de los atributos.
VALOR DEL ATRIBUTO: Es el elemento perteneciente al dominio del atributo que se asigna a la
instancia de la entidad.
INSTANCIA, INDIVIDUO O TUPLA: También registro o fila. Cada una de las filas de una relación.
Contiene la información relativa a una única entidad.
DATO: Es el valor particular que tiene una determinada instancia, para un determinado atributo. Surge
de la intersección de una fila (instancia) y una columna (atributo). Es el contenido de la celda.
DBMS
Debe proporcionar a los usuarios finales una visión abstracta de los datos (esconde ciertos detalles de
cómo se almacenan y mantienen los datos).
Componentes de un DBMS:
Objetivos de un DBMS:
Persona o grupo de personas encargadas del funcionamiento general del Sistema de Base de Datos,
facilitando el desarrollo y el uso de la misma dentro de una Institución u Organismo.
Responsabilidades:
Cuando hablamos de Responsabilidad, pero especialmente se pueden citar las siguientes:
Administrar la estructura de la Base de datos
A demás de administrar la actividad de datos y la estructura de la BD, el DBA debe administrar el DBMS
mismo. Deberá compilar y analizar estadísticas relativas al rendimiento del sistema e identificar áreas
potenciales del problema.
Dado que la BD esta sirviendo a muchos grupos de usuarios, el DBA requiere investigar todas las quejas
sobre el tiempo de respuesta del sistema, la precisión de los datos y la facilidad de uso. Si se requieren
cambios el DBA deberá planearlos y ponerlos en práctica.
El DBA deberá vigilar periódica y continuamente las actividades de los usuarios en la BD. Los productos
DBMS incluyen tecnologías que reúnen y publican estadísticas. Estos informes pudieran indicar cuales
fueron los usuarios activos, que archivos y que elementos de datos han sido utilizados, e incluso el
método de acceso que se ha aplicado. Pueden capturarse y reportarse las tasas de error y los tipos de
errores. El DBA analizará estos datos para determinar si se necesita una modificación en el diseño de la
BD para manejar su rendimiento o para facilitar las tareas de los usuarios; de ser así, el DBA la llevará a
cabo.
El DBA deberá analizar las estadísticas de tiempo de ejecución sobre la actividad de la BD y su
rendimiento. Cuando se identifique un problema de rendimiento, ya sea mediante una queja o un
informe, el DBA deberá determinar si resulta apropiada una modificación a la estructura de la BD o al
sistema.
Casos como la adición de nuevas claves o su eliminación, nuevas relaciones entre los datos y otras
situaciones típicas deberán ser analizadas para determinar el tipo de modificación procedente.
Es el modelo lógico basado en objetos y por lo tanto que se enfoca a los niveles conceptuales y de
visión. Permite representar con claridad las limitantes de los datos.
El modelo Entidad-Relación es una herramienta para representar el mundo real por medio de
simbologías y expresiones determinadas.
Es un esquema gráfico que tiene por objeto, por una parte, ayudar al programador durante la
codificación y por otra, al usuario a comprender el problema y el funcionamiento del programa.
Limitantes del mapeo:
- Cardinalidad del Mapeo(cant de entidades que podrán asociarse mediante una relación: UaU,UaM,MaM)
- Dependencia de Existencia (cuando una entidad está condicionada a la existencia de otra)
LLAVES o CLAVES: Medio que nos permite identificar en forma unívoca (única e inequívoca) a una
entidad dentro de un conjunto de entidades. Existen diversas categorías:
a) LLAVE PRIMARIA: Dentro de una relación específica hay un atributo cuyos
valores son únicos dentro de esta, y por lo tanto se puede usar para identificar las
tuplas/filas de la relación. Es aquella llave que el diseñador de la base de datos
selecciona entra las llaves candidatas encontradas.
b) LLAVE CANDIDATA: es cada una de las claves mínimas existente en un conjunto de entidades.
c) SUPER-LLAVE: Es un conjunto de atributos que forman la clave, pero no todos son
necesarios para la identificación de las instancias. Puede haber uno o varios atributos
que sirven para la identificación del registro y el resto de los atributos normalmente
son claves primarias en otras entidades.
d) LLAVE FORANEA: Es la llave primaria de otra entidad, a través de la cual se relacionan las dos
entidades.
Existen reglas bien definidas para la conversión de los elementos de un diagrama E-R a
tablas:
1) ENTIDADES FUERTES.- Se crea una tabla con una columna para cada atributo del
conjunto de entidades.
2) ENTIDADES DÉBILES.- Se crea una tabla que contiene una columna para los
atributos que forman la llave primaria de la entidad fuerte a la que se encuentra
subordinada.
3) RELACIÓN.- se crea una tabla que contiene una columna para cada atributo
descriptivo de la relación y para cada atributo que conforma la llave primaria de las
entidades que están relacionadas.
QUE ES NORMALIZACION?:
Es una técnica que se ha desarrollado para obtener estructuras de datos eficientes y consiste en un
proceso de clasificar relaciones, objetos, formas de relación y demás elementos en Grupos, en base
a las características que cada uno posee.
El problema principal de una Base de Datos, consiste esencialmente en encontrar un buen diseño para
la misma, lo que me lleva a que debo determinar la importancia de los atributos y a establecer
adecuadamente las relaciones.
PRIMERA FORMA NORMAL:
Una relación R esta en primera forma normal(1FN), si y solo si todos los dominios de la misma solo
contienen valores atómicos, de otra forma que la intersección de una fila y una columna no contenga
un conjunto de valores.
SEGUNDA FORMA NORMAL:
Una relación R esta en la segunda forma normal(2NF), si y solo si esta en la(1NF) y todos los atributos
que no son CLAVE, dependen de esta totalmente y no de parte de dicha CLAVE. La (2FN) se aplica a las
relaciones que tienen
claves primarias compuestas por dos o más atributos. Si una relación está en (1FN) y su clave primaria
es simple (tiene un solo atributo), entonces también está en (2FN). Las relaciones que no están en
(2FN) pueden sufrir anomalías cuando se realizan actualizaciones.
TERCERA FORMA NORMAL:
Una relación R esta en la tercera forma normal(3NF), si y solo si esta en la segunda(2NF) y los atributos
no clave es dependiente no transitivamente de la clave primaria. Esto es como en matemáticas si A
depende de B y B depende de C, entonces A depende de C, esto es lo que elimina la tercera forma
normal y la convierte en dos relaciones, una donde A depende de B y la otra donde B depende de C.
El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones de agregado. Estos
elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos.
Comandos: Existen tres tipos de comandos SQL.
Los “DDL” (Data Definition Language), lenguaje de definición de datos, que permiten crear y
definir nuevas bases de datos, campos e índices.
Los “DML” (Data Manipulation Language) lenguaje de manipulación de datos, que permiten
generar consultas para ordenar, filtrar y extraer datos de la base de datos.
Los “DCL” (Data Control Language), lenguaje de control de datos, contiene elementos útiles
para trabajar en un entorno multiusuario, en el que es importante la protección de los datos,
la seguridad de las tablas y el establecimiento de restricciones en el acceso, así como
elementos para coordinar la compartición de datos por parte de usuarios concurrentes,
asegurando que no interfieren unos con otros.
Comandos DDL
Comando Descripción del Comando
CREATE Utilizado para crear nuevas tablas, campos e índices
DROP Empleado para eliminar tablas e índices
Utilizado para modificar las tablas agregando campos o cambiando la
ALTER
definición de los campos.
Comandos DML
Comando Descripción del Comando
Utilizado para consultar registros de la base de datos que satisfagan
SELECT
un criterio determinado.-
Utilizado para cargar lotes de datos en la base de datos en una única
INSERT
operación.-
Utilizado para modificar los valores de los campos y registros
UPDATE
Especificados.-
DELETE Utilizado para eliminar registros de una tabla de una base de datos.-
Cláusulas: Las cláusulas son condiciones de modificación utilizadas para definir los datos que
desea seleccionar o manipular.
Cláusula Descripción de la Cláusula
Utilizada para especificar la tabla de la cual se van a seleccionar los
FROM
Registros.-
Utilizada para especificar las condiciones que deben reunir los
WHERE
registros que se van a seleccionar.-
Operadores Lógicos
Operador Uso
Es el "y" lógico. Evalúa dos condiciones y devuelve un valor de
AND
verdad sólo si ambas son ciertas.-
Es el "o" lógico. Evalúa dos condiciones y devuelve un valor de
OR
verdad si alguna de las dos es cierta.-
NOT Negación lógica. Devuelve el valor contrario de la expresión.-
Operadores de Comparación
Operador Uso
< Menor que.-
> Mayor que.-
<> Distinto de.-
<= Menor ó Igual que
>= Mayor ó Igual que.-
= Igual que.-
BETWEEN Utilizado para especificar un intervalo de valores.-
LIKE Utilizado en la comparación de un modelo.-
IN Utilizado para especificar registros de una base de datos
Funciones de Agregado: Las funciones de agregado se usan dentro de una cláusula SELECT engrupos de
registros para devolver un único valor que se aplica a un grupo de registros.
Función Descripción
Utilizada para calcular el promedio de los valores de un campo
AVG
Determinado.-
COUNT Utilizada para devolver el número de registros de la selección.-
Utilizada para devolver la suma de todos los valores de un campo
SUM
Determinado.-
MAX Utilizada para devolver el valor más alto de un campo especificado.-
MIN Utilizada para devolver el valor más bajo de un campo especificado.-
Consultas de Unión Internas: Las vinculaciones entre tablas se realiza mediante la cláusula INNER que
combina registros de dos tablas siempre que haya concordancia de valores en un campo común. Su
sintaxis es: SELECT campos FROM tb1 INNER JOIN tb2 ON tb1.campo1 comp tb2.campo2
tb1 y tb2: Son los nombres de las tablas desde las que se combinan los registros.
campo1 y campo2: Son los nombres de los campos que se combinan. Si no son numéricos, los campos
deben ser del mismo tipo de datos y contener el mismo tipo de datos, pero no tienen que tener el
mismo nombre.
Comp: Es cualquier operador de comparación relacional : =, <, >, <=, >=, o <>.
Se puede utilizar una operación INNER JOIN en cualquier cláusula FROM. Esto crea una combinación por
equivalencia, conocida también como unión interna. Las combinaciones Equi son las más comunes; éstas
combinan los registros de dos tablas siempre que haya concordancia de valores en un campo común a ambas
tablas. Se puede utilizar INNER JOIN con las tablas Departamentos y Empleados para seleccionar todos los
empleados de cada departamento. Por el contrario, para seleccionar todos los departamentos (incluso si alguno
de ellos no tiene ningún empleado asignado) se emplea LEFT JOIN o todos los empleados (incluso si alguno no
está asignado a ningún departamento), en este caso RIGHT JOIN.
EJEMPLOS DE CONSULTAS:
1. Modificar el campo dirección por domicilio en la tabla cliente.
ALTER TABLE ‘cliente’, CHANGE domicilio dirección VARCHAR (30)
2. Eliminar el campo teléfono de la tabla cliente.
ALTER TABLE cliente DROP column tel
3. Seleccionar todos los movimientos con el importe de las operaciones mayor a $1000.
SELEC * FROM detalle WHERE import > 1000
4. Seleccionar todos los clientes de Curuzú Cuatiá.
SELEC * FROM cliente WHERE ID_loc = curuzu cuatia
O bien el ID
5. Eliminar todos los detalles.
DELET FROM detalle
10. Mostrar las operaciones cuyo importe estén entre $500 y $1000.
SELECT * FROM `detalle` WHERE importe >500 AND importe <1000
SELECT * FROM `detalle` WHERE importe BETWEEN 500 AND 1000