Vous êtes sur la page 1sur 38

Fundamentación en Bases de

Datos.
Temáticas a conocer:
Sistemas Gestores de Bases de Datos

Lenguajes de Gestión y Consulta en BD

Bases de Datos Relacionales


SQL

Ejemplos de Sentencias SQL


Ejemplo de uso
Enlaces de Interés
Introducción.
Dado que la información es tan importante en
la mayoría de las organizaciones, los científicos
informáticos han desarrollado una gran cuerpo
de conceptos y técnicas para la gestión de los
datos. Estos conceptos y técnicas constituyen el
objetivo central de esta presentación.

En esta presentación se da una breve


introducción a los principios generales de los
sistemas de Bases de Datos, su funcionamiento
y tipos.
Bases de Datos

Bases de Datos (DB) y Sistemas Gestores de


Bases de Datos (SGBD).
Sistemas Gestores de Bases de Datos (SGBD).
Un sistema gestor de bases de datos (SGBD) consiste en una colección de datos
interrelacionados y un conjunto de programas para acceder a dichos datos. La
colección de datos, normalmente denominada base de datos (BD), contiene
información relevante para una empresa. El objetivo principal de un SGBD es
proporcionar una forma de almacenar y recuperar la información de una base de datos
de manera que sea tanto práctica como eficiente.

Los sistemas de bases de datos se diseñan para gestionar grandes cantidades de


información. La gestión de los datos implica tanto la definición de estructuras para
almacenar la información como la provisión de mecanismos para la manipulación de la
información. Además, los sistemas de bases de datos deben garantizar la fiabilidad de
la información almacenada, a pesar de las caídas del sistema o de los intentos de
acceso no autorizados. Si los datos van a ser compartidos entre diferentes usuarios, el
sistema debe evitar posibles resultados anómalos.
Una base de datos de puede definir como:
✓ Una colección interrelacionada de datos, almacenados en un conjunto sin
redundancias innecesarias cuya finalidad es la de servir a una o mas
aplicaciones de la manera mas eficiente

✓ Conjunto de datos organizados con características afines entre sí, que


identifican a un ente en especial, cualquier colección de información
interrelacionada.

✓ Conjunto autodescriptivo de registros integrados; autodescriptivo ya que


puede contener información del usuario, descripción de la Base de Datos,
que nos permiten representar las relaciones entre los datos. En donde la
información que se tiene almacenada esta disponible para todos los
usuarios del sistema, en los que los datos redundantes pueden eliminarse
o al menos minimizarse.
Los componentes de una base de datos son:
✓ Los datos: El componente fundamental de una base de datos son los datos que
están interrelacionados entre si, formando un conjunto con un mínimo de
redundancias.

✓ El software: los datos, para que puedan ser utilizados por diferentes usuarios y
diferentes aplicaciones, deben estar estructurados y almacenados de forma
independiente de las aplicaciones. Para ello se utiliza un software o conjunto de
programas que actúa de interfaz entre los datos y las aplicaciones. A este software
se le denomina Sistema de Gestión de Base de Datos (SGBD). El SGBD crea y
organiza la base de datos, y además atiende todas las solicitudes de acceso hechas
a la base de datos tanto por los usuarios como por las aplicaciones.

✓ Recurso Humano: Informático: son los profesionales que definen y preparan la


base de dato. Usuarios: Son los que tienen acceso a la base de datos para ingresar
o manipular la información contenida en esta, dependiendo del nivel de usuario o
control de seguridad establecido.
Arquitectura del Sistema Gestor de Bases de Datos.
La mayoría de usuarios de un sistema de bases de datos no están
situados actualmente junto al sistema de bases de datos, sino que se
conectan a él a través de una red.

Se puede diferenciar entonces entre las máquinas cliente, en donde


trabajan los usuarios remotos de la base de datos, y las máquinas
servidor, en las que se ejecuta el sistema de bases de datos.

Las aplicaciones de bases de datos se dividen usualmente en dos o


tres partes: En una arquitectura de dos y tres capas
respectivamente.
En una arquitectura de dos capas, la
aplicación se divide en un componente que
reside en la máquina cliente, que llama a la
funcionalidad del sistema de bases de datos
en la máquina servidor mediante
instrucciones del lenguaje de consultas.

Los estándares de interfaces de programas


de aplicación como ODBC y JDBC se usan
para la interacción entre el cliente y el
servidor.
En una arquitectura de tres capas, la máquina cliente
actúa simplemente como front-end y no contiene
ninguna llamada directa a la base de datos. En su lugar,
el cliente se comunica con un servidor de aplicaciones,
usualmente mediante una interfaz de formularios.

El servidor de aplicaciones, a su vez, se comunica con el


sistema de bases de datos para acceder a los datos.

La lógica de negocio de la aplicación, que establece las


acciones a realizar bajo determinadas condiciones, se
incorpora en el servidor de aplicaciones, en lugar de ser
distribuida a múltiples clientes. Las aplicaciones de tres
capas son más apropiadas para grandes aplicaciones, y
para las aplicaciones que se ejecutan en World Wide
Web.
Lenguajes de Bases de Datos.

Los sistemas de bases de datos proporcionan un lenguaje de


definición de datos para especificar el esquema de la base de datos y
un lenguaje de manipulación de datos para expresar las consultas y
las modificaciones de la base de datos.

En la práctica, los lenguajes de definición y manipulación de datos no


son dos lenguajes diferentes; en cambio, simplemente forman parte
de un único lenguaje de bases de datos, como puede ser el muy
usado SQL.
DDL - Lenguaje de Definición de Datos: lenguaje proporcionado por el
sistema de gestión de base de datos que permite a los usuarios de la
misma llevar a cabo las tareas de definición de las estructuras que
almacenarán los datos así como de los procedimientos o funciones que
permitan consultarlos.
DML - Lenguaje de Manipulación de Datos: lenguaje proporcionado
por los sistemas gestores de bases de datos que permite a los
usuarios de la misma llevar a cabo las tareas de consultas o
modificación de los datos contenidos en las bases de datos del
sistema Gestor de Bases de Datos.
Bases de Datos Relacionales.
Las bases de datos relacionales se basan en el modelo relacional y
usan un conjunto de tablas para representar tanto los datos como las
relaciones entre ellos. También incluyen un LMD y un LDD. La mayor
parte de los sistemas de bases de datos relacionales comerciales
emplean el lenguaje SQL.
Existen un sinnúmero de sistemas de gestión de bases de datos
relacionales y cada una de ellas posee una forma diferente de
manejar su data, algunos ejemplos de RDBMS son: Oracle, MySQL,
SQL Server, entre otras.

Sin embargo, con el paso


de los años, estos se
fueron unificando y
universalizando para dar
paso a mejores técnicas y
mejores formas de
manejo. Así nació SQL.
Tablas, Campos y Registros.
Tabla se refiere al tipo de modelado de datos, donde se guardan y
almacenan los datos recogidos por un programa. Su estructura
general se asemeja a la vista general de un programa de hoja de
cálculo.

La estructura de una tabla se define por la cantidad de campos en


que fraccionemos la información que guarda. Cada campo tendrá
definido un tipo de dato que limitara lo que podrá almacenarse en él
(datos numéricos, alfanuméricos, fecha, etc.) y un ancho de columna.

Cada ítem de una tabla se almacenara en un registro (una fila


horizontal, un renglón).
Una base de datos contiene una o más tablas, una tabla se
estructura en campos (columnas) y cada fila o renglón se llama
registro.
Relaciones.
Las relaciones de bases de datos son asociaciones entre tablas que
se crean utilizando sentencias de unión para recuperar datos.
Permiten establecer las concordancias, asignaciones y relación entre
las tablas, así mismo permite garantizar la integridad referencial de
los datos con el fin de mantener la lógica y consistencia de los
mismos y evitar la duplicidad de registros.
Relaciones: Llave primaria y llave foránea.
La Llave Primaria es un campo, o grupo de campos que identifica en
forma única un registro. Ningún otro registro puede tener la misma
Llave Primaria. La Llave Primaria se utiliza para distinguir un registro
con el fin de que se pueda tener acceso a él, organizarlo y
manipularlo.

La clave foránea identifica una columna o grupo de columnas en una


tabla (tabla hija) que se refiere a una columna o grupo de columnas
en otra tabla (tabla maestra o referenciada). Las columnas en la tabla
hija deben ser la clave primaria en la tabla referenciada.
Tipos de Relaciones.
1:1 - Uno a Uno:

En este tipo de relaciones no son muy comunes en el diseño de bases


de datos. Un ejemplo uno a uno sería Presidente – País, que si nos
damos cuenta un solo presidente puede hacer parte o mandar en un
solo país y a su vez un país solo puede contar con un presidente.

Nota: En este tipo de relación se enlazan los campos establecidos


como Primary Key (Llave Primaria) de ambas tablas.
En este tipo de relación, un registro de la tabla A sólo puede estar
enlazado con un único registro de la tabla B y viceversa.
Este tipo de relación es la
que menos se utiliza.
Tipos de Relaciones.
1:N - Uno a Muchos:

De los tres tipos de relaciones podemos resaltar esta como la más


común y utilizada en el modelo relacional. Se da cuando un campo
establecido como llave primaria (Primary Key) hace referencia a
varios registros en otra tabla de un campo establecido como llave
foránea (Foreign Key).

Nota: Si tenemos una tabla A y una tabla B siendo la tabla B la que


cuenta con varios registros que apuntan a la tabla A con una llave
foránea, esta tabla se le denomina “hija” debido a que ningún
registro de la tabla B puede existir sin que haga referencia a un
registro existente en la tabla A.
Cada registro de la tabla A puede estar enlazado con varios registros de la tabla
B, pero cada registro de la tabla B sólo puede estar enlazado con un registro de
la tabla A.
Tipos de Relaciones.
N:N - Muchos a Muchos:

Este tipo de relación no es muy deseada por los diseñadores de bases


de datos debido a que puede ocasionar muchos inconvenientes en el
acceso a datos (basándonos en que ninguno de los campos
relacionados son establecidos como llave primaria), normalmente la
práctica usada al momento de encontrar relaciones muchos a
muchos o varios a varios es crear tablas intermedias que nos
permitan dividir una relación muchos a muchos por dos relaciones
uno a muchos.
Cada registro de la tabla A puede estar enlazado con varios registros
de la tabla B y viceversa.

Lamentablemente, no es
posible implementar
directamente este tipo de
relación en una base de
datos. En cambio, debes
dividirlo en dos relaciones
uno a muchos.
Ciclo del diseño de una Base de Datos (Relacional).
SQL.

SQL (Structured Query Language) es un lenguaje estándar e


interactivo de acceso a bases de datos relacionales que permite
especificar diversos tipos de operaciones en ellas, gracias a la
utilización del álgebra y de cálculos relacionales, el SQL brinda la
posibilidad de realizar consultas con el objetivo de recuperar
información de las bases de datos de manera sencilla.

Las consultas toman la forma de un lenguaje de comandos que


permite seleccionar, insertar, actualizar, averiguar la ubicación de los
datos, y más.
SQL.

Una de sus características es el manejo del álgebra y el cálculo relacional que


permiten efectuar consultas con el fin de recuperar de forma sencilla
información de interés de bases de datos, así como hacer cambios en ella.

El SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y


potencia de los sistemas relacionales y permite así gran variedad de
operaciones.

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.
Ejemplos de comandos DDL en SQL.
Ejemplos de comandos DML en SQL.
Sentencias y Operadores.
Funciones de agregado.
Una de las formas más extendidas de uso en la actualidad...
Una de las formas más extendidas de uso en la actualidad...
Enlaces de Interés.
✓ https://www.silicon.es/bases-datos-no-relacionales-nosql-cuando-usarlas-2324948

✓ https://searchdatacenter.techtarget.com/es/cuestionario/SQL-vs-NoSQL-Que-sabe-
sobre-los-disenos-de-bases-de-datos

✓ https://www.genbeta.com/desarrollo/3-bases-de-datos-nosql-mas-populares-para-
iniciarse-en-la-nube

✓ https://www.revistabyte.es/comparativa-byte-ti/comparativa-bases-de-datos-
2019/

✓ http://mundodb.es/introduccion-a-las-base-de-datos-oracle
Bibliografía.
✓ http://labitacorabd.blogspot.com/2015/05/dml-lenguaje-de-manipulacion-de-
datos.html
✓ https://primarykeydotco.wordpress.com/2014/08/17/lenguaje-de-manipulacion-
de-datos-ii/
✓ https://byspel.com/relaciones-bases-datos-usos/2/
✓ https://www.ymant.com/blog/tipos-base-datos
✓ http://bibliotecadigital.univalle.edu.co/bitstream/10893/10313/3/Fundamentos%2
0de%20Bases%20de%20Datos.pdf
✓ http://mateo.pbworks.com/w/file/fetch/122276985/Fundamentos_de_Bases_de_
Datos_5a_Ed.-_Si.pdf
✓ https://www.marcoteorico.com/curso/31/fundamentos-de-bases-de-datos
✓ https://devcode.la/blog/que-es-sql/
✓ https://geotalleres.readthedocs.io/es/latest/conceptos-sql/conceptos_sql.html
✓ http://www.ite.educacion.es/formacion/materiales/93/cd/indice.htm
Bibliografía.
✓ https://www.ibm.com/support/knowledgecenter/es/SSLKT6_7.6.0/com.ibm.mbs.d
oc/configur/c_db_relationships.html
✓ https://acadevor.com/llave-primaria-llave-foranea/
✓ https://es.wikipedia.org/wiki/Clave_foránea
✓ https://es.wikipedia.org/wiki/Tabla_(base_de_datos)
✓ https://disenowebakus.net/creando-bases-de-datos.php
✓ https://www.lucidchart.com/pages/es/tutorial-de-estructura-y-diseno-de-bases-
de-datos
✓ https://thales.cica.es/rd/Recursos/rd99/ed99-0259-04/access3.html
Realizado por:
Rodrigo Ebrat Carr
rebratc@sena.edu.co

Vous aimerez peut-être aussi