Sei sulla pagina 1di 52

BASE DE DATOS

BANCO DE DATOS

Es un conjunto de datos organizados pertenecientes


a un mismo contexto, recolectados y almacenados
sistemticamente para su posterior uso.

Existen programas denominados sistemas gestores


de bases de datos, abreviado DBMS, que permiten
almacenar y posteriormente acceder a los datos de
forma rpida y estructurada.
Las aplicaciones ms usuales son para la gestin
de empresas e instituciones pblicas; Tambin son
ampliamente utilizadas en entornos cientficos con
el objeto de almacenar la informacin experimental.

Ventajas de las bases de datos

Control sobre la redundancia de datos


Consistencia de datos
Comparticin de datos
Mantenimiento de estndares
Mejora en la integridad de datos
Mejora en la seguridad
Mejora en la accesibilidad a los datos
Mejora en la productividad
Mejora en el mantenimiento
Aumento de la concurrencia
Mejora en los servicios de copias de seguridad

Desventajas de las bases de datos

Complejidad
Coste del equipamiento adicional
Vulnerable a los fallos

Tipos de base de datos: de acuerdo al contexto que se


est manejando, la utilidad de las mismas o las necesidades que
satisfagan

Segn el contenido
Bases de datos bibliogrficas: Slo contienen un subrogante
(representante) de la fuente primaria, que permite localizarla. Un
registro tpico de una base de datos bibliogrfica contiene informacin
sobre el autor, fecha de publicacin, editorial, ttulo, edicin, de una
determinada publicacin, etc.
Bases de datos de texto completo: Almacenan las fuentes primarias,
como por ejemplo, todo el contenido de todas las ediciones de una
coleccin de revistas cientficas.
Directorios: Un ejemplo son las guas telefnicas en formato
electrnico.
Bases de datos o "bibliotecas" de informacin qumica o biolgica
Son bases de datos que almacenan diferentes tipos de informacin
proveniente de la qumica, las ciencias de la vida o mdicas.

Modelos de bases de datos: Se pueden clasificar de


acuerdo a su modelo de administracin de datos.

Bases de datos transaccionales

Bases de datos multidimensionales

Bases de datos orientadas a objetos

En bases de datos orientadas a objetos, los usuarios pueden


definir operaciones sobre los datos como parte de la definicin de
la base de datos. Una operacin (llamada funcin) se especifica
en dos partes. La interfaz (o signatura) de una operacin incluye
el nombre de la operacin y los tipos de datos de sus argumentos
(o parmetros). La implementacin (o mtodo) de la operacin se
especifica separadamente y puede modificarse sin afectar la
interfaz.
Esto podra denominarse independencia entre programas y
operaciones.

Bases de datos documentales

Permiten la indexacin a texto completo, y en lneas generales


realizar bsquedas ms potentes.
Tesaurus es un sistema de ndices optimizado para este tipo
de bases de datos.

Bases de datos deductivas

Es un sistema de base de datos pero con la diferencia de que permite hacer


deducciones a travs de inferencias. Se basa principalmente en reglas y
hechos que son almacenados en la base de datos. Las bases de datos
deductivas son tambin llamadas bases de datos lgicas, a raz de que se
basa en lgica matemtica. Este tipo de base de datos surge debido a las
limitaciones de la Base de Datos Relacional de responder a consultas
recursivas y de deducir relaciones indirectas de los datos almacenados en la
base de datos.
Lenguaje
Utiliza un subconjunto del lenguaje Prolog llamado Datalog el cual es
declarativo y permite al ordenador hacer deducciones para contestar a
consultas basndose en los hechos y reglas almacenados.

Bases de datos Relacionales

Terminologa relacional equivalente

Los trminos Relacin, Tupla y Atributo derivan del lgebra y clculo


relacional, que constituyen la fuente terica del modelo de base de
datos relacional.

Relacin = tabla o archivo


Registro = registro, fila , rengln o tupla
Atributo = columna o campo
Clave = llave o cdigo de identificacin
Clave Candidata = superclave mnima
Clave Primaria = clave candidata elegida
Clave Ajena (o fornea) = clave externa o clave fornea
Clave Alternativa = clave secundaria
Dependencia Multivaluada = dependencia multivalor
RDBMS = Del ingls Relational Data Base Manager System que significa,
Sistema Gestor de Bases de Datos Relacionales.
1FN = Significa, Primera Forma Normal o 1NF del ingls First Normal Form.

Todo atributo en una tabla tiene un dominio, el cual representa el


conjunto de valores que el mismo puede tomar. Una instancia de una
tabla puede verse entonces como un subconjunto del producto
cartesiano entre los dominios de los atributos. Sin embargo, suele
haber algunas diferencias con la analoga matemtica, ya que
algunos RDBMS permiten filas duplicadas, entre otras cosas.
Finalmente, una tupla puede razonarse matemticamente como un
elemento del producto cartesiano entre los dominios.

Dependencia de los datos

B es funcionalmente dependiente de A.
Una dependencia funcional es una conexin entre uno o ms atributos.
Por ejemplo si se conoce el valor de DNI tiene una conexin con Apellido
o Nombre.
De la normalizacin (lgica) a la implementacin (fsica o real) puede ser
sugerible tener stas dependencias funcionales para lograr la eficiencia en
las tablas.

Propiedades de la dependencia funcional

Z entonces X

Dependencia funcional reflexiva


Si "y" est incluido en "x" entonces x y
A partir de cualquier atributo o conjunto de atributos siempre puede deducirse
l mismo.
Dependencia funcional Aumentativa
X y entonces XZ YZ

Dependencia funcional transitiva

Sean X, Y, Z tres atributos (o grupos de atributos) de la misma entidad. Si Y


depende funcionalmente de X y Z de Y, pero X no depende funcionalmente
de Y, se dice entonces que Z depende transitivamente de X
X Y Z entonces X Z

Claves o Llaves

Clave primaria: Es aquella columna (o conjunto de columnas) que identifica


nicamente a una fila. La clave primaria es un identificador que va a ser
siempre nico para cada fila. En una tabla puede que tengamos ms de una
columna que puede ser clave primaria por s misma. En ese caso se puede
escoger una para ser la clave primaria y las dems claves sern claves
candidatas.
Clave ajena (foreign key o clave fornea) Es aquella columna que existiendo
como dependiente en una tabla, es a su vez clave primaria en otra tabla.
Clave alternativa Es aquella clave candidata que no ha sido seleccionada
como clave primaria, pero que tambin puede identificar de forma nica a una
fila dentro de una tabla. Ejemplo: Si en una tabla clientes definimos el nmero
de documento (id_cliente) como clave primaria, el nmero de seguro social de
ese cliente podra ser una clave alternativa

Clave compuesta: Es una clave que est compuesta por ms de una


columna.
La visualizacin de todas las posibles claves candidatas en una tabla
ayudan a su optimizacin. Por ejemplo, en una tabla PERSONA podemos
identificar como claves su C.I., o el conjunto de su nombre, apellidos,
fecha de nacimiento y direccin. Podemos usar cualquiera de las dos
opciones o incluso todas a la vez como clave primaria, pero es mejor en la
mayora de sistemas la eleccin del menor nmero de columnas como
clave primaria.

Formas Normales

Las formas normales son aplicadas a las tablas de una base de datos.

Diagrama de inclusin de todas las formas normales


En general, las primeras tres formas normales son suficientes para cubrir
las necesidades de la mayora de las bases de datos

Primera Forma Normal (1FN)


Esta forma normal elimina los valores repetidos dentro de una Base de Datos.

Una tabla est en Primera Forma Normal si:


Todos los atributos son atmicos. Un atributo es atmico si los elementos del
dominio son indivisibles, mnimos.
La tabla contiene una clave primaria nica.
La clave primaria no contiene atributos nulos.
No debe existir variacin en el nmero de columnas.
Los Campos no clave deben identificarse por la clave (Dependencia Funcional)
Debe Existir una independencia del orden tanto de las filas como de las
columnas, es decir, si los datos cambian de orden no deben cambiar sus
significados
Una tabla no puede tener mltiples valores en cada columna.
Los datos son atmicos (a cada valor de X le pertenece un valor de Y y
viceversa).

Segunda Forma Normal (2FN)

Dependencia Funcional. Una relacin est en 2FN si est en


1FN y si los atributos que no forman parte de ninguna clave
dependen de forma completa de la clave principal. Es decir que no
existen dependencias parciales. (Todos los atributos que no son
clave principal deben depender nicamente de la clave principal).
En otras palabras podramos decir que la segunda forma normal
est basada en el concepto de dependencia completamente
funcional.

Tercera Forma Normal (3FN)

La tabla se encuentra en 3FN si es 2FN y si no existe ninguna


dependencia funcional transitiva entre los atributos que no son clave.
Un ejemplo de este concepto sera que, una dependencia funcional
X->Y en un esquema de relacin R es una dependencia transitiva si
hay un conjunto de atributos Z que no es un subconjunto de alguna
clave de R, donde se mantiene X->Z y Z->Y.

Forma normal de Boyce-Codd (FNBC)

La tabla se encuentra en FNBC si cada determinante, atributo que


determina completamente a otro, es clave candidata. Deber
registrarse de forma anillada ante la presencia de un intervalo
seguido de una formalizacin perpetua, es decir las variantes
creadas, en una tabla no se llegaran a mostrar, si las ya planificadas,
dejan de existir.

X es superllave o clave.

Ventajas
Uso de reglas lgicas para expresar las consultas.
Permite responder consultas recursivas.
Cuenta con negaciones estratificadas
Capacidad de obtener nueva informacin a travs de la ya almacenada en la
base de datos mediante inferencia.
Uso de algoritmos de optimizacin de consultas.
Soporta objetos y conjuntos complejos.
Fases
Fase de Interrogacin: se encarga de buscar en la base de datos
informaciones deducibles implcitas. Las reglas de esta fase se denominan
reglas de derivacin.
Fase de Modificacin: se encarga de aadir a la base de datos nuevas
informaciones deducibles. Las reglas de esta fase se denominan reglas de
generacin.

Interpretacin
Encontramos dos teoras de interpretacin de las bases de datos deductiva
consideramos las reglas y los hechos como axiomas. Los hechos son axiomas
base que se consideran como verdaderos y no contienen variables. Las reglas
son axiomas deductivos ya que se utilizan para deducir nuevos hechos.
Teora de Modelos: una interpretacin es llamada modelo cuando para un
conjunto especfico de reglas, stas se cumplen siempre para esa interpretacin.
Consiste en asignar a un predicado todas las combinaciones de valores y
argumentos de un dominio de valores constantes dado. A continuacin se debe
verificar si ese predicado es verdadero o falso.
Mecanismos
Existen dos mecanismos de inferencia:
Ascendente: donde se parte de los hechos y se obtiene nuevos aplicando reglas
de inferencia.
Descendente: donde se parte del predicado (objetivo de la consulta realizada) e
intenta encontrar similitudes entre las variables que nos lleven a hechos correctos
almacenados en la base de datos.

Modelo Entidad Relacin

Niveles de la arquitectura de un sistema de base de datos

El modelo de datos es fundamental a la hora de disear bases


de datos

El modelo de arquitectura permite establecer el principio de


independencia de los datos, ya se trate de una independencia lgica o
fsica.
La independencia lgica significa que los cambios en el esquema
lgico no deben afectar a los esquemas externos que no utilicen los
datos modificados.
La independencia fsica significa que el esquema lgico no se va a ver
afectado por los cambios realizados en el esquema interno,
correspondientes a modos de acceso

Modelos lgicos basados en objetos: los dos ms extendidos son el


modelo entidad-relacin y el orientado a objetos. El modelo entidad-relacin
(E-R) se basa en una percepcin del mundo compuesta por objetos,
llamados entidades, y relaciones entre ellos. Las entidades se diferencian
unas de otras a travs de atributos. El orientado a objetos tambin se basa
en objetos, los cuales contienen valores y mtodos.
Modelos lgicos basados en registros: el ms extendido es el relacional,
los otros dos existentes, jerrquico y de red, se encuentran en retroceso.
El modelo relacional representa los datos y sus relaciones mediante tablas
bidimensionales, que contienen datos tomados de los dominios
correspondientes. El modelo de red est formado por colecciones de
registros, relacionados mediante punteros o ligas en grafos arbitrarios,
entendidos como rdenes que actan sobre los valores, en niveles de
anidamiento.

Modelos fsicos de datos: muy poco usados, son el modelo


unificador y el de memoria de elementos.

En el diseo de una base de datos, hay que tener en cuenta distintas


consideraciones, entre las que destacan:
La velocidad de acceso
El tamao de la informacin
El tipo de informacin
La facilidad de acceso a la informacin
La facilidad para extraer la informacin requerida
El comportamiento del sistema de gestin de bases de datos con cada
tipo de informacin

Sistema de Gestin de bases de


datos (SGBD)
Son un tipo de software muy especfico, dedicado a servir de
interfaz entre la base de datos, el usuario y las aplicaciones que la
utilizan. Se compone de un lenguaje de definicin de datos, de un
lenguaje de manipulacin de datos y de un lenguaje de consulta.

Los SGBD tienen dos funciones principales que son:


1. La definicin de las estructuras para almacenar los datos.
2. La manipulacin de los datos.

Sistema de gestin de bases de datos

Un sistema de gestin de bases de datos (SGBD): Es un conjunto de


programas que permiten el almacenamiento, modificacin y extraccin de
la informacin en una base de datos, adems de proporcionar
herramientas para aadir, borrar, modificar y analizar los datos. Los
usuarios pueden acceder a la informacin usando herramientas
especficas de interrogacin y de generacin de informes, o bien mediante
aplicaciones al efecto.
Estos sistemas tambin proporcionan mtodos para mantener la
integridad de los datos, para administrar el acceso de usuarios a los datos
y para recuperar la informacin si el sistema se corrompe. Permiten
presentar la informacin de la base de datos en variados formatos. La
mayora incluyen un generador de informes. Tambin pueden incluir un
mdulo grfico que permita presentar la informacin con grficos y tablas.

Un SGBD permite controlar el acceso a los datos, asegurar su


integridad, gestionar el acceso concurrente a ellos, recuperar los
datos tras un fallo del sistema y hacer copias de seguridad. Las
bases de datos y los sistemas para su gestin son esenciales para
cualquier rea de negocio, y deben ser gestionados con esmero.
Los SGBD se encuentran en el corazn de toda aplicacin que
maneje datos.
Los SGBD se basan en sistemas operativos estndar para efectuar
dichas funciones.

Objetivos en el uso de un sistema de


gestin de base de datos

Oportunidad, asociado a la eficiencia y eficacia.

Disponibilidad, permitiendo la accesibilidad de datos

Consistencias (oportunidad + disponibilidad), como calidad de datos

Evolucin, para adaptarse al entorno

Integridad, en el nivel de los datos as como el sistema.


Objetivos del sistema de gestin de base de datos:

Independencia de datos

Accesibilidad limitada

Datos al da y sin redundancias

Consistencia

Interfaz nica

Entrada directa a los datos

Recuperacin por diferentes accesos

Funcin completa de interrogantes

Estandarizacin

Seguridad

Oracle, Informix, PostgreSQL, Sybase, Microsoft

componentes con los que debe contar un sistema de gestin de


bases de datos ideal:
Un lenguaje de definicin de esquema conceptual.
Un sistema de diccionario de datos.
Un lenguaje de especificacin de paquetes de entrada/salida.
Un lenguaje de definicin de esquemas de base de datos.
Una estructura simtrica de almacenamiento de datos.
Un mdulo de transformacin lgica a fsica.
Un subsistema de privacidad de propsito general.
Un subsistema de integridad de propsito general
Un subsistema de reserva y recuperacin de propsito general.
Un generador de programas de aplicacin.
Un generador de programas de informes.
Un lenguaje de consulta de propsito general.

Sistema de Gestin de bases de


datos distribuida (SGBDD)
La base de datos y el software SGBD pueden estar distribuidos en mltiples
sitios conectados por una red. Hay de dos tipos:
1.Distribuidos homogneos: utilizan el mismo SGBD en mltiples sitios.
2. Distribuidos heterogneos: Da lugar a los SGBD federados o sistemas
multibase de datos en los que los SGBD participantes tienen cierto grado de
autonoma local y tienen acceso a varias bases de datos autnomas
preexistentes almacenados en los SGBD, muchos de estos emplean una
arquitectura cliente-servidor.

Estas se justifican debido a la existencia fsica de organismos


descentralizados. Esto les da la capacidad de unir las bases de datos
de cada localidad

Funcionalidad de un DB

Una base de datos (sea cual sea) es un soporte digital que tiene como fin el
almacenamiento masivo de informacin en formato texto plano. No es
capaz de almacenar imgenes como se cree, sino que almacena las rutas
(path) de dichas fotos; ni almacena otro tipo de datos; sino que almacena
sus rutas de acceso de ser necesario.
Las bases de datos, son utilizadas en sistemas que requieren una
interaccin fluida con la aplicacin; estas se encargan muchas veces de
administrar, editar, y dar de alta. Usualmente la base de datos, esta ligada a
la programacin directa del site, causando que una edicin en ella cause
una modificacin directa en lo que ve el usuario.

Estructura de una DB

Una base de datos, a fin de ordenar la informacin de manera lgica,


posee un orden que debe ser cumplido para acceder la informacin de
manera coherente.
Cada base de datos tiene una o ms tablas, las cuales cumplen la funcin
de contener los campos.
Por consiguiente una base de datos posee el siguiente orden jerrquico:
Tablas
Campos
Registros

Tipos usuales de bases de datos


en la Web
Access: Es una base de datos desarrollada por Microsoft comnmente
utilizada bajo el lenguaje ASP (Active Server Pages). Esta base de datos,
debe ser creada bajo el programa access, el cual crea archivo .mdb con la
estructura ya explicada. El programa usa un entorno grfico normal, y es muy
parecido a usar excel.
MySQL: Es una base de datos con licencia GPL basada en un servidor, puede
ser slo creada por cdigo. Usualmente se utiliza el programa phpMyAdmin
como soporte para administrar la base de datos en el nivel de programacin
(a un usuario normal le resultara complicado utilizarla desde lnea de
comandos).
SQL Server: Es una base de datos ms potente que access desarrollada por
Microsoft tambin, que se supone es recomendable arriba del milln datos.

PostgreSQL / Oracle: Son realmente mucho ms poderosas que todas las


antes mencionadas, aunque tambin se duplican los problemas. Administra
muy bien grandes cantidades de datos, y suelen ser utilizadas en intranets y
sistemas de gran calibre.
Lenguaje SQL
Este es el lenguaje que se utiliza para conectarse a una base de datos. Son
sentencias, que realizan un query (consulta) a la DB a fin de que esta les
responda con una cantidad de datos limitada segn lo buscado. Bsicamente,
existen muchsimas funciones de SQL. Algunos ejemplos

El acceso a los datos se puede realizar mediante distintas tecnologas


Web, entre las que destacan:

CGI: (Common Gateway Interface o Interfaz de pasarela comn)


es la especificacin de un protocolo que permite al servidor Web
(HTTP) comunicarse con programas o scripts externos. Los programas
CGI trabajan en el servidor Web y pueden implementarse utilizando
diferentes lenguajes de programacin (COBOL, C, Perl, etc.).

ASP: Microsoft ha desarrollado sus propias aplicaciones y servidores. Las


primeras soluciones se basaban en el servidor Web ISS (Internet Information
Server), el lenguaje de script ASP (Active Server Pages) y la tecnologa de
objetos distribuidos COM (Componente Object Model). ASP proporciona acceso
a datos apoyndose en los objetos ADO (ActiveX Data Objects) y ODBC. El uso
de la interfaz ODBC le permite a ASP trabajar sobre cualquier sistema gestor de
bases de datos que proporcione un controlador o driver (MySQL, SQL Server,
Oracle, Informix, etc.). Los objetos ADO, basados en la tecnologa COM
(Component Object Model), ofrecen mtodos que encapsulan el acceso a datos
para su utilizacin en pginas ASP (Connection, RecordSet, Command, etc.). Se
puede utilizar ASP sobre un IIS (Internet Information Server) ejecutndose en
Windows NT Server 4.0. Se necesita dar de alta un DSN (Data Source Name)
que asocia el SGBD (MySQL), el nombre de la fuente de datos y un driver
ODBC para MySQL.

.NET es la ltima aplicacin desarrollada por Microsoft e incluye ASP+, C#,


mientras deja de lado las anteriores inversiones de Microsoft en Java (y
programas relacionados como Microsoft Visual J++). Todas estas soluciones
se basan en estndares propietarios, aunque en la plataforma .NET se
incluye soporte a SOAP.
JSP: El acceso a base de datos desde JSP (Java Server Pages), al igual que
desde Servlets, se apoya en la tecnologa JDBC de Java. Para ello se precisa
un controlador o driver que proporcione el acceso a la base de datos
subyacente (MySQL). JSP es un lenguaje muy potente de cdigo abierto que
permite crear de manera fcil aplicaciones Web. J2EE (Java 2 Enterprise
Edition) es una tecnologa de las ms utilizadas.

PHP: PHP o Hypertext Preprocessor ofrece interfaces propias de acceso a


multitud de fuentes de datos: BBDDs (MySQL, mSQL, Oracle 8, etc.),
servidores de directorio (LDAP), texto en XML, etc. Todas ellas estn
documentadas en la pgina Web de PHP

Insertar Datos a una Tabla especifica:


INSERT INTO `Nombre Tabla` (` Nombre Campo `, ` Nombre Campo `,
`Nombre Campo`) VALUES ('Valor', ' Valor', ' Valor ');

Editar Datos de una fila especifica


UPDATE ` Nombre Tabla ` SET ` Nombre Campo ` = 'Valor', ` Nombre Campo `
= ' Valor', ` Nombre Campo ` = ' Valor' WHERE `ID` = 'Numero Fila';
Borrar una Fila
DELETE FROM ` Nombre Tabla ` WHERE `id`='Numero Fila';
Seleccionar datos de una Fila
SELECT Nombre Campo, Nombre Campo FROM Nombre Tabla where id =
Numero Fila;
Buscar datos dentro de una tabla
SELECT Nombre Campo FROM Nombre Tabla where Nombre Campo LIKE
'%".Concepto de Bsqueda."%;
SELECT COUNT (Nombre Campo) FROM Nombre Tabla;??

Potrebbero piacerti anche