Bases de datos y tablas en MySQL
Manejo de bases de datos, tablas y registros en MySQL
En MySQL se pueden crear varias bases de datos y dentro de éstas se pueden crear varias tablas. A su vez estas tablas pueden contener multitud de datos que pueden ser creados, eliminados, modificados o consultados de múltiples formas. Esta entrada trata de forma resumida el manejo de bases de datos, tablas y registros mediante instrucciones de código desde una consola mysql.
En las siguientes líneas se muestra la estructura de como crear, eliminar y mostrar bases de datos, como también importar y exportar desde la consola mysql.
BASES DE DATOS
CREAR BASE DE DATOS
CREATE DATABASE [nombre de base de datos]
CREAR BASE DE DATOS especificando formato de caracteres (cotejamiento):
CREATE DATABASE [nombre de base de datos]
CHARACTER SET utf8 COLLATE utf8_general_ci
ELIMINAR BASE DE DATOS
DROP DATABASE [nombre]
MOSTRAR BASE DE DATOS
SHOW DATABASES
SELECCIONAR BASE DE DATOS
USE [nombre de base de datos]
IMPORTAR BASE DE DATOS
mysql -u [usuario] -p [basededatos] < [archivo.sql]
mysql -u [usuario] -p [contraseña] [base de datos] < [archivo.sql]
EXPORTAR BASE DE DATOS
mysqldump -u [usuario] -p [basededatos] > [archivoaexportar.sql]
TABLAS
A continuación se muestra la estructura de como crear, eliminar, mostrar y vaciar una tabla.
CREAR TABLA
CREATE TABLE [nombre](
[nombre campo] [tipo] [opciones]
);
Ejemplo de tabla:
CREATE TABLE productos(
id INTEGER AUTO_INCREMENT PRIMARY KEY,
producto VARCHAR(50) NOT NULL,
fechaCaducidad DATE
);
BORRAR TABLA
DROP TABLE [nombredelatabla]
MOSTRAR TABLAS
SHOW tables;
MOSTRAR ESTRUCTURA DE TABLA
DESC [nombre_tabla];
DESCRIBE [nombre_tabla];
VACIAR TABLA
TRUNCATE TABLE [nombredelatabla]
REGISTROS
Los registros son los datos o valores asignados en una fila de una tabla. A continuación se muestra la estructura y algunos ejemplos de como insertar, eliminar, actualizar registros en una tabla y realizar consultas a una tabla.
INSERTAR DATOS EN TABLA
INSERT INTO tabla (columnas)
VALUES (valores);
Ejemplos de insertar registros en tabla:
INSERT INTO productos (producto,fechaCaducidad)
VALUES ( procesador, "2022-01-01");
INSERT INTO productos VALUES ( 0,procesador, "2022-01-01");
ACTUALIZAR REGISTRO
UPDATE [LOW_PRIORITY] [tabla]
SET campo = valor
ACTUALIZAR REGISTRO CON CONDICIÓN Y LÍMITE
UPDATE [LOW_PRIORITY] [tabla]
SET campo = valor
WHERE campo2 = valor2
LIMIT [int]
LOW_PRIORITY: opción que retrasa la actualización hasta que la tabla no esté trabajando
Ejemplos actualizar registros:
UPDATE productos SET fechaCaducidad="2010-12-12"
WHERE producto = "procesador"
Nota: La sentencia UPDATE sin la cláusula WHERE actualiza todos los registros de la tabla.
CONSULTA A UNA TABLA
SELECT [campo]
FROM [tabla]
WHERE [campo2]= [valor2]
Ejemplo consulta a tabla:
SELECT count(*)
FROM productos
WHERE producto = "procesador"
ELIMINAR TABLA
DELETE FROM [tabla];
ELIMINAR REGISTRO DE UNA TABLA
DELETE FROM [tabla] WHERE [campo]=[valor];
Mysql dispone de una instrucción que permite cargar datos desde un archivo externo con un conjunto de opciones que permiten configurar la inserción.
INSERTAR DATOS DESDE UN ARCHIVO EXTERNO
LOAD DATA [LOW_PRIORITY] [LOCAL] INFILE "archivo"
[IGNORE | REPLACE]
INTO TABLE [nombretabla]
[FIELDS
[TERMINATED BY "cadena"]
[OPTIONALLY] ENCLOSED BY "caracter"]
[ESCAPED BY "caracter"]]
[LINES TERMINATED BY "cadena"]
[IGNORE n LINES]
[(lista_columnas)]
La lista siguiente indica las distintas opciones permitidas en la carga de archivos.
A continuación se muestran los valores por defecto si no se indica FIELDS ni LINES
Para poder comentar es necesario iniciar sesión