Manejo de Datos MySQL

- Si es de tu interés este artículo, apoyanos compartiendo en tus redes sociales favoritas y de esa manera también incentivando a tus amigos que crees les pueda interesar a que nos lean.


Manejo de Datos MySQL


2.3 Manejo de Datos


El manejo de datos en MySQL implica manipular los registros almacenados en las tablas de una base de datos. Las principales operaciones son INSERT(para agregar nuevos registros), UPDATE (para modificar registros existentes) y DELETE(para eliminar registros). Además, es importante entender cómo trabajar con valores nulos (`NULL`), que representan la ausencia de un valor en una columna.


2.3.1 Inserción de Datos: INSERT INTO


El comando `INSERT INTO` se utiliza para agregar nuevos registros a una tabla. Puedes insertar un solo registro o múltiples registros a la vez.


2.3.1.1 Insertar un Solo Registro


La sintaxis básica para insertar un solo registro es:



INSERT INTO nombre_tabla (columna1, columna2, ...) 

VALUES (valor1, valor2, ...);



 Ejemplo:


Supongamos que tenemos una tabla `clientes` con las siguientes columnas: `id`, `nombre`, `email`, `fecha_registro`. Queremos agregar un nuevo cliente a esta tabla:



INSERT INTO clientes (nombre, email, fecha_registro) 

VALUES ('Juan Pérez', 'juan.perez@example.com', '2024-08-10');



En este ejemplo:

- Se está insertando un nuevo registro en la tabla `clientes`.

- No se especifica un valor para `id` porque se asume que es una columna auto_incremental, es decir, MySQL asigna automáticamente un valor único a `id`.


2.3.1.2 Insertar Múltiples Registros


También puedes insertar varios registros en una sola consulta:



INSERT INTO clientes (nombre, email, fecha_registro) 

VALUES 

('Ana García', 'ana.garcia@example.com', '2024-08-11'),

('Luis Martínez', 'luis.martinez@example.com', '2024-08-12');



En este ejemplo, se están agregando dos nuevos registros a la tabla `clientes` en una sola operación.


 2.3.2 Actualización de Datos: UPDATE


El comando `UPDATE` se utiliza para modificar registros existentes en una tabla. Puedes actualizar una o más columnas de uno o más registros que cumplan ciertas condiciones.


2.3.2.1 Actualizar un Solo Campo


La sintaxis básica para actualizar un solo campo es:



UPDATE nombre_tabla 

SET columna1 = nuevo_valor 

WHERE condicion;



Ejemplo:


Imagina que quieres actualizar el correo electrónico de un cliente específico:



UPDATE clientes 

SET email = 'nuevo.email@example.com' 

WHERE nombre = 'Juan Pérez';



En este caso:

- Se actualiza la columna `email` del registro donde el nombre es `Juan Pérez`.


2.3.2.2 Actualizar Múltiples Campos


También puedes actualizar múltiples columnas a la vez:



UPDATE clientes 

SET nombre = 'Juan Pérez Gómez', email = 'juan.gomez@example.com' 

WHERE id = 1;



En este ejemplo:

- Se actualizan tanto el nombre como el correo electrónico del cliente con `id = 1`.


 2.3.2.3 Actualización Masiva


Puedes actualizar múltiples registros a la vez aplicando la condición a varios registros:



UPDATE clientes 

SET fecha_registro = '2024-08-15' 

WHERE fecha_registro IS NULL;



Aquí, se actualizan todos los registros en los que `fecha_registro` es `NULL` y se les asigna la fecha `2024-08-15`.


2.3.3 Eliminación de Datos: DELETE


El comando `DELETE` se utiliza para eliminar registros de una tabla. Al igual que con `UPDATE`, puedes eliminar un solo registro o múltiples registros que cumplan ciertas condiciones.


 2.3.3.1 Eliminar un Solo Registro


La sintaxis básica para eliminar un solo registro es:



DELETE FROM nombre_tabla 

WHERE condicion;



 Ejemplo:


Si quieres eliminar un cliente específico de la tabla `clientes`:



DELETE FROM clientes 

WHERE nombre = 'Ana García';



Este comando elimina el registro donde el nombre es `Ana García`.


2.3.3.2 Eliminación Masiva


Puedes eliminar varios registros a la vez usando una condición más general:



DELETE FROM clientes 

WHERE fecha_registro < '2024-01-01';



Este ejemplo eliminará todos los registros de clientes que se registraron antes del 1 de enero de 2024.


2.3.3.3 Eliminar Todos los Registros


Si deseas eliminar todos los registros de una tabla (pero conservar la estructura de la tabla), puedes usar:



DELETE FROM nombre_tabla;



O bien:



TRUNCATE TABLE nombre_tabla;



La diferencia entre `DELETE` sin `WHERE` y `TRUNCATE` es que `TRUNCATE` es más eficiente porque no genera logs de las operaciones, pero no se puede deshacer una vez ejecutado.


 2.3.4 Operaciones con NULL


En SQL, `NULL` representa un valor desconocido o ausente. Las operaciones con `NULL` requieren un manejo especial porque `NULL` no es igual a ningún valor, ni siquiera a otro `NULL`.


 2.3.4.1 Comprobar NULL con IS NULL


Para filtrar registros donde una columna es `NULL`, utilizas `IS NULL`:



SELECT * FROM clientes WHERE email IS NULL;



Esto selecciona todos los registros donde el correo electrónico no está presente.


 2.3.4.2 Reemplazar NULL con un Valor Definido


Puedes usar la función `COALESCE` para reemplazar un valor `NULL` con un valor predeterminado:



SELECT nombre, COALESCE(email, 'sin_email@example.com') AS email 

FROM clientes;



En este ejemplo:

- Si `email` es `NULL`, la consulta devolverá `'sin_email@example.com'` en lugar de `NULL`.


Ejemplo Combinado:


Imagina que estás gestionando una tabla `inventario` para una tienda en línea:



CREATE TABLE inventario (

    id_producto INT AUTO_INCREMENT PRIMARY KEY,

    nombre VARCHAR(100),

    cantidad INT,

    precio DECIMAL(10, 2),

    fecha_actualizacion DATE

);



1. Insertar nuevos productos:

  

   INSERT INTO inventario (nombre, cantidad, precio, fecha_actualizacion) 

   VALUES 

   ('Laptop', 10, 999.99, '2024-08-10'),

   ('Mouse', 50, 19.99, '2024-08-10');

 


2. Actualizar la cantidad y el precio de un producto

   

   UPDATE inventario 

   SET cantidad = 15, precio = 949.99 

   WHERE nombre = 'Laptop';

  


3. Eliminar un producto del inventario:

 

   DELETE FROM inventario 

   WHERE nombre = 'Mouse';



4. Seleccionar todos los productos con `NULL` en `fecha_actualizacion`:


   SELECT * FROM inventario WHERE fecha_actualizacion IS NULL;



5. Actualizar todos los registros con `NULL` en `fecha_actualizacion`:

   

   UPDATE inventario 

   SET fecha_actualizacion = '2024-08-10' 

   WHERE fecha_actualizacion IS NULL;

 


 Resumen


El punto 2.3 Manejo de Datos cubre las operaciones básicas que son esenciales para mantener la integridad y la actualidad de los datos en una base de datos MySQL. Aprenderás cómo insertar nuevos datos, actualizar datos existentes, eliminar registros que ya no son necesarios y manejar valores `NULL` de manera efectiva. Estas operaciones son fundamentales para cualquier aplicación que dependa de bases de datos para almacenar y manipular información.



Clic para ver los demas Capitulos : MySQL desde Básico hasta Avanzado


No hay comentarios