2. Las Bases de datos relacionadas son, el tipo de
base de datos mas utilizado. Las
bases de datos relacionadas se componen de
relaciones, conocidas de manera
común como TABLAS. Una tabla es exactamente
eso, una tabla con datos tipo
una hoja de Excel.. (Ver Gráfico 66)
3. La tabla esta compuesta por un nombre y varias columnas, que hacen
referencia a un tipo de datos diferente de datos, y filas que se corresponden
con los distintos clientes.
Cada COLUMNA de la tabla tiene un nombre único y diferente de datos,
por ejemplo en la tabla Clientes puede ver que el campo clienteID es de
tipo entero y las otras 3 son columnas de Cadenas las columnas a verse se
llaman campos o atributos.
Cada FILA de la tabla representa un cliente distinto, debito al formato
tubular
todos tiene los mismos atributos. Las filas también se denominan registros.
Cada fila se compone de un conjunto de VALORES individuales que se
Corresponden con las columnas. Cada valor debe tener el tipo de datos
especifico por su columna.
4. CLAVES. Cada tabla tiene que estar identificada con
una Clave principal la cual permite diferenciar a cada
fila.
Por ejemplo: Si tiene una tabla con nombres repetidos
de la persona «María» y desea borrar a uno de ellos por
medio de una consulta, al momento de eliminar a
la persona «María» se eliminaran todos las filas que
contenga el nombre María, para que no ocurra esto se
crea una clave principal para cada fila la cual la hace
diferente al resto.
Las bases de datos suelen constar de varias tablas y
utilizan una clave para asociar una tabla a otra.
5.
6. Esta es la mejor manera de relacionar los datos que
se ingresan a las tablas si
usted ingresara los pedidos y los datos personal
Juan mateo en una sola tabla se mostraría de la
siguiente manera.
7. Primera forma Normal
Establece que las columnas repetidas deben
eliminarse y colocarse en tablas separadas.
8. Que todas las dependencias parciales se
deben eliminar y separar dentro de sus
propias tablas.
Una dependencia parcial es un termino que
se describe aquellos datos que no dependen
de la clave de la clave de la tabla para
identificarlos.
9. Los campos calculados no deben ser
almacenados en las columnas de las tablas.
Ejemplo:
Sueldo= ingresos - egresos
10. Las claves secundarias representan una
relación entre los datos de dos tablas.
Por ejemplo e! vinculo de Pedidos a clientes
representan una relación entre una fila de la
tabla pedidos y una fila de la tabla clientes.
Existen 3 tipos básicos de relaciones en una
de datos relacional.
Se clasifican en función del numero de
elementos que haya a cada lado de la
relación, las relaciones pueden ser uno a uno,
uno a varios o varios a uno.
11. La tarea más difícil consiste en determinar
cuándo se necesita una tabla y cuál
Debería ser la clave. Existe una gran cantidad
de material y programas dedicados a estudiar
los diagramas de relación de entidad y de
normalización de bases de datos, pero
explicar sobre este tema seria muy extenso.
Sin embargo, en la mayor parte de los casos,
basta con seguir unos sencillos principios
básicos de diseño.
12. 1.- Antes de empezar a diseñar primero debemos analizas los datos
que se van a
ingresar a la base datos.
2.- Para este ejemplo analizaremos los datos con los que trabaja una
editorial .
entre los datos con los que trabajan destacan: clientes, pedidos,
ordenes de
pedidos y libros.
3.- Ahora cree una tabla Clientes con los datos de los clientes
nombres, dirección.
ciudadID y una la clave principal clienteID la cual distinguirá a cada
cliente.
4.- Cada cliente va a tener varios pedidos y ordenes de pedidos, como
explicamos
anteriormente almacenar todo en una sola tabla no seria
recomendable, así que
crearemos la tabla pedidos con los campos monto, fecha, la clave
principal
clientelO y ordenID.
13. 1.- Cuando se ingresa el primer cliente a la tabla clientes, automáticamente su
clave principal se genera un numero para este ejemplo su clave principal es
clienteID
Ejemplo: Cuando el cliente haga 10 pedidos y estos datos se almacenan en la
tabla pedidos necesitamos crear una relación para saber que estos pedidos es
He este cüer.íc. ía relación scií» cuentes.ciientelU = pedidos.cliontul 1)
2.- Cada pedido contiene una orden de pedido donde se almacenada la
cantidad de libros y los nombres de los libros, para esto necesitamos crear
una relación de la tabla pedidos a la tabla orden Ejemplo: Luego de que el
cliente genern un pedido su clave cliente ID se añade a la tabla pedidos
donde se genera a su vez una clave ordenID la cual indicara su orden de
pedido La relación seria pedidos.oroio ordenID = orden.ordenID
3.- Cada orden de pedido se dohc^ detalla con la cantidad de libros y los tipos
de libros seleccionados.
Ejemplo: luego que se ha gcnesnsenerado la clave ordenID esta se guardara en
la tabla orden, con la ¿lave del libro libdil o librolD y la cantidad de libros a
pedir, la relación seria, orden.libroloivroID = lirbos.librosID
14.
15. Aprecie bien el gráfico 23, notaremos
incluso que se pueden crear 2 relaciones nías.
Si visualizamos bien la tabla clientes y libros
se puede crear una relación mas de cada una
de ellas.
16.
17. Asegúrese de que las claves seleccionadas
son exclusivas. En nuestro caso,
hemos creado una clave especial para los
clientes (clienteID) y para los pedidos
(ordenlD) porque es posible que estos
objetos del mundo real no dispongan de
manera natural de un identificador con
garantías de exclusividad.
18. Enlazando con la sección anterior, piense en
las preguntas que desea que responda
la base de datos. Por ejemplo, ¿cuáles son los
libros que más se vende?).
Asegúrese de que la base de datos contiene
todos los datos necesarios y que se
han establecido los vínculos adecuados entre
las tablas para responder a las
preguntas deseadas
19. Si desea agregar descripciones de libros a la base
de datos, dispone al menos dos
formas de hacerlo.
- La primera consiste en agregar la columna
descripción a la tabla Libros. En
esta solución se incluye un campo nuevo de
reseña para cada libro. Si la base
de datos consta de una gran cantidad de libros y
el encargado de las reseñas
no tiene previsto crear una para cada libro,
muchas filas quedarán vacías. Es
lo que se conoce como valor nulo. (Ver Gráfico
71)
20.
21. MySQL consta de cuatro tipos de
idcntificadores: las bases de datos, las tablas,
las columnas (elementos que ya conocemos)
y los alias.
22.
23. En MYSQL existe três tipos básicos de columnas
numérico, de fecha y hora y de cadena. Cada
categoría incluye un gran número de tipos. Cada uno
de los tres tipos dispone de varios tamaños de
almacenamiento. Al
seleccionar un tipo de columna, el principio general
consiste en escoger el tipo más pequeño en el que
encajen los datos.
Muchos de los tipos permiten especificar el tamaño
máximo de visualización al crear la columna. Esta
opción se identifica en las siguientes tablas con una
M. Si resulta opcional se coloca entre corchetes. El
valor máximo que se puede especificar para M es
255.
24.
25.
26.
27.
28. En primer lugar, están las antiguas cadenas planas, es decir, pequeños fragmentos
de texto. Se trata de los tipos CHAR (carácter de longitud fija) y VARCHAR (carácter de
longitud variable). Puede especificar la anchura de cada una. Las columnas de tipo
CHAR se rellenarán con espacios hasta cubrir la anchura máxima, independientemente
del tamaño de los datos. (MySQL elimina los espacios que sobran a la derecha de
CHARS al recuperarlos y de VARCHARS al almacenarlos.)
En segundo lugar, están los tipos TEXT y BLOB. Estos tipos disponen de varios
tamaños. Equivalen a texto largo y datos binarios, respectivamente. Los BLOB son
objetos largos, binarios. Pueden incluir todo lo que se necesite, por ejemplo, imágenes
o sonidos. En la práctica, las columnas BLOB y TEXT son iguales con la salvedad de
que TEXT discrimina entre mayúsculas y minúsculas, y BLOB no lo hace. Como estos
tipos de columna pueden contener grandes cantidades de datos, es necesario tener en
cuenta una serie de consideraciones.
Fl tercer grupo consta de dos tipos especiales. SFT y FNUM. El tipo SET se utiliza
para especificar que los valores de esta columna deben proceder de un conjunto de
valores dados. Los valores de columna pueden contener más de un valor del conjunto.
Cada conjunto especificado puede contener un máximo de 64 elementos. ENUM es una
enumeración. Es muy similar a SET, con la excepción de que las columnas de este tipo
sólo pueden tener uno de los valores especificados
o NULL y e! máximo número de elementos de la enumeración será de 65.535.
29.
30.
31.
32. CRÉATE TABLE permite crear la tabla con los nombres de los campos que le
proporcionamos.
NOT NULL significa que todas las filas de la tabla deben tener un valor en este
atributo. Si no se especifica, el campo puede dejarse en blanco (NULL).
AUTO-INCREMENT es una función especial de MySQL que puede utilizar sobre
columnas de tipo entero. Significa que si dejarnos el campo en blanco al insertar
filas en la tabla. MySQL generará automáticamente un valor de
identificación exclusivo Este valor será una unidad mayor que el valor máximo
incluido en la columna. Solo puede tener una columna de este tipo por tabla. Las
columnas que especifiquen AUTO_INCREMENT deben estar indexadas.
El uso de la palabra clave PRIMARY KEY tras el nombre de una columna
determina que la columna se tratará como la clave principal de la tabla. Las
entradas de esta columna deben ser exclusivas. MySQL indexará
automáticamente esta columna. Fíjese en que en el listado anterior al utilizarlo
con clienteid en la tabla clientes se ha hecho con AUTO-INCREMENT. La
indcxación automática sobre la clave principal se encarga del índice que necesita
AUTO-INCREMENT.