Вы находитесь на странице: 1из 51

LUFFI

BASE DE DATOS
RICARDO RAMIREZ

[Escriba aqu una descripcin breve del documento. Normalmente, una


descripcin breve es un resumen corto del contenido del documento.
Escriba aqu una descripcin breve del documento. Normalmente, una
descripcin breve es un resumen corto del contenido del documento.]

ELEMENTOS DE LA ARQUITECTURA CLIENTE/SERVIDOR

En esta aproximacin, y con el objetivo de definir y delimitar el modelo de


referencia de una arquitectura Cliente/Servidor, debemos identificar los
componentes que permitan articular dicha arquitectura, considerando que toda
aplicacin de un sistema de informacin est caracterizada por tres
componentes bsicos:
Presentacin/Captacin de Informacin
Procesos
Almacenamiento de la Informacin
Los cuales se suelen distribuir tal como se presenta en la figura:
Aplicaciones Cliente/Servidor
Para ver el grfico seleccione la opcin "Descargar" del men superior
Y se integran en una arquitectura Cliente/Servidor en base a los elementos que
caracterizan dicha arquitectura, es decir:
Puestos de Trabajo
Comunicaciones
Servidores
Tal como se presenta en la figura:
Arquitectura Cliente/Servidor
Para ver el grfico seleccione la opcin "Descargar" del men superior
De estos elementos debemos destacar:
El Puesto de Trabajo o Cliente
Una Estacin de trabajo o microcomputador (PC: Computador Personal)
conectado a una red, que le permite acceder y gestionar una serie de
recursos el cual se perfila como un puesto de trabajo universal. Nos referimos
a un microcomputador conectado al sistema de informacin y en el que se
realiza una parte mayoritaria de los procesos.
Se trata de un fenmeno en el sector informtico. Aquellos responsables
informticos que se oponen a la utilizacin de los terminales no programables,
acaban siendo marginados por la presin de los usuarios.
Debemos destacar que el puesto de trabajo basado en un microcomputador
conectado a una red, favorece la flexibilidad y el dinamismo en las
organizaciones. Entre otras razones, porque permite modificar la ubicacin de
los puestos de trabajo, dadas las ventajas de la red.

Los Servidores o Back-end


Una mquina que suministra una serie de servicios como Bases de Datos,
Archivos, Comunicaciones,...).
Los Servidores, segn la especializacin y los requerimientos de los servicios
que debe suministrar pueden ser:
Mainframes
Miniordenadores
Especializados (Dispositivos de Red, Imagen, etc.)
Una caracterstica a considerar es que los diferentes servicios, segn el caso,
pueden ser suministrados por un nico Servidor o por varios Servidores
especializados.
Las Comunicaciones
En sus dos vertientes:
Infraestructura de redes
Infraestructura de comunicaciones
Infraestructura de redes
Componentes Hardware y Software que garantizan la conexin fsica y la
transferencia de datos entre los distintos equipos de la red.
Infraestructura de comunicaciones
Componentes Hardware y Software que permiten la comunicacin y su gestin,
entre los clientes y los servidores.
La arquitectura Cliente/Servidor es el resultado de la integracin de dos
culturas. Por un lado, la del Mainframe que aporta capacidad de
almacenamiento, integridad y acceso a la informacin y, por el otro, la del
computador que aporta facilidad de uso (cultura de PC), bajo costo,
presentacin atractiva (aspecto ldico) y una amplia oferta en productos y
aplicaciones.
CARACTERISTICAS DEL MODELO CLIENTE/SERVIDOR
En el modelo CLIENTE/SERVIDOR podemos encontrar las siguientes
caractersticas:
1. El Cliente y el Servidor pueden actuar como una sola entidad y tambin
pueden actuar como entidades separadas, realizando actividades o tareas
independientes.
2. Las funciones de Cliente y Servidor pueden estar en plataformas separadas,
o en la misma plataforma.

Para ver el grfico seleccione la opcin "Descargar" del men superior


3. Un servidor da servicio a mltiples clientes en forma concurrente.

4. Cada plataforma puede ser escalable independientemente. Los cambios


realizados en las plataformas de los Clientes o de los Servidores, ya sean por
actualizacin o por reemplazo tecnolgico, se realizan de una manera
transparente para el usuario final.
5. La interrelacin entre el hardware y el software estn basados en una
infraestructura poderosa, de tal forma que el acceso a los recursos de la red no
muestra la complejidad de los diferentes tipos de formatos de datos y de los
protocolos.
6. Un sistema de servidores realiza mltiples funciones al mismo tiempo que
presenta una imagen de un solo sistema a las estaciones Clientes. Esto se
logra combinando los recursos de cmputo que se encuentran fsicamente
separados en un solo sistema lgico, proporcionando de esta manera el
servicio ms efectivo para el usuario final.
Tambin es importante hacer notar que las funciones Cliente/Servidor pueden
ser dinmicas. Ejemplo, un servidor puede convertirse en cliente cuando realiza
la solicitud de servicios a otras plataformas dentro de la red.
Su capacidad para permitir integrar los equipos ya existentes en una
organizacin, dentro de una arquitectura informtica descentralizada y
heterognea.
7. Adems se constituye como el nexo de unin mas adecuado para reconciliar
los sistemas de informacin basados en mainframes o minicomputadores, con
aquellos otros sustentados en entornos informticos pequeos y estaciones de
trabajo.
8. Designa un modelo de construccin de sistemas informticos de carcter
distribuido.
Su representacin tpica es un centro de trabajo (PC), en donde el usuario
dispone de sus propias aplicaciones de oficina y sus propias bases de datos,
sin dependencia directa del sistema central de informacin de la organizacin,
al tiempo que puede acceder a los
recursos de este host central y otros sistemas de la organizacin ponen a su
servicio.
En conclusin, Cliente/Servidor puede incluir mltiples plataformas, bases de
datos, redes y sistemas operativos. Estos pueden ser de distintos proveedores,
en arquitecturas propietarias y no propietarias y funcionando todos al mismo
tiempo. Por lo tanto, su implantacin involucra diferentes tipos de estndares:
APPC, TCP/IP, OSI, NFS, DRDA corriendo sobre DOS, OS/2, Windows o PC
UNIX, en TokenRing, Ethernet, FDDI o medio coaxial, slo por mencionar
algunas de las posibilidades.

TIPOS DE CLIENTES
"cliente flaco":
Servidor rpidamente saturado.
Gran circulacin de datos de interfase en la red.
"cliente gordo":
Casi todo el trabajo en el cliente.
No hay centralizacin de la gestin de la BD.
Gran circulacin de datos intiles en la red.

TIPOS DE SERVIDOR
Servidores de archivos
Servidor donde se almacena archivos y aplicaciones de productividad como por
ejemplo procesadores de texto, hojas de clculo, etc.
Servidores de bases de datos
Servidor donde se almacenan las bases de datos, tablas, ndices. Es uno de
los servidores que ms carga tiene.
Servidores de transacciones
Servidor que cumple o procesa todas las transacciones. Valida primero y recin
genera un pedido al servidor de bases de datos.
Servidores de Groupware
Servidor utilizado para el seguimiento de operaciones dentro de la red.
Servidores de objetos
Contienen objetos que deben estar fuera del servidor de base de datos. Estos
objetos pueden ser videos, imgenes, objetos multimedia en general.
Servidores Web
Se usan como una forma inteligente para comunicacin entre empresas a
travs de Internet.
Este servidor permite transacciones con el acondicionamiento de un browser
especfico.
Estilos del modelo cliente servidor
PRESENTACIN DISTRIBUIDA
Se distribuye la interfaz entre el cliente y la plataforma servidora.

La aplicacin y los datos estn ambos en el servidor.


Similar a la arquitectura tradicional de un Host y Terminales.
El PC se aprovecha solo para mejorar la interfaz grfica del usuario.
Ventajas
Revitaliza los sistemas antiguos.
Bajo costo de desarrollo.
No hay cambios en los sistemas existentes.
Desventajas
El sistema sigue en el Host.
No se aprovecha la GUI y/o LAN.
La interfaz del usuario se mantiene en muchas plataformas.
PRESENTACIN REMOTA

La interfaz para el usuario esta completamente en el cliente.


La aplicacin y los datos estn en el servidor.
Ventajas
La interfaz del usuario aprovecha bien la GUI y la LAN.
La aplicacin aprovecha el Host.
Adecuado para algunos tipos de aplicaciones de apoyo a la toma de
decisiones.
Desventajas
Las aplicaciones pueden ser complejas de desarrollar.
Los programas de la aplicacin siguen en el Host.
El alto volumen de trfico en la red puede hacer difcil la operacin de
aplicaciones muy pesadas.
LGICA DISTRIBUIDA
La interfaz esta en el cliente.
La base de datos esta en el servidor.
La lgica de la aplicacin esta distribuida entre el cliente y el servidor.
Ventajas

Arquitectura mas corriente que puede manejar todo tipo de aplicaciones.


Los programas del sistema pueden distribuirse al nodo mas apropiado.
Pueden utilizarse con sistemas existentes.
Desventajas
Es difcil de disear.
Difcil prueba y mantenimiento si los programas del cliente y el servidor estn
hechos en distintos lenguajes de programacin.
No son manejados por la GUI 4GL.

ADMINISTRACIN DE DATOS REMOTA


En el cliente residen tanto la interfaz como los procesos de la aplicacin.
Las bases de datos estn en el servidor.
Es lo que comnmente imaginamos como aplicacin cliente servidor
Ventajas
Configuracin tpica de la herramienta GUI 4GL.
Muy adecuada para las aplicaciones de apoyo a las decisiones del usuario
final.
Fcil de desarrollar ya que los programas de aplicacin no estn distribuidos.
Se descargan los programas del Host.
Desventajas
No maneja aplicaciones pesadas eficientemente.
La totalidad de los datos viaja por la red, ya que no hay procesamiento que
realice el Host.
BASE DE DATOS DISTRIBUIDA
La interfaz, los procesos de la aplicacin, y , parte de los datos de la base de
datos estn en cliente.
El resto de los datos estn en el servidor.
Ventajas
Configuracin soportada por herramientas GUI 4GL.
Adecuada para las aplicaciones de apoyo al usuario final.
Apoya acceso a datos almacenados en ambientes heterogneos.

Ubicacin de los datos es transparente para la aplicacin.


Desventajas
No maneja aplicaciones grandes eficientemente.
El acceso a la base de datos distribuida es dependiente del proveedor del
software administrador de bases de datos.
Definicin de middleware
"Es un termino que abarca a todo el software distribuido necesario para el
soporte de interacciones entre Clientes y Servidores".
Es el enlace que permite que un cliente obtenga un servicio de un servidor.
Este se inicia en el modulo de API de la parte del cliente que se emplea para
invocar un servicio real; esto pertenece a los dominios del servidor. Tampoco a
la interfaz del usuario ni la a la lgica de la aplicacin en los dominios del
cliente.
Tipos de Middleware
Existen dos tipos de middleware:
Este tipo permite la impresin de documentos remotos, manejos de
transacciones, autenticacin de usuarios, etc.
Middleware general
Middleware de servicios especficos
Generalmente trabajan orientados a mensajes. Trabaja uno sola transaccin a
la vez.
Funciones de un programa servidor
Espera las solicitudes de los clientes.
Ejecuta muchas solicitudes al mismo tiempo.
Atiende primero a los clientes VIP.
Emprende y opera actividades de tareas en segundo plano.
Se mantiene activa en forma permanente.

Identificar las caractersticas de un anlisis costo beneficio orientado a la


compra de equipo de cmputo

El mtodo de Anlisis de Costo - Beneficio, tiene como objetivo fundamental


proporcionar una medida de la comparacin de los costos previstos con los
beneficios esperados en la realizacin del mismo. Este mtodo se
es necesario realizar para verificar la capacidad que cuenta un equipo de
cmputo para desempear el papel de servidor
Tabla comparativa de requerimientos mnimos para la instalacin de Mysql

HARWARE
Disco duro
Teclado
Ratn
Monitor
Memoria RAM
Procesador
Tarjeta de red

SOFTWARE
S.O Windows 39 bits
Soporte para protocolo TC/IP
Copia de distribucin binaria de Mysql para Windows
Herramientas para leer ficheros Zip

Caractersticas del sistema


Familia de procesador
Familia de productos Intel
Xeon E7-4800; Intel Xeon
serie 7500
Nmero de procesadores
4o2
Ncleo de procesador
disponible
10 u 8 6 4
Form factor (totalmente
configurado)
4U
Tipo de fuente de alimentacin
(4) unidades de ranura comn
Ranuras de expansin
(11) mximo
Memoria

Marca

HP

Modelo

Servidor HP ProLiant DL580 G7

Costo

$ 20,000 (MXN)

Memoria, mxima
2 TB
Ranuras de memoria
64 ranuras DIMM; Mximo
Tipo de memoria
RDIMM DDR3
Almacenamiento
Descripcin de unidad
(8) SAS/SATA/SSD de formato
pequeo; Conexin en caliente,
segn modelo
Tarjetas controladoras
Controlador de red
Adaptador Ethernet NC375i
multifuncin de 1 Gb y 4
puertos por controladora o;
Adaptador Ethernet 331i de 1
Gb y 4 puertos por
controladora; Segn el modelo
Controlador de almacenamiento
Smart Array P410i;

Identificar el proceso de instalacin de un SGBD


Instalacin de un SGBD
Obtener el paquete XAMPP
Para poder montar un ambiente de desarrollo para PHP es necesario tener
instalado un servidor web y el interprete de PHP, esta tarea la podemos hacer
de forma manual, pero como el objetivo de este curso es programar en PHP y
no administracin de servidores, realizaremos la tarea mas sencilla, la cual
ser instalar un paquete que ya este pre configurado.
Conocen principalmente tres tipos de ambientes comunes, no quiere decir que
son los nicos, los tres ambientes en mencin son:

WAMP = Windows, Apache, MySQL, PHP

LAMP = Linux, Apache, MySQL, PHP

MAMP = Macintosh, Apache, MySQL, PHP

Instalar el paquete XAMPP


A continuacin se vern las pantallas de la instalacin con su explicacin cada
uno, inicialmente sern los de WAMP y luego los de XAMPP.

Instalacin WAMP
1. En este paso vemos la primer pantalla que nos muestra el ejecutable en
el cual nos dan una introduccin y un resumen de las herramientas que
se van a instalar.

2. En este paso se muestra el acuerdo de licencia, a lo cual nosotros


seleccionamos que aceptamos
los trminos y le damos en siguiente.

3. En este paso seleccionamos la ubicacin que van tener los archivos que
se van a instalar, se puede cambiar a conveniencia.

4. efectos del curso y sus ejemplos se manejara la ubicacin por defecto.

5. Antes de empezar la instalacin de los archivos el programa de

instalacin nos muestra un resumen de lo que va a hacer y en ese


instante le damos clic en instalar para comenzar con la instalacin.

5. Por ultimo el programa de instalacin nos muestra un mensaje de

finalizacin y nos da la opcin de arrancar o no la aplicacin.

Para probar que el servidor haya quedado bien instalado, abrimos cualquier
navegador web dentro del mismo equipo donde se instala WAMP y en la
direccin ponemos http://localhost y si todo sali bien tendr que mostrar una
pantalla como la siguiente.

Apache y MySQL como servicios


La aplicacin antes instalada (WAMP) se encarga de instalar el servidor web
apache, y el servidor de base de datos Mysql, estos se instalan como servicios
del sistema operativo, esto con el fin que sean fcilmente administrables y que
adems de ello inicien con el sistema operativo, el paquete WAMP tiene
adicional a la interfaz de manipulacin de servicios de Windows, una interfaz
para poder manipular los servicios instalados, y por medio de esta interfaz nos
permite parar, reiniciar o iniciar los servicios, as como cambiar
la configuracin de los servidores.

De esa forma podemos configurar nuestro ambiente de trabajo de acuerdo los


requerimientos.

Identificar las funciones principales del entorno de trabajo de


un SGBD
El siguiente paso es arrancar phpMyAdmin, para ello se utiliza el
navegador que prefiera, tecleamos lo siguiente en el navegador:
http://localhost/phpmyadmin
Ya tenemos la pagina principal de phpMyAdmin, seleccionamos
Base de datos (en rojo en la imagen), bien, lo primero que vemos
es una lista de las bases de datos que tenemos creadas, en la parte
inferior vemos cuadro - Crear nueva base de datos - donde
introduciremos el nombre de nuestra nueva base de datos MySQL,
para este tutorial voy utilizar - mi web - como nombre de mi base de
datos, pulsamos el botn - Crear

El siguiente paso va a ser crear un usuario para poder crear los


diferentes objetos que necesitemos como tablas, ndices, etc. con
nuestra base de datos seleccionada pinchamos sobre - Privilegios -,
aparecer una lista de usuarios que ya existen en nuestra base de
datos, como podis ver en la imagen, para crear un nuevo usuario
pinchamos sobre -Agregar un nuevo usuario

Aparece la pgina siguiente para que introduzcamos los valores


para nuestro nuevo usuario, en nombre de usuario introducimos por
ejemplo - user_miweb -, un contrasea, la volvemos a escribir y por
ltimo los privilegios que va a tener nuestro usuario, para los que
iniciaran con MySQL pulsamos el botn - Continuar

Ya tenemos creado con phpMyAdmin nuestro nuevo usuario para la


base de datos MySQL y con los privilegios que hayamos decidido,
en este ejemplo tendr todos los privilegios.

UNIDAD 2
1. Unidad
Temtica
2. Objetivo
Temas
Esquema fsico
de la BD
Localizacin de
los archivos
de BD
Conectividad a
base de
datos

II. Esquema fsico y conectividad de BD


El alumno establecer una conexin a BD para
comprobar su disponibilidad.
Saber
Identificar los conceptos de esquema fsico de
una BD.
Identificar las herramientas de modelado de
esquemas fsicos de BD.
Identificar la funcin y ubicacin de los archivos
que integran una BD.
Identificar el procedimiento de conexin a una
BD.

Esquema fsico de la BD
El esquema fsico de una base de datos, depende del tipo de SGBD y de un
SGBD especfico.
El esquema fsico de una base de datos es una descripcin de la
implementacin de una base de datos en memoria secundaria, describiendo las
estructuras de almacenamiento y los mtodos de acceso a esos datos.

Localizacin de los archivos de BD


El modelo de datos se puede clasificar de la siguiente forma:
Modelos de Datos Conceptuales
Modelos de Datos Lgicos
Modelos de Datos Fsicos
Esquema modelamiento de una base de datos.

Modelo Conceptual
Son los orientados a la descripcin de estructuras de datos y restricciones de
integridad. Se usan fundamentalmente durante la etapa de Anlisis de un
problema dado y estn orientados a representar los elementos que intervienen
en ese problema y sus relaciones. El ejemplo ms tpico es el Modelo EntidadRelacin
Ventajas del Diseo Conceptual:
El modelo conceptual aporta claridad y evita confusiones que surgen de
intentar
definir
algo
tan
complejo
como
la estructura de
una organizacinutilizando nicamente el lenguaje natural.
Contribuye a detectar los posibles errores desde el principio, ya que permite al
diseador, una amplia visin de los datos y relaciones.
Se obtiene una representacin de datos independientes del entorno fsico, lo
que permite la fcil exportacin del mismo a diferentes SGBD o a versiones
distintas del mismo.
Mejora el mantenimiento de la informacin.
El modelamiento ms descriptico del Modelo Conceptual es el MODELO
ENTIDAD/RELACION.
El modelo de datos de entidad-relacin (ER)
Se basa en una percepcin de un mundo real que consiste en un conjunto de
objetos bsicos llamados entidades y de relaciones entre estos objetos. Se
desarroll para facilitar el diseo de bases de datos permitiendo especificar un
esquema empresarial. Este esquema representa la estructura lgicageneral de
la base de datos.
Objetos bsicos del modelo ER
Los conceptos bsicos previstos por el modelo ER son entidades, relaciones y
atributos.
Entidades y conjunto de entidades
Una entidad es un objeto que existe y puede distinguirse de otros objetos. La
entidad puede ser concreta, por ejemplo: una persona o un libro; o abstracta,
por ejemplo un da festivo o un concepto.
Un conjunto de entidades es un grupo de entidades del mismo tipo. El conjunto
de todas las personas que tienen una cuenta en el banco, por ejemplo, puede
definirse como el conjunto de entidades clientes. Una entidad est
representada por un conjunto de atributos. Los posibles atributos del conjunto
de entidades clientes son nombre, documento, calle y ciudad. Para cada
atributo existe un rango de valores permitidos, llamado dominio del atributo. El

dominio del atributo nombre podra ser el conjunto de todas los nombres de
personas de cierta longitud.
Relaciones y conjunto de relaciones
Una relacin es una asociacin entre varias entidades. Por ejemplo es posible
definir una relacin que asocia al cliente Gutirrez con la cuenta 401. Un
conjunto de relaciones es un grupo de relaciones del mismo tipo. Se definir el
conjunto de relaciones clientecuenta para denotar la asociacin entre los
clientes y las cuentas bancarias que tienen. La relacin clientecuenta es un
ejemplo de una relacin binaria, es decir, una que implica a dos conjuntos de
entidades.
Existen conjuntos de relaciones que incluyen a n-conjuntos de entidades,
relaciones narias, por ejemplo las relaciones tenaria cliecuentasuc que
especifica que el cliente Gutirrez tienen la cuenta 401 en la surcusal Crdoba.
Los relaciones recursivas son relaciones binarias que conectan una entidad
consigo misma.
Una relacin tambin puede tener atributos descriptivos o rtulos. Por ejemplo,
fecha podra ser un atributo del conjunto de relaciones clientecuenta. Esto
especifica la ltima fecha en que el cliente tuvo acceso a su cuenta.

Cardinalidades de mapeo
Un esquema ER empresarial puede definir ciertas limitantes con las que deben
cumplir los datos contenidos en la base de datos. Una limitante importante es la
de las cardinalidades de mapeo que expresan el nmero de entidades con las
que puede asociarse otra entidad mediante una relacin.
Los cardinalidades de mapeo son ms tiles al describir conjuntos binarios de
relaciones, aunque tambin son aplicables a conjuntos n-arios de relaciones.
Para un conjunto binario de relaciones R entre los conjuntos de entidades A y
B, la cardinalidad de mapeo puede ser:
Una a una: una entidad de A est asociada nicamente con una entidad de B
y una entidad de B est asociada solo con una entidad de A.
Una a muchas: una entidad en A est asociada con varias entidades de B,
pero una entidad de B puede asociarse nicamente con una entidad de A.
Muchas a una: una entidad de A est asociada nicamente con una entidad
en B, pero una entidad de B est relacionada con varias entidades de A.
Muchas a muchas: una entidad en A est asociada con varias entidades de B
y una entidad en B est vinculada con varias entidades de A.

Modelo Lgico
Son orientados a las operaciones ms que a la descripcin de una realidad.
Usualmente estn implementados en algn Manejador de Base de Datos. El
ejemplo ms tpico es el Modelo Relacional, que cuenta con la particularidad de
contar
tambin
con
buenas
caractersticas
conceptuales
(Normalizacinde bases de datos).
Este Modelos busca obtener una representacin del modelo conceptual que
use de forma eficiente las facilidades de estructuracin de datos y modelado de
restricciones, disponibles en el modelo.

El modelamiento ms descriptico del Modelo Lgico es el MODELO


RELACIONAL.

El modelo de datos Relacional


Se trata de un modelo bastante potente y a la vez bastante simple, que nos
representas problemas. El elemento principal de este modelo es la relacin.
Por lo que podemos decir que una base de datos relacional est compuesta
por un conjunto de relaciones.
Relacin
La relacin se representa mediante una tabla, esta tabla representa a lo que en
el modelo entidad-relacin llambamos entidad. Esta tabla contiene los
atributos (columnas) y las tuplas (filas).
Atributo: se trata de cada una de las columnas de la tabla. Vienen definidas
por un nombre y pueden contener un conjunto de valores.
Tupla: se trata de cada una de las filas de la tabla. Es importante sealar que
no se pueden tener tuplas duplicadas en una tabla.
Dominios
El dominio dentro de la estructura del modelo relacional es el conjunto de
valores que puede tomar un atributo. Existen dos tipos de dominios:
Dominios generales: son aquellos que estn comprendidos entre un mximo
y un mnimo.
Dominios restringidos: son los que pertenecen a un conjunto de valores
especficos.
Claves
Cada tupla de una tabla tiene que estar asociada a una clave nica que permita
identificarla.
Una clave puede estar compuesta por uno o ms atributos.
Una clave tiene que ser nica dentro de su tabla y no se puede descartar
ningn atributo de la misma para identificar una fila.
Existen dos tipos de claves:
Clave primaria (Primary Key): es el valor o conjunto de valores que identifican
una fila dentro de una tabla. Nunca puede ser NULL. Un ejemplo claro de clave
primaria seria el DNI, que es nico para cada persona y no puede ser NULL.
Clave ajena (Foreign Key): es el valor o valores de una tabla que corresponde
con el valor de una clave primaria en otra tabla. Esta clave es la que representa
las relaciones entre las tablas.
Vistas
Se trata de una tabla ficticia la cual muestra atributos de otras tablas
relacionadas. De esta forma obtenemos los datos que nos interesan de una o

varias tablas. Es importante sealar que no se pueden realizar operaciones


sobre vistas.

Modelo Fsico
El diseo fsico es el proceso de producir una descripcin de la implementacin
de la base de datos en memoria secundaria. Describe las relaciones base y las
estructuras de almacenamiento y mtodos de acceso que se utilizarn para
acceder a los datos de modo eficiente. El diseo de las relaciones base slo se
puede realizar cuando el diseador conoce perfectamente toda la funcionalidad
que presenta el SGBD que se vaya a utilizar.
El primer paso consiste en traducir el esquema lgico global de modo que
pueda ser fcilmente implementado por el SGBD especfico. A continuacin, se
escogen las organizaciones de ficheros ms apropiadas para almacenar las
relaciones base, y los mtodos de acceso, basndose en el anlisis de las
transacciones que se van a ejecutar sobre la base de datos. Se puede
considerar la introduccin de redundancias controladas para mejorar
lasprestaciones. Otra tarea a realizar en este paso es estimar el espacio en
disco.
La seguridad de la base de datos es fundamental, por lo que el siguiente paso
consiste en disear las medidas de seguridad necesarias mediante la creacin
de vistas y el establecimiento de permisos para los usuarios.
El ltimo paso del diseo fsico consiste en monitorizar y afinar el sistema para
obtener las mejores prestaciones y satisfacer los cambios que se puedan
producir en los requisitos.

Localizacin de los archivos de BD


Una Base de Datos es un conjunto de datos y sus relaciones (datos
interrelacionados), almacenados con la mnima redundancia y de manera que
se pueda acceder a ellos eficientemente
Se concibe como un fondo informatizado de informacin
Sistema de Base de Datos: es el sistema que se ocupa de mantener la
informacin y hacer que est disponible para el usuario. Consta de los
siguientes
elementos:

Datos: deben almacenarse de manera integrada y deben ser


compartidos (accesibles a todas las aplicaciones).

Software: es el Sistema Manejador de la Base de Datos . Se utiliza para


definir, mantener y manipular la base de datos.

Hardware: est formado por los dispositivos donde reside la base de


datos.

Usuarios: se pueden considerar tres tipos distintos de usuarios del sistema de


base de datos:

Usuario terminal: emplea la base de datos para un uso no informtico de


la informacin.
Programador de aplicaciones: disea y gestiona los programas que
utilizan datos en la base de datos
Administrador/es de la base de datos: es el encargado de disear la
estructura de datos que soporta la base de datos.

Archivos o fichero
Conjunto de informacin sobre el mismo tema, tratada como una unidad de
almacenamiento y organizada de forma estructurada para la bsqueda de un
dato individual. Un archivo est compuesto de registros homogneos que
contienen informacin sobre el tema
Los archivos en el sistema operativo, se estructuran de esta manera.

Sucesin de registros de tamao fijo


En esta organizacin pueden leerse o escribirse registros arbitrarios, pero no
pueden insertarse o
suprimirse registros en la mitad de un archivo
FUNCION
La funcin bsica de una base de datos es permitir el almacenamiento y la
recuperacin de la informacin necesaria, para que las personas de la
organizacin puedan tomar decisiones. Es as que las Bases de Datos se
tornan esenciales para la supervivencia de cualquier organizacin; pues los
datos estructurados constituyen un recurso bsico para todas las
organizaciones.
Dependiendo de la capacidad de almacenamiento y procesamiento del
hardware, la organizacin puede contar con una nica Base de Datos, o con
mltiples Bases de Datos.

UBICACIN
SQL Server no exige las extensiones de nombre de archivo .mdf, .ndf y .ldf,
pero estas extensiones ayudan a identificar las distintas clases de archivos y su
uso.
En SQL Server, las ubicaciones de todos los archivos de una base de datos se
guardan tanto en el archivo principal de la base de datos como en la base de
datos maestra. SQL Server Database Engine (Motor de base de datos de SQL
Server) utiliza casi siempre la informacin de ubicacin del archivo de la base
de datos maestra. Sin embargo, Motor de base de datos utiliza la informacin
de ubicacin del archivo principal para inicializar las entradas de ubicacin de
archivos de la base de datos maestra en las siguientes situaciones:
Al adjuntar una base de datos mediante la instruccin CREATE DATABASE con
la opcin FOR ATTACH o la opcin FOR ATTACH_REBUILD_LOG.
Al actualizar desde SQL Server versin 2000 o versin 7.0
Al restaurar la base de datos maestra.

Conectividad a base de datos


IDENTIFICAR EL PROCEDIMIENTO DE CONEXIN A UNA BD.
1.Primero extraes el Driver en un lugar especifico que te parezca cmodo, por
ejemplo a la ruta C:mysqlDriver. Luego entra a Netbeans y sitate en la barra
de herramientas Projects.
2.Ahora haz clic derecho en la carpeta Libraries y presiona la opcin Add
JAR/FOLDER .
3.Cuando hayas incluido el archivo, el explorador de proyectos mostrar una
nueva dependencia hacia el conector. Ahora ya puedes conectar tu aplicacin
Java y una base de datos en Mysql.
4.Ahora agregaremos la dependencia de nuestro archivo .jar. Para ello
haremos clic derecho en el proyecto y seguiremos la ruta Build Path>Add
External Archives
5.Busca el archivo mysql-connector-java-5.1.31-bin.jar en donde extrajiste el
conector y seleccinalo.
6.Si todo sali bien, tendrs una nueva librera externa con el nombre de
nuestro conector. Con eso ya podrs ejecutar acciones sobre las base de datos
del servidor Mysql.

DDL lenguaje de defincionde datos


Un lenguaje de definicin de datos (Data Definition Language, DDL por sus
siglas en ingls) es un lenguaje proporcionado por el sistema de gestin de
base de datos que permite a los usuarios de la misma llevar a cabo las tareas
de definicin de las estructuras que almacenarn los datos as como de los
procedimientos o funciones que permitan consultarlos.

DML Lenguaje de Manipulacion de datos

Lenguaje de manipulacin de datos (DML: Data Manipulation Language):


Lenguaje artificial de cierta complejidad que permite el manejo y procesamiento
del contenido de la base de datos. En la prctica puede consistir en un
subconjunto de instrucciones de otro lenguaje informtico. Las aplicaciones que
trabajan sobre la base de datos se programan en un lenguaje de programacin
(C, Cobol, ...) insertando en el cdigo fuente sentencias del DML. Al utilizar un
DML se deben especificar los datos que sern afectados por las sentencias del
lenguaje. Un DML puede tener o no procedimientos, segn sea necesario
especificar ademns cnmo deben obtenerse esos datos. Los DML con
procedimientos tienen sentencias de control de flujo como bucles o
condicionales. Los DML sin procedimientos son conocidos tambin como
declarativos.
Comandos DLL
Comando
CREATE

Descripcin
Utilizado para crear nuevas tablas, stored procedures e
ndices

DROP

Empleado para eliminar tablas, stored procedures e


ndices

ALTER

Utilizado para modificar las tablas agregando campos o


cambiando la definicin de los campos

Comandos DML
Comando

Descripcin

SELECT

Utilizado para consultar registros de la base de datos que


satisfagan un criterio determinado.

INSERT

Utilizado para cargar lotes de datos en la base de datos


en una nica operacin.

DELETE

Utilizado para modificar los valores de los campos y


registros especificados.

UPDATE

Utilizado para eliminar registros de una tabla de una base


de datos.

Operadores relacionales
En la seccin previa (Formalidades del Modelo Relacional de Datos) definimos
la nocin matemtica del modelo relacional. Ahora conocemos como los datos
pueden almacenarse utilizando un modelo de datos relacional, pero no
conocemos qu podemos hacer con todas estas tablas para recuperar algo
desde esa base de datos todava. Por ejemplo, alguien podra preguntar por los
nombre de todos los proveedores que vendan el artculo 'tornillo'. Hay dos
formas diferentes de notaciones para expresar las operaciones entre
relaciones.
El lgebra Relacional es una notacin algebraica, en la cual las consultas se
expresan aplicando operadores especializados a las relaciones.
El Clculo Relacional es una notacin lgica, donde las consultas se expresan
formulando algunas restricciones lgicas que las tuplas de la respuesta deban
satisface
Operadores lgicos
Los operadores lgicos comprueban la veracidad de alguna condicin. stos,
como los operadores de comparacin, devuelven el tipo de datos Boolean con
el valor TRUE, FALSE o UNKNOWN.

Comando like %,_[],


Determina si una cadena de caracteres especfica coincide con un patrn
especificado

Carcter
comodn

Descripcin

Ejemplo

Cualquier cadena de
cero o ms caracteres.

WHERE title LIKE '%computer%' busca


todos los ttulos de libros que contengan la
palabra 'computer' en el ttulo.

_ (carcter
de

Cualquier carcter
individual.

WHERE au_fname LIKE _ean busca todos


los nombres de cuatro letras que terminen en

Carcter
comodn

Descripcin

subrayado)

Ejemplo

ean (Dean, Sean, etc.)

[]

Cualquier carcter
individual del intervalo
([a-f]) o del conjunto
([abcdef]) que se ha
especificado.

WHERE au_lname LIKE [C-P]arsen busca


apellidos de autores que terminen en arsen y
empiecen por cualquier carcter individual
entre C y P, como Carsen, Larsen, Karsen,
etc. En las bsquedas de intervalos, los
caracteres incluidos en el intervalo pueden
variar, dependiendo de las reglas de
ordenacin de la intercalacin.

[^]

Cualquier carcter
individual que no se
encuentre en el
intervalo ([^a-f]) o el
conjunto ([^abcdef])
que se ha especificado.

WHERE au_lname LIKE de[^l]% busca


todos los apellidos de autores que empiecen
por de y en los que la siguiente letra no sea l.

Funciones de agregado
Las funciones de agregado realizan un clculo sobre un conjunto de valores y
devuelven un solo valor. Si exceptuamos la funcin COUNT, todas las
funciones de agregado ignoran los valores NULL. Las funciones de agregado
se suelen utilizar con la clusula GROUP BY de la instruccin SELECT.
Todas las funciones de agregado son deterministas. Esto significa que las
funciones de agregado devuelven el mismo valor cada vez que se las llama con
un conjunto especfico de valores de entrada. Para obtener ms informacin
acerca del determinismo de las funciones, vea Funciones deterministas y no
deterministas. La clusula OVER puede seguir todas las funciones de
agregado excepto GROUPING y GROUPING_ID.
Las funciones de agregado solo se pueden utilizar como expresiones en:
La lista de seleccin de una instruccin SELECT (una subconsulta o una
consulta externa).

Clusula HAVING.
Transact-SQL proporciona las siguientes funciones de agregado:
AVG

MIN

CHECKSUM_AGG

SUM

COUNT

STDEV

COUNT_BIG

STDEVP

GROUPING

VAR

GROUPING_ID

VARP

MAX

EJEMPLOS
Mostrar todos los empleados de la tabla emp
select * from emp

Mostrar el apellido, oficio y el salario de todos los empleados cuyo salario sea
mayor a 200000
select APELLIDO,OFICIO,SALARIO from EMP where SALARIO > 200000

Mostrar todos los enfermos nacidos antes de 1970


select * from ENFERMO where FECHA_NAC<'01/01/1970'

Visualizar los empleados DE la plantilla del turno de la maana


select * from PLANTILLA where T='m'

visualizar los empleados de la plantilla que tengan un salario entre 200000 y


225000
select * from PLANTILLA where SALARIO between 200000 and 225000

Visualizar los empleados de la tabla emp que no se dieron de alta entre 1980 y
1982
select * from EMP where FECHA_ALT not between '1980' and '1982'
select * from EMP where FECHA_ALT
01-01'

not between '1980-01-01' and '1982-

Visualizar todos los empleados que se dieron de alta entre 1980 y 19982

Mostrar los nombres de los departamentos citados en madrit o en barselona


select DNOMBRE from dept where LOC in ('MADRID','BARCELONA')
select DNOMBRE,loc from dept where loc='madrid' or loc='barcelona'

Mostrar todos los empleados cuyo oficio nos sea analista y ordenarlos por
oficio de forma ascendente

select * from emp


where oficio <> 'ANALISTA' order by OFICIO desc

Seleccionar los distintos valores del sexo que tienen los enfermos
select distinct s as [sexo] from ENFERMO

Buscar todos los empleados cuyo apellido empiece con la letra m

select * from EMP


where APELLIDO like 'm%'

Seleccionar todos los empleados cuyo apellido contenga


'M%' que inicie
'

Mostrar todos los empleados cuyo apellido sea de 4 letras y terminen con a

select * from EMP where APELLIDO like '___a'

Son tres guion bajo sirven para especificar


select * from EMP where APELLIDO like '___a'

Mostrar todos los empleados cuyo apellido comience entre la e y m


select * from EMP where APELLIDO like '[E-M]%'

Mostrar todos los empleados cuyo apellido empiece por la letra a, contenga
dentro de su apellido de la a a la m y que termine en o

select * from EMP where APELLIDO like 'A%[A-M]%O'

Mostrar todos los empleados cullo apellido empiese con la letra m y que la
segunda letra no se A
select * from EMP where APELLIDO like 'M[^A]%'

Mostrare todos los empleados cuyo apellido sea de 5 letras y su tercera letra
sea entre la A-S y que termine en z

select * from EMP where APELLIDO like '__[A-s]_z'

cuando hay _giones no

hay %

Mostrar empleados cuyo apellido empiecen por la letra A y culla cuarta letra no
este comprendida dela la A-G
select * from EMP where APELLIDO like 'A___[^a-g]%'
Funciones de agregado
Visualisar los salaries mayors para cada oficios
Al valor que ser repite se le pone siempre un grup by
select OFICIO, max(SALARIO) as "Salario M" from EMP
group by OFICIO

Encuentra el salario medio de los analistas mostrando la cantidad de


empleados con el oficio analista
select AVG(SALARIO) as "salario Mdeio",

COUNT(*) as "cantidad de emp",


oficio
from EMP group by oficio having OFICIO ='analista'

Encontrar el salario ms alto , el ms bajo y la diferencia entre ambos de todos


los empleados con o oficio empleado
select MAX(salario)as "salario alto",

min(salario) as "salario bajo",


max(salario)-min(salario) as "Diferencia",
oficio
from EMP
group by oficio having oficio ='Empleado'

Buscar aquellos nmeros de departamentos con cuatro o mas personas


trabajando
select DEPT_NO as [n de departamento],count(*) as [cantidad de personas]
from EMP

group by DEPT_NO having COUNT(*)>3


el cuanto el asterisco hace que haga un conteo de todos count cuenta valores
nulos

Visualizar el nmero de enfermeros el de enfermeras e interinos que hay en la


plantilla ordenados por la funcin
select count(*)as [numero de personas],FUNCION from PLANTILLA
group by FUNCION
having FUNCION in ('Enfermero','ENFERMERA','interino')
order by FUNCION

Visualizar los nmeros de departamentos ,oficio y la cantidad de personas,


para aquellos nmeros de departamentos que tengan 2 o mas personas
trabajando en el mismo oficio

select dept_no as [numero de departamento],COUNT(*) as [numero de


personas ],
oficio from EMP group by DEPT_NO,OFICIO having COUNT(*)>1

calcular el valor medio de las camas que existen para cada nombre de sala
indicar el nmero de la sala y el nombre de ellas
select sala_cod as "num de sala",
nombre as "nombre de la sala",
AVG (num_cama) as "media de cama"
from SALA
group by NOMBRE, SALA_COD

Calcular el salario medio de la plantilla de las sala 6, segn la fucin que


realizan.
indicar la funcin y la cantidad del empleado ya pares ca el nombre de la sala

select COUNT(*) as "cantidad de personas",


AVG(salario)as "salario MEDIO",
funcion,sala_cod
from PLANTILLA
group by funcion, sala_cod having sala_cod=6

Mostrar la cantidad de hombres y la cantidad de mujeres que hay entre los


enfermos ordenados por el sexo

select COUNT(*) as [personas], S as[sexo]


from ENFERMO group by S

no se utiliza el heaving por que no hay restricion

tarae join
consultasa internas
consultas externas
y sus sintaxis

BIbilografia

laurita. (s/f). Las Intimas. Recuperado el 05 de 09 de 2016, de Las Intimas


libros web. (s/f). Recuperado el 09 de 05 de 2016, de
http://librosweb.es/libro/jobeet_1_4/capitulo_4/la_arquitectura_mvc.ht
ml
Marca de desarollo. (s/f). Recuperado el 05 de 09 de 2016, de
http://www.juntadeandalucia.es/servicios/madeja/contenido/recurso/1
22
Marco de desarroloo. (s.f.). Obtenido de
http://www.juntadeandalucia.es/servicios/madeja/contenido/recurso/1
22