Migraciones en laravel

Migraciones en laravel

Las migraciones en laravel nos permiten tener un control de versiones sobre nuestra base de datos, es decir, podemos crear el esquema de una tabla como veremos, ejecutarlo para crear la tabla, y, a continuación haciendo uso del método rollback podemos volver al estado anterior, es decir, en nuestro caso eliminaría la tabla, para hacer esto debemos hacer uso del comando que viene incorporado con laravel, que es artisan.

Las migraciones en laravel tienen dos métodos, el up y el down, en el up es donde crearemos la estructura de nuestra tabla a través de la clase Schema de laravel y haciendo uso del método create, en el método down simplemente haremos uso de drop de la clase schema para poder volver atrás por si hemos cometido algún error, veremos un sencillo ejemplo sobre migraciones, para en el próximo tutorial empezar con formularios, veamos.

Lo primero que debemos hacer es crear nuestro proyecto laravel, el que tenga dudas que pase por el tutorial que trata sobre como instalar laravel.

Crear migraciones en laravel

Una vez creado, daremos por hecho que se llama migraciones.com.

Una vez creado el proyecto y abierto con nuestro editor favorito, debemos configurar el archivo application/database.php que es donde se guarda la configuración de nuestra base de datos, lo abrimos y modificamos la clave mysql con los datos de nuestra conexión, en mi caso queda de la siguiente forma.

Simplemente he tenido que modificar el nombre de la base de datos por el mío, una vez hecho ya podemos abrir la consola y dirigirnos a nuestro proyecto, en mi caso como estoy en la raíz del disco c será cd c://migraciones, una vez colocados en nuestro proyecto debemos hacer uso de artisan para crear una nueva migración que representará a una tabla llamada usuarios, veamos.

Así de fácil, si todo ha ido bien, nos dirá Great! New migration created, lo que significa que podemos dirigirnos a la carpeta migrations de nuestro proyecto, en el cuál veremos que un nuevo archivo llamado año_mes_dia_horaminutosegundos_usuarios.php ha sido creado, laravel hace uso de la fecha actual para obtener un control de versiones sobre nuestra base de datos.

Si abrimos el archivo veremos como hemos comentado anteriormente una clase llamada usuarios que contiene dos métodos, el up y el down, sin nada más de código.

Ahora somos nosotros los que debemos decirle a laravel el esquema que queremos para nuestra tabla usuarios, ¡así que a trabajar!

Con la clase usuarios abierta, copiamos y pegamos el siguiente código, el cuál será el que le diga a laravel que cree nuestra tabla usuarios a través del método up, y, a través del método down podremos tener la opción de hacer un rollback o paso atrás sobre nuestro trabajo, veamos.

Como podemos ver, es bastante comprensible el código , creamos un esquema para crear una tabla llamada usuarios, un detalle interesante es tabla->timestaps(), con esto, le decimos a laravel que nos cree dos campos en la base de datos y que tengan valores por defecto, uno será created_at, osea cuando fue creado el registro, y otro será updated_at, que será cuando fue actualizado, muy interesante.

El resto de código está más que explicado, ahora estamos listos para crear la tabla usuarios, pero para ello debemos volver a la consola y ejecutar los siguientes comandos.

Con esto laravel crea una tabla llamada laravel_migrations que será la que utilizará para gestionar el control de versiones sobre nuestra base de datos. Ahora sólo nos queda crear nuestra tabla usuarios, no puede ser más sencillo.

Con eso laravel comprobará las migraciones que se han creado y que debe llevar a cabo, si encuentra alguna la llevará a cabo, en caso contrario nos dirá que no hay trabajo por hacer.

Si ahora abrimos nuestra base de datos, veremos que efectivamente se han creado las dos tablas, laravel_migrations y usuarios.

Ahora para probar, podemos escribir el siguiente comando en la consola.

Si ahora vamos a ver nuestra base de datos y actualizamos, nuestra tabla usuarios habrá desaparecido, laravel ha desecho el último movimiento, si volvemos a hacer.

Veremos que nuestra tabla usuarios vuelve a revivir, así de sencillo son las migraciones en laravel.

Así de sencillo es utilizar migraciones en laravel, con esto ya empezamos a estar en condiciones de crear formularios y insertar datos, obtenerlos, eliminar y actualizar, todo esto lo iremos viendo en próximos tutoriales, espero que se haya entendido, un saludo.

42 Comentarios

  1. Antonio 16 marzo, 2014
    • Julio 28 marzo, 2014
  2. antonio 30 marzo, 2014
  3. antonio 4 abril, 2014
    • israel965 4 abril, 2014
  4. rodrigo 9 julio, 2014
    • israel965 9 julio, 2014
  5. Gustavo Ariel 9 septiembre, 2014
    • Gustavo Ariel 9 septiembre, 2014
  6. Rodrigo 3 octubre, 2014
    • israel965 3 octubre, 2014
  7. Rodrigo 3 octubre, 2014
    • Eday Gonzalez 14 mayo, 2015
  8. Rodrigo 3 octubre, 2014
    • israel965 5 octubre, 2014
  9. Rodrigo 5 octubre, 2014
    • israel965 6 octubre, 2014
  10. Lucas 3 noviembre, 2014
    • israel965 5 noviembre, 2014
  11. Christian mulatillo panduro 2 diciembre, 2014
    • israel965 2 diciembre, 2014
  12. Juan Luis 15 diciembre, 2014
    • israel965 15 diciembre, 2014
  13. Luis 8 abril, 2015
    • israel965 8 abril, 2015
  14. jc1992 13 mayo, 2015
    • israel965 13 mayo, 2015
    • Scaleto 13 mayo, 2015
      • israel965 13 mayo, 2015
  15. Eday Gonzalez 14 mayo, 2015
  16. nestor morales 30 junio, 2015
    • israel965 30 junio, 2015
  17. Ricardo 28 julio, 2015
    • israel965 29 julio, 2015
  18. Lizbeth Andrade 2 octubre, 2015
    • israel965 2 octubre, 2015
      • Lizbeth Andrade 2 octubre, 2015
        • israel965 2 octubre, 2015
  19. Daniel 30 octubre, 2015
    • israel965 30 octubre, 2015
  20. jhoan zabala 2 agosto, 2016
    • israel965 4 agosto, 2016

Añade un comentario

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información. ACEPTAR