Longitud de una cadena en MySQL con length y char_length

En este post voy a explicar el uso y la sintaxis de las funciones length y char_length en MySQL, ambas permiten trabajar con cadenas pero devuelven un resultado distinto.

Además de ver las diferencias entre LENGTH y CHAR_LENGTH voy a explicar su sintaxis con ejemplos.

Cabe mencionar que estas funciones devuelven la longitud de una cadena pero de manera distinta debido a eso de los caracteres multibyte,

(más…)

Instalar LAMP y phpmyadmin en Ubuntu

En este post vamos a ver cómo instalar la pila de LAMP en Ubuntu; es decir, vamos a instalar Apache, MySQL y PHP en Ubuntu.

Adicional a ello veremos cómo instalar phpmyadmin para administrar MySQL desde el navegador web con una interfaz amigable.

También veremos cómo configurar MySQL, probar la instalación de PHP y probar phpmyadmin.

Nota: esto lo vamos a hacer con tasksel, un “gestor” de Ubuntu. Será algo sencillo.

Nota 2: si usas Windows mira este tutorial.

(más…)

MySQL y MariaDB - Chequeo de claves foráneas al truncar tabla

Truncar tabla de MySQL o MariaDB desactivando claves foráneas

En este post voy a explicar cómo truncar una tabla de MySQL o MariaDB sin que nos estorben las claves foráneas o foreign keys.

MySQL y MariaDB - Chequeo de claves foráneas al truncar tabla

MySQL y MariaDB – Chequeo de claves foráneas al truncar tabla

Al truncar una tabla con MySQL, si esta tiene referencias a otras tablas, saldrá un error que dice más o menos así:

ERROR 1701 (42000): Cannot truncate a table referenced in a foreign key constraint (base_de_datos.tabla, CONSTRAINT alguna_referencia FOREIGN KEY (alguna_clave) REFERENCES base_de_datos.otra_tabla (clave))

Esto es por seguridad, ya que al truncar se eliminarían si tuviéramos la opción de cascada al eliminar datos. En fin, veamos cómo truncar una tabla aunque tenga referencias a otras.

(más…)

Creación de tabla dentro de MySQL con migración de Laravel

CRUD de Laravel con MySQL: administrador de canciones

CRUD de Laravel con MySQL o MariaDB

Hoy toca el turno de Laravel (un framework de PHP) para conectarse a la base de datos más popular: MySQL.

Creación de tabla dentro de MySQL con migración de Laravel

Creación de tabla dentro de MySQL con migración de Laravel

En este post voy a explicar cómo conectar Laravel con MySQL o MariaDB, comenzando por configurar la base de datos, pasando a través de las rutas, repasando el motor de plantillas de Blade y tocando un poco el tema de los mensajes flash.

Al final vamos a tener un CRUD o ABC, en donde se verán las operaciones básicas de Laravel con MySQL: insert o insertar, update o actualizar, select o seleccionar y finalmente delete o eliminar.

(más…)

Conectar a servidor de MySQL sobre Android

Configurar servidor de MySQL o MariaDB en Android para permitir conexiones remotas

Ya estamos aquí con otro tutorial de MySQL con Android usando Termux. En este post veremos cómo permitir conexiones remotas a nuestro dispositivo Android, de esta manera podremos usarlo como servidor de base de datos.

No es nada difícil, solamente asegúrate de saber cómo instalar el servidor, así como iniciarlo y detenerlo; cosa que se explica detalladamente en: Instalar MariaDB en Android con Termux.

Una vez sabiendo eso, comencemos.

(más…)

Like de SQL con PHP y PDO

Búsqueda en MySQL con PHP y PDO: con like y coincidencia exacta

Esta es la tercera parte de los tutoriales sobre cómo consumir una base de datos de MySQL desde PHP usando PDO para ejecutar las consultas.

Puedes ver la primera parte aquí, y la segunda aquí. Lo que nos reúne en esta ocasión es la búsqueda en tablas desde PHP.

Para hacer una búsqueda usando comodines se usará la sentencia LIKE de MySQL, y para buscar de manera exacta un simple where.

(más…)

Respaldos de BD creados cada minuto usando cron

Respaldar base de datos de MySQL automáticamente usando cron en Ubuntu

Combinar cron y mysqldump para respaldar base de datos cada cierto tiempo

Hace algún tiempo vimos cómo respaldar una base de datos completa en MySQL usando mysqldump sin exponer nuestras credenciales.

Hoy veremos cómo respaldar la base de datos pero cada cierto tiempo. Es decir, podríamos respaldarla cada semana, cada hora, todos los domingos o en cualquier momento del tiempo gracias a cron.

Resumiendo, veremos cómo crear un respaldo de una base de datos de manera periódica y automática usando cron, Linux, mysql y un script que he programado.

(más…)

Archivo de Excel que vamos a importar hacia MySQL usando PHP

Importar datos de Excel a MySQL con PHPSpreadSheet, PDO y PHP

Importar datos de Excel a base de datos de MySQL usando PHP

Ya vimos cómo exportar datos de MySQL a un libro de Excel. Ahora haremos el proceso inverso: a partir de un archivo de Excel leer algunas hojas y poner sus datos dentro de nuestra base de datos de MySQL.

Digo muy en serio que vamos a hacer el proceso inverso, porque usaré la misma base de datos que en el post anterior así que recomiendo leerlo antes.

(más…)

Hoja de Productos dentro de libro con contenido de MySQL

Exportar datos de MySQL a Excel con PHP, PHPSpreadSheet y PDO

Crear libro de Excel a partir de una base de datos de MySQL

En este artículo voy a explicar cómo podemos exportar los datos de una base de datos de MySQL a un archivo de Excel u hoja de cálculo.

Vamos a usar PDO para conectar a la base de datos, y PHPSpreadSheet para crear un archivo de Excel y escribirle los datos traídos desde la tabla de la BD.

Actualización: mira este post para aprender a copiar datos de Excel a MySQL.

(más…)

Consultar datos de una tabla usando un cursor - PDO, PHP y MySQL

PHP y PDO parte 2: iterar con cursor y comprobar si elemento existe

Continuación de PDO con PHP para trabajar con bases de datos

En otro post ya hemos visto las bases para trabajar con PHP, PDO y MySQL (también SQLite). Ahora veremos dos cosas que vienen de ayuda al trabajar con PDO:

  1. Seleccionar datos y recorrerlos con un cursor en lugar de obtenerlos como arreglo
  2. Comprobar si un elemento existe en la base de datos
Consultar datos de una tabla usando un cursor - PDO, PHP y MySQL

Consultar datos de una tabla usando un cursor – PDO, PHP y MySQL

El primer punto viene de maravilla cuando hablamos de rendimiento. El segundo sirve para muchas cosas, por ejemplo, ver si un usuario ya existe al registrarse o cosas de esas.

(más…)

Script para respaldar base de datos de MySQL funcionando

Script para respaldar base de datos de MySQL / MariaDB en Linux usando MySQLDump

En este tutorial de Linux vamos a ver cómo respaldar o hacer un backup de una base de datos completa de MySQL o MariaDB usando la utilidad de MySQLDump también llamada mysqldump.

Todo eso será llamado desde un script sh programado por nosotros.

Por otro lado, veremos cómo no exponer nuestras credenciales de acceso para llamar al comando sin pasarle nuestra contraseña, evitando así riesgos de seguridad.

La segunda parte del tutorial (que traeré muy pronto) indicará cómo respaldar una base de datos periódicamente con cron, es decir, respaldarla cada mes, a diario o cada determinado tiempo.

Nota: este tutorial está probado con ubuntu 16.04 y 18.10 pero debería funcionar para otras versiones. Por cierto, aquí puedes ver cómo instalar y configurar MySQL en Linux en caso de que no lo tengas instalado.

(más…)