Base de Datos de MYSQL Base de Datos de MYSQL¡ OBJETIVO: finalizar la unidad el participante será capaz de realizar la instalación correspondiente de la base de datos MySQL como también el cómo desarrollar una base de datos con sus respectivas tablas. Base de Datos de MYSQL CREACION DE TABLAS Y BASE DE DATOS MYSQL ¿Qué es MySQL? MySQL es un sistema de gestión de bases de datos relacionales (RDBMS) de código abierto respaldado por Oracle y basado en el lenguaje de consulta estructurado (SQL). MySQL funciona prácticamente en todas las plataformas, incluyendo Linux, UNIX y Windows. Aunque puede utilizarse en una amplia gama de aplicaciones, MySQL se asocia más a menudo con las aplicaciones web y la publicación en línea. ¿Cómo funciona MySQL? MySQL se basa en un modelo cliente-servidor. El núcleo de MySQL es el servidor MySQL, que maneja todas las instrucciones (o comandos) de la base de datos. El servidor MySQL está disponible como un programa independiente para su uso en un entorno de red cliente-servidor y como una biblioteca que puede ser incrustada (o enlazada) en aplicaciones independientes. Algunas características de MySQL son: • Permite escoger múltiples motores de almacenamiento para cada tabla. • Agrupación de transacciones, pudiendo reunirlas de forma múltiple desde varias conexiones con el fin de incrementar el número de transacciones por segundo. • Conectividad segura. • Ejecución de transacciones y uso de claves foráneas. Base de Datos de MYSQL GESTOR DE DATOS LIBRES Un Sistema Gestor de ES BaseDEdeBASES Datos (SGBD) o DGBA (Data Base Management System) es un conjunto de programas no visibles que administran y gestionan la información que contiene una base de datos Los gestores de base de datos o gestores de datos hacen posible administrar todo acceso a la base de datos ya que tienen el objetivo de servir de interfaz entre ésta, el usuario y las aplicaciones. Los sistemas de gestores libres son aquellos que podemos descargar sin tener que pagar alguna cantidad, por ejemplo: SGBD MySQL Descripción Es un sistema de gestión de base de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones. Distribuido bajo dos tipos de licencias, comercial y libre. Multiplataforma, posee varios motores de almacenamiento, accesible a través de múltiples lenguajes de programación y muy ligado a aplicaciones web. PostgreSQL Sistema Relacional Orientado a Objetos. Considerado como la base de datos de código abierto más avanzada del mundo. Desarrollado por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre y/o apoyados por organizaciones comerciales. Es multiplataforma y accesible desde múltiples lenguajes de programación. Firebird Sistema Gestor de Base de Datos relacional, multiplataforma, con bajo consumo de recursos, excelente gestión de la concurrencia, alto rendimiento y potente soporte para diferentes lenguajes. Apache Derby SQLite Sistema Gestor escrito en Java, de reducido tamaño, con soporte multilenguaje, multiplataforma, altamente portable, puede funcionar embebido o en modo cliente/servidor. Sistema relacional, basado en una biblioteca escrita en C que interactúa directamente con los programas, reduce los tiempos de acceso siendo más rápido que MySQL o PostgreSQL, es multiplataforma y con soporte para varios lenguajes de programación. Base de Datos de MYSQL INSTALACION DE LA BASE DE DATOS MYSQL 1. 2. En nuestro navegador de preferencia colocamos XAMPP Descargar Damos clic en la primera opción que nos aparece. 3. Nos lleva a la siguiente pagina donde deberemos seleccionar la versión mas reciente y para el sistema operativo que queremos descargar. 4. Nos aparecerá el archivo que hemos descargado Base de Datos de MYSQL 5. Copiamos la carpeta descargada en nuestro escritorio, damos clic derecho sobre la carpeta y seleccionamos ejecutar como administrador. 6. Esperamos que cargue y damos clic en Next (siguiente) 7. Una vez de haber hecho clic en Next le aparecerán todos los componentes del Xampp seleccionados por default haga clic en Next. 8. Luego le aparecerá la suiguiente pantalla donde seleccionara donde sera instalado el Xampp por defecto le aparecera en disco loca C, damos clic en next. Next. Base de Datos de MYSQL 9. La siguiente pantalla elegimos el idioma en que se va instalar el XAMPP. 10. Para iniciar la instalación damos clic en Next (tardara unos minutos) Base de Datos de MYSQL 11. Al aparecer la siguiente pantalla nos indica que la instalación está por terminar, damos clic en Finish. 12. Seleccionamos las opciones Start, para iniciar los servicios de Apache y Mysql. Importante: siempre que vaya a trabajar con MySQL, debe iniciar los Servicios, si no los inician no podrá trabajar con MySQL. Así finaliza la instalación exitosa de MYSQL. Base de Datos de MYSQL PASOS PARA CREAR UNA BASE DE DATOS Una base de datos es una recopilación organizada de información o datos estructurados, que normalmente se almacena de forma electrónica en un sistema informático. Para empezar a trabajar con la base datos, necesitas crear las tablas y los campos de la misma. Encendemos los servicios del XAMPP, para ellos realizamos los siguientes pasos: 1.Clic botón Inicio 2. Buscamos la carpeta llamada XAMPP 3.Clic en XAMPP Control Panel Base de Datos de MYSQL 4. Nos aparecerá la siguiente pantalla damos clic en star de la opción a mapache y MySQL, para dar como iniciados los servicios de Xammp. 5.Para iniciar a trabajar en MYSQL abrimos nuestro navegador de preferencia accedemos a: localhost/phpmyadmin y damos enter. Base de Datos de MYSQL 6.Nos debe de aparecer la siguiente pantalla donde empezaremos a trabajar con MYSQL. 7.En el menú damos clic en la opción Bases de datos, y nos aparecerá la opción para darle nombre a nuestra Base de Datos la llamaremos Sistemas y damos clic en crear. Base de Datos de MYSQL FUNCIONES DE LA BARRA DE MENU A continuacion se detalla la función de cada uno de las opciones de la barra de menu: Una vez que tenemos la base de datos MySQL, podemos ver un menú con una lista de opciones creadas. A continuación se presenta la definición de las opciones de la barra de menú mostradas anteriormente: 1. Bases de datos: es aquí donde aparecen todas las bases de datos que tiene el MySQL, como tambien la opcion de crear una nueva base de datos. 2. SQL: en esta opción se ejecutarán todas las instrucciones del sql, ósea la manipulación de los datos de la base de datos. 3. Estado actual: esta opción da información acerca del tiempo de ejecución del proceso principal. 4. Cuenta de Usuarios: son todos aquellos usuarios creados en la base de datos o usuarios del sistema. 5. Exportar: en este opción podemos exportar tablas, bases de datos etc, ósea extraer lo antes mencionado. Usualmente se exporta en formato SQL. 6. Importar: desde aquí podemos buscar bases de datos externas que tengamos en nuestro PC. 7. Configuracion: Realizamos los ajustes de los archivos que queremos importat o exportar. 8. Replicacion: Se hace la configuracion de las replicas del servidor. 9. Más: sirve para otras opciones como, importar tablas y bases de datos etc...Con esto se transportan los datos al MySQL. Base de Datos de MYSQL CREACIÓN DE TABLAS DE UNA BASE DE DATOS A continuación, se detallan los pasos para crear una tabla. Para ello debe situarse en el PASO 7 y así continuar con los pasos de la presente página: 1. Damos clic en la base de datos que creamos anteriormente 2. Agregamos el nombre la tabla en este caso “Cliente” 3. Agregamos el número de columnas que va tener nuestra tabla, damos clic en crear. 4. En apartado nombre colocamos los nombres que tendrán nuestras columnas (Id, Nombre, edad, genero, teléfono, dirección, correo) Importante: en los campos no se permite palabras con tildes. 5. Apartado Tipo: seleccionamos el tipo de dato que tendremos (Int, Varchar, text, date) dependiendo el nombre del campo. Base de Datos de MYSQL 6. Longitud: es el tamaño del campo. 7. Una vez culminados los campos nos dirigimos a la parte inferior de nuestra pantalla, en el Motor de almacenamiento seleccione InnoDB, que es el motor de almacenamiento que vamos a usar para la base de datos. 8. Hacemos clic en guardar, para que queden almacenados los campos de nuestra tabla. Y se nos mostrara nuestra tabla creada en la base de datos Sistemas Base de Datos de MYSQL TIPOS DE DATOS EN MYSQL Un tipo de dato es un espacio en memoria con restricciones. El nombre del campo puede ser de diferentes tipos, estos se pueden agrupar en tres grandes categorías, las cuales definimos a continuación: 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 BIT Ó BOOL SMALLINT MEDIUMINT INTEGER, INT BIGINT FLOAT XREAL, DOUBLE DECIMAL, DEC, NUMERIC 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 un número entero que puede ser 0 ó 1 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. 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. 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 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 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 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 número en coma flotante desempaquetado. El número se almacena como una cadena Base de Datos de MYSQL Tipos de Fecha 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-día. DATETIME combinación de fecha y hora. El rango de valores va desde el1 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. E TIMESTAMP 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. Tipos de Cadena Los diferentes tipos de cadena son: Char(n) VarChar(n) almacena una cadena de longitud fija. La cadena podrá contener desde 0 a 255 caracteres. almacena una cadena de longitud variable. La cadena podrá contener desde 0 a 255 caracteres. Base de Datos de MYSQL DIFERENCIAS CHAR, VARCHAR Y TEXT EN MYSQL La mayoría de veces que trabajamos con cadenas en MYSQL no nos ponemos a pensar cuando utilizar uno u otro tipo de dato. A continuación veamos las diferencias más básicas. • El tipo Char, se debe de usar para cadenas con un tamaño fijo: por ejemplo folios, claves, matrículas. Que es lo que pasa si por ejemplo declaro un char de 5 y solo ocupo 2 espacios, pues el manejador de base de datos lo rellena por lo que se podría decir que 3 espacios quedan desperdiciados. • El tipo Varchar, se debe usar para cadenas cuyo tamaño es variable. La principal diferencia entre el tipo text y varchar, es que el tipo text no acepta valores default o predeterminados. Veamos a que se refiere: - Longitud: se refiere al tamaño del campo - Predeterminado: es el valor que tiene por defecto el campo.