ULISES URIEL PEREZ GUERREROPROGRAMACIÓN3-EDISEÑA BASES DE DATOS AVANZADAS
Diapositiva 2
¿QUE ES MySQL?
MySQL
es un sistema de
administración de bases de datos. No
es más que una aplicación que permite gestionar archivos llamados de bases de
datos. Existen
muchos tipos de bases de datos, desde un simple archivo hasta sistemas
relacionales orientados a objetos. MySQL, como base de datos relacional,
utiliza multiples tablas para almacenar y organizar la información. MySQL fue
escrito en C y C++ y destaca por su gran adaptación a diferentes entornos de
desarrollo, permitiendo su interactuación con los lenguajes de programación más
utilizados como PHP, Perl y Java y su integración en distintos sistemas
operativos.
Diapositiva 3
También
es muy destacable, la condición de open source de MySQL, que hace que su
utilización sea gratuita e incluso se pueda modificar con total libertad,
pudiendo descargar su código fuente. Esto ha favorecido muy positivamente en su
desarrollo y continuas actualizaciones, para hacer de MySQL una de las
herramientas más utilizadas por los programadores orientados a Internet.
1:#mysql -uroot -p ( para entrar al entorno de
MySql ) 2.- mysql>create database
nombre_bd; ( para crear una Base de Datos )3.-mysql>show databses; ( vemos la
bases de datos creadas )4.-mysql>use nombre_bd ( para trabajar con una bases de
datos específica )5.-mysql>show tables; ( vemos las tablas de la base de datos
)mysql>drop database nombre_bd; ( eliminamos una base de datos .6.-mysql>exit
( salimos del entorno del MySql )#
Diapositiva 5
7.-mysql
nombre_bd -u root -p 8.-#mysqldump nombre_bd -u
root -p > /mnt/usb/nombre_bd.sql ( para copiar la estructura de una base de
datos desde el equipo hacia un pen drive )
Después
de la fase de diseño de una base de datos, y una vez se ha realizado el paso a
tablas del mismo, en necesario crear las tablas correspondientes dentro de la
base de datos. Para cada campo de cada una de las tablas, es necesario
determinar el tipo de datos que contiene, para de esa forma ajustar el diseño
de la base de datos, y conseguir un almacenamiento óptimo con la menor
utilización de espacio. El presente artículo describe cada uno de los tipos de
datos que puede tener un campo en Mysql, para la versión 4.xx.xx.
Diapositiva 7
1-Tipos numéricos:
Existen tipos de datos numéricos, que se pueden
dividir en dos grandes grupos, los que están en coma flotante (con decimales) y
los que no.
TinyInt: es un número
entero con o sin signo. Con signo el rango de valores válidos va desde -128 a
127. Sin signo, el rango de valores es de 0 a 255
Bit ó Bool: un número
entero que puede ser 0 ó 1
SmallInt: número entero con
o sin signo. Con signo el rango de valores va desde -32768 a 32767. Sin signo,
el rango de valores es de 0 a 65535.
MediumInt: número entero
con o sin signo. Con signo el rango de valores va desde -8.388.608 a 8.388.607.
Sin signo el rango va desde 0 a16777215. Integer,
Int: número entero con o sin signo. Con signo el rango
de valores va desde -2147483648 a 2147483647. Sin signo el rango va desde 0 a
429.4967.295
BigInt: número entero con o
sin signo. Con signo el rango de valores va desde -9.223.372.036.854.775.808 a
9.223.372.036.854.775.807. Sin signo el rango va desde 0 a
18.446.744.073.709.551.615.
Float: número pequeño en
coma flotante de precisión simple. Los valores válidos van desde
-3.402823466E+38 a -1.175494351E-38, 0 y desde 1.175494351E-38 a 3.402823466E+38.
xReal, Double: número en
coma flotante de precisión doble. Los valores permitidos van desde
-1.7976931348623157E+308 a -2.2250738585072014E-308, 0 y desde
2.2250738585072014E-308 a 1.7976931348623157E+308
Decimal, Dec, Numeric: Número
en coma flotante desempaquetado. El número se almacena como una cadena
Diapositiva 8
A la hora de almacenar fechas, hay que tener en cuenta que Mysql no comprueba
de una manera estricta si una fecha es válida o no. Simplemente comprueba que
el mes está comprendido entre 0 y 12 y que el día está comprendido entre 0 y
31.
Date: tipo fecha, almacena
una fecha. El rango de valores va desde el 1 de enero del 1001 al 31 de
diciembre de 9999. El formato de almacenamiento es de año-mes-dia
Date Time: Combinación de
fecha y hora. El rango de valores va desde el 1 de enero del 1001 a las 0
horas, 0 minutos y 0 segundos al 31 de diciembre del 9999 a las 23 horas, 59
minutos y 59 segundos. El formato de almacenamiento es de año-mes-dia horas:
minutos: segundos
Time Stamp: Combinación de
fecha y hora. El rango va desde el 1 de enero de 1970 al año 2037. El formato
de almacenamiento depende del tamaño del campo:
Time: almacena una hora. El
rango de horas va desde -838 horas, 59 minutos y 59 segundos a 838, 59 minutos
y 59 segundos. El formato de almacenamiento es de 'HH:MM:SS'
Year: almacena un año. El
rango de valores permitidos va desde el año 1901 al año 2155. El campo puede
tener tamaño dos o tamaño 4 dependiendo de si queremos almacenar el año con dos
o cuatro dígitos.
Char(n): almacena una
cadena de longitud fija. La cadena podrá contener desde 0 a 255
caracteres.
VarChar(n): almacena una
cadena de longitud variable. La cadena podrá contener desde 0 a 255
caracteres.
Dentro de los tipos de cadena se pueden distinguir otros dos subtipos, los tipo
Test y los tipo BLOB (Binary large Object)
La diferencia entre un tipo y otro es el tratamiento que reciben a la hora de
realizar ordenamientos y comparaciones. Mientras que el tipo test se ordena sin
tener en cuenta las Mayúsculas y las minúsculas, el tipo BLOB se ordena
teniéndolas en cuenta.
Los tipos BLOB se utilizan para almacenar datos binarios como pueden ser
ficheros.
TinyText y TinyBlob: Columna
con una longitud máxima de 255 caracteres.
Blob y Text: un texto con
un máximo de 65535 caracteres.
MediumBlob y MediumText: un
texto con un máximo de 16.777.215 caracteres.
LongBlob y LongText: un
texto con un máximo de caracteres 4.294.967.295. Hay que tener en cuenta que
debido a los protocolos de comunicación los paquetes pueden tener un máximo de
16 Mb.
Enum: campo que puede tener
un único valor de una lista que se especifica. El tipo Enum acepta hasta 65535
valores distintos Set: un campo que puede
contener ninguno, uno ó varios valores de una lista. La lista puede tener un
máximo de 64 valores.