0% encontró este documento útil (0 votos)
129 vistas12 páginas

Mariadb

El documento proporciona información sobre MariaDB. MariaDB es un sistema de gestión de bases de datos relacional de código abierto que se basa en MySQL. Fue creado como una bifurcación de MySQL en 2009. Ofrece características adicionales como mejor rendimiento y mayor escalabilidad en comparación con MySQL. El documento también explica cómo crear bases de datos, tablas y cómo insertar y modificar registros en MariaDB.

Cargado por

Juanca
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
129 vistas12 páginas

Mariadb

El documento proporciona información sobre MariaDB. MariaDB es un sistema de gestión de bases de datos relacional de código abierto que se basa en MySQL. Fue creado como una bifurcación de MySQL en 2009. Ofrece características adicionales como mejor rendimiento y mayor escalabilidad en comparación con MySQL. El documento también explica cómo crear bases de datos, tablas y cómo insertar y modificar registros en MariaDB.

Cargado por

Juanca
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 12

SQL

SQL (Mariadb)

MariaDB es un sistema de gestión de bases de datos relacional de código abierto que se basa en el
código fuente del sistema de gestión de bases de datos MySQL. Fue creado como una bifurcación
(fork) de MySQL en 2009, luego de que Oracle adquiriera Sun Microsystems, la empresa matriz de
MySQL en ese momento. MariaDB está diseñado para ser una alternativa compatible con MySQL, lo
que significa que muchos de los comandos, sintaxis y características de MySQL también se aplican a
MariaDB.

MariaDB fue desarrollado por el equipo original de desarrolladores de MySQL, liderado por Michael
"Monty" Widenius, uno de los creadores originales de MySQL. El objetivo principal de MariaDB es
ofrecer una base de datos relacional de alto rendimiento, confiable y de código abierto para
aplicaciones empresariales y web.

MariaDB ha ganado popularidad en la comunidad de código abierto y se utiliza ampliamente en una


variedad de aplicaciones y entornos de desarrollo. Ofrece características adicionales y mejoras en
comparación con MySQL, como un mejor rendimiento, mayor escalabilidad, mayor seguridad y
compatibilidad con más motores de almacenamiento. Además, MariaDB sigue manteniendo la
compatibilidad con MySQL, lo que facilita la migración de aplicaciones y bases de datos existentes de
MySQL a MariaDB.
Tipos de datos

En MariaDB (y en MySQL) existen varios tipos de datos que se pueden utilizar para definir los campos
de una tabla. A continuación, te menciono algunos de los tipos de datos más comunes en MariaDB:

Números enteros:
TINYINT: entero de 1 byte, rango de -128 a 127 o de 0 a 255 (sin signo).
SMALLINT: entero de 2 bytes, rango de -32,768 a 32,767 o de 0 a 65,535
(sin signo).
MEDIUMINT: entero de 3 bytes, rango de -8,388,608 a 8,388,607 o de 0 a
16,777,215 (sin signo).
INT o INTEGER: entero de 4 bytes, rango de -2,147,483,648 a
2,147,483,647 o de 0 a 4,294,967,295 (sin signo).
BIGINT: entero de 8 bytes, rango de -9,223,372,036,854,775,808 a
9,223,372,036,854,775,807 o de 0 a 18,446,744,073,709,551,615 (sin signo).

Números decimales:
DECIMAL(p, s): número decimal exacto, donde "p" representa la precisión
(número total de dígitos) y "s" representa la escala (número de dígitos
después del punto decimal).
FLOAT: número de punto flotante de precisión simple.
DOUBLE: número de punto flotante de precisión doble.

Cadenas de texto:
CHAR(n): cadena de texto de longitud fija, con un máximo de "n"
caracteres.
VARCHAR(n): cadena de texto de longitud variable, con un máximo de "n"
caracteres.
TEXT: cadena de texto de longitud variable, con un tamaño máximo de
65,535 bytes.

Fechas y horas:
DATE: fecha en formato 'YYYY-MM-DD'.
TIME: hora en formato 'HH:MM:SS'.
DATETIME: combinación de fecha y hora en formato 'YYYY-MM-DD HH:MM:SS'.
TIMESTAMP: marca de tiempo, se almacena en formato 'YYYY-MM-DD
HH:MM:SS'.

Otros tipos de datos:


BOOLEAN o BOOL: valor booleano, puede ser TRUE o FALSE.
BLOB: objeto binario grande, para almacenar datos binarios.
ENUM: lista de valores permitidos, donde se puede elegir solo uno de
ellos.
Estos son solo algunos ejemplos de los tipos de datos disponibles en MariaDB. Cada tipo de dato tiene
sus propias características y limitaciones

Para crear bases de datos

En MariaDB, puedes utilizar la cláusula IF NOT EXISTS para verificar si la base de datos ya existe
antes de crearla. Aquí tienes un ejemplo de cómo crear una base de datos en MariaDB utilizando esta
cláusula:

CREATE DATABASE IF NOT EXISTS nombre_base_de_datos;

Reemplaza "nombre_base_de_datos" por el nombre que deseas asignar a tu base de datos. La


cláusula IF NOT EXISTS asegura que la base de datos solo se cree si no existe previamente. Si la
base de datos ya existe, no se realizará ninguna acción y no se generará ningún error.

Recuerda que debes tener los privilegios adecuados para crear bases de datos en MariaDB.

Para modificar una base de datos

En MariaDB, puedes modificar una base de datos existente utilizando la declaración ALTER
DATABASE . Aquí tienes un ejemplo de cómo modificar una base de datos en MariaDB:

ALTER DATABASE nombre_base_datos


[CHARACTER SET charset_name]
[COLLATE collation_name];

Reemplaza "nombre_base_datos" por el nombre de la base de datos que deseas modificar.

Opcionalmente, puedes especificar el conjunto de caracteres ( CHARACTER SET ) y la configuración de


intercalación ( COLLATE ) para la base de datos. Esto te permite cambiar la configuración de caracteres
utilizada en la base de datos.

Aquí tienes un ejemplo que muestra cómo modificar una base de datos llamada "mi_basedatos" para
utilizar el conjunto de caracteres UTF-8:

ALTER DATABASE mi_basedatos


CHARACTER SET utf8;

Para crear tablas

Para crear una tabla en una base de datos, se utiliza la sentencia SQL llamada CREATE TABLE . Esta
sentencia te permite definir la estructura de la tabla, incluyendo los nombres de las columnas y los
tipos de datos que contendrán. Aquí tienes un ejemplo básico de cómo se crea una tabla:

CREATE TABLE nombre_tabla (


columna1 tipo_dato1,
columna2 tipo_dato2,
columna3 tipo_dato3,
...
);

Veamos una explicación de cada parte:

CREATE TABLE : Es la sentencia SQL para crear una tabla.

nombre_tabla : Es el nombre que le darás a la tabla que estás creando. Puedes elegir cualquier
nombre que sea válido según las reglas de nomenclatura de tu base de datos.

columna1 , columna2 , columna3 , etc.: Son los nombres de las columnas que deseas incluir en
la tabla.
tipo_dato1 , tipo_dato2 , tipo_dato3 , etc.: Son los tipos de datos que asignarás a cada
columna. Los tipos de datos pueden ser INT para números enteros, VARCHAR para cadenas de
texto, DATE para fechas, entre otros. También puedes especificar restricciones y propiedades
adicionales para cada columna, como la longitud máxima de una cadena de texto o si la columna
permite valores nulos.

Un ejemplo más concreto de cómo crear una tabla llamada "usuarios" con algunas columnas:

CREATE TABLE usuarios (


id INT,
nombre VARCHAR(50),
email VARCHAR(100),
fecha_nacimiento DATE
);

En este caso, hemos creado una tabla "usuarios" con cuatro columnas: "id" de tipo INT , "nombre" de
tipo VARCHAR con una longitud máxima de 50 caracteres, "email" de tipo VARCHAR con una longitud
máxima de 100 caracteres, y "fecha_nacimiento" de tipo DATE .

Recuerda que este es solo un ejemplo básico y que las sentencias SQL pueden variar según la base
de datos que estés utilizando. Asegúrate de consultar la documentación de tu base de datos específica
para obtener información detallada sobre cómo crear tablas.

En MariaDB, puedes utilizar la cláusula IF NOT EXISTS para verificar si una tabla ya existe antes de
crearla. Aquí tienes un ejemplo de cómo crear una tabla en MariaDB utilizando esta cláusula:

CREATE TABLE IF NOT EXISTS nombre_tabla (


columna1 tipo_dato1,
columna2 tipo_dato2,
...
);
Reemplaza "nombre_tabla" por el nombre que deseas asignar a tu tabla. La cláusula IF NOT EXISTS
asegura que la tabla solo se cree si no existe previamente. Si la tabla ya existe, no se realizará
ninguna acción y no se generará ningún error.

A continuación, debes especificar las columnas de la tabla junto con sus tipos de datos. Puedes
agregar tantas columnas como necesites.

Para crear una tabla con claves externas (foreign keys) en MariaDB, puedes utilizar la declaración
CREATE TABLE junto con la cláusula FOREIGN KEY . A continuación, te muestro un ejemplo de cómo
crear una tabla con una clave externa:

CREATE TABLE tabla1 (


id INT PRIMARY KEY,
columna1 VARCHAR(50),
columna2 INT,
FOREIGN KEY (columna2) REFERENCES tabla2(id)
);

En este ejemplo, se crea la tabla llamada "tabla1" con tres columnas: "id", "columna1" y "columna2".
La columna "id" se define como clave primaria utilizando PRIMARY KEY , mientras que la columna
"columna2" se define como clave externa utilizando FOREIGN KEY . La cláusula REFERENCES se utiliza
para especificar la tabla y la columna a la que la clave externa hace referencia.

En el ejemplo anterior, la clave externa "columna2" de la tabla "tabla1" hace referencia a la columna
"id" de la tabla "tabla2". Esto establece una relación entre las dos tablas donde la columna "columna2"
en "tabla1" debe contener valores que existan en la columna "id" de "tabla2".

Recuerda que las claves externas solo pueden crearse si las tablas involucradas ya existen en la base
de datos. Además, debes asegurarte de que los tipos de datos de las columnas coincidan para
establecer una relación adecuada entre las tablas.

Para modificar una tabla

Para modificar una tabla existente en MariaDB, puedes utilizar la declaración ALTER TABLE . Con
ALTER TABLE , puedes agregar, modificar o eliminar columnas, así como realizar otros cambios en la
estructura de la tabla. A continuación, te muestro algunos ejemplos de cómo modificar una tabla en
MariaDB:

1. Agregar una nueva columna:

ALTER TABLE nombre_tabla


ADD columna_nueva tipo_dato;

Reemplaza "nombre_tabla" por el nombre de la tabla a modificar, "columna_nueva" por el nombre de


la nueva columna que deseas agregar y "tipo_dato" por el tipo de datos que quieres utilizar para la
nueva columna.

2. Modificar una columna existente:

ALTER TABLE nombre_tabla


MODIFY columna_existente nuevo_tipo_dato;

En este caso, "columna_existente" representa el nombre de la columna que deseas modificar y


"nuevo_tipo_dato" es el nuevo tipo de datos que deseas asignar a la columna.

3. Eliminar una columna:

ALTER TABLE nombre_tabla


DROP COLUMN columna_existente;

Aquí, "columna_existente" es el nombre de la columna que deseas eliminar de la tabla.

Insertar registros

Para insertar registros en una tabla existente en una base de datos, se utiliza la sentencia SQL
llamada INSERT INTO . Esta sentencia te permite especificar los valores que deseas insertar en cada
columna de la tabla. Aquí tienes un ejemplo básico de cómo se insertan registros:

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


VALUES (valor1, valor2, valor3, ...);

Veamos una explicación de cada parte:

INSERT INTO : Es la sentencia SQL para insertar registros en una tabla.

nombre_tabla : Es el nombre de la tabla en la cual deseas insertar los registros.

(columna1, columna2, columna3, ...) : Especifica las columnas a las cuales deseas insertar
valores. Puedes omitir esta parte si deseas insertar valores en todas las columnas, en el orden en
que se crearon.
VALUES (valor1, valor2, valor3, ...) : Especifica los valores que deseas insertar en las
columnas. Debes asegurarte de que los valores coincidan con el tipo de dato de cada columna en
la tabla.

Aquí tienes un ejemplo más concreto de cómo insertar un registro en la tabla "usuarios" que creamos
anteriormente:

INSERT INTO usuarios (id, nombre, email, fecha_nacimiento)


VALUES (1, 'John Doe', '[email protected]', '1990-01-01');

En este caso, hemos insertado un registro en la tabla "usuarios" con los valores correspondientes para
cada columna.
Si deseas insertar varios registros a la vez, puedes especificar múltiples conjuntos de valores
separados por comas, como en el siguiente ejemplo:

INSERT INTO usuarios (id, nombre, email, fecha_nacimiento)


VALUES (2, 'Jane Smith', '[email protected]', '1995-02-02'),
(3, 'Bob Johnson', '[email protected]', '1985-03-03');

Recuerda que este es solo un ejemplo básico y que las sentencias SQL pueden variar según la base
de datos que estés utilizando. Asegúrate de consultar la documentación de tu base de datos específica
para obtener información detallada sobre cómo insertar registros.

Es posible modificar registros en una tabla utilizando la declaración UPDATE en MariaDB. La sintaxis
básica de la instrucción UPDATE es la siguiente:

UPDATE nombre_tabla
SET columna1 = valor1, columna2 = valor2, ...
WHERE condición;

Aquí tienes una descripción de los elementos involucrados:

nombre_tabla : el nombre de la tabla en la que deseas modificar los registros.

columna1 , columna2 , ...: las columnas que deseas actualizar y los nuevos valores que deseas
asignarles.
condición : una condición opcional que especifica qué registros deben ser modificados. Si no se
proporciona una condición, todos los registros de la tabla serán actualizados.

A continuación, te muestro un ejemplo de cómo utilizar la declaración UPDATE para modificar registros
en una tabla:

UPDATE usuarios
SET nombre = 'Juan', edad = 30
WHERE id = 1;

En este ejemplo, se actualiza el registro en la tabla "usuarios" que tiene un ID igual a 1. La columna
"nombre" se establece en 'Juan' y la columna "edad" se establece en 30.

Recuerda siempre incluir una cláusula WHERE en tu instrucción UPDATE para especificar qué registros
deben ser modificados. De lo contrario, todos los registros de la tabla se actualizarán con los nuevos
valores especificados en la cláusula SET .

CONSULTAS BÁSICAS MY SQL

Para mostrar el contenido de una tabla:

SELECT * FROM nombredetabla;


Para mostrar el campo de una tabla:

SELECT nombredelcampo FROM nombredetabla;

Si se quieren mostrar 2 o más campos, los nombres del campo se separan por ","

SELECT nombredelcampo AS "Nombre" FROM nombredetabla;

El "AS" se usa para crear un alias. El nombre del campo aparece en el listado como se indica en el
alias.

Para poner condiciones se usa WHERE

SELECT campos FROM nombredetabla


WHERE nombredelcampo = valor;

Las condiciones pueden ser:

Mayor que
< Menor que
= Igual a
<= Menor o igual que
= Mayor o igual que

Se pueden combinar con OR o con AND. OR quiere decir que se puede cumplir una condición u otra.
Y AND que se tienen que cumplir todas las condiciones.

SELECT título, estreno FROM películas


WHERE estreno > 1980 AND duracion > 90;

Eso mostraría las películas más modernas de 1980 que duren más de 90 minutos.

Se pueden hacer consultas a varias tablas usando JOINS:

SELECT titulo AS "Título", estreno AS "Año de estreno" FROM peliculas


JOIN directores_peliculas
ON peliculas.id_pelicula = directores_peliculas.id_pelicula
JOIN directores
ON directores_peliculas.id_director = directores.id_director
WHERE directores.nombre = "Ridley Scott"
GROUP BY peliculas.id_pelicula;

Esa consulta muestra las películas que ha dirigido Ridley Scott.

Para ordenar, se puede usar ORDER BY:


SELECT titulo FROM peliculas
ORDER BY estreno DESC;

Mostraría las películas ordenadas por año de estreno en orden descendente, es decir, de las más
modernas a las más antiguas.

Para hacer una consulta que muestre los actores y actrices de una película:

SELECT titulo AS "Título", fecha_estreno AS "Año", GROUP_CONCAT(nombre, ' ',


primer_apellido SEPARATOR ", ") AS "Intérpretes"
FROM peliculas p
JOIN peliculas_actores pa
ON p.id_pelicula = pa.id_pelicula
JOIN actores_actrices aa
ON pa.id_actor = aa.id_actor
WHERE p.titulo = "El Padrino"
GROUP BY p.id_pelicula ;

Eso muestra los resultados en una fila, con group concat conseguimos eso, además separa con
espacios el nombre y el primer apellido.

La cláusula WHERE en SQL se utiliza para filtrar filas en función de una condición específica. La
cláusula LIKE se utiliza dentro de la cláusula WHERE para realizar una búsqueda de patrones en una
columna de texto.

Aquí tienes un ejemplo de cómo usar WHERE y LIKE juntos:

SELECT columna1, columna2


FROM tabla
WHERE columna3 LIKE 'patron';

En el ejemplo anterior, reemplaza columna1 , columna2 y columna3 con los nombres de las
columnas reales en tu tabla, y reemplaza 'patron' con el patrón de búsqueda que deseas utilizar.

El operador LIKE admite el uso de caracteres comodín para realizar búsquedas más flexibles:

% : Representa cero, uno o varios caracteres.

_ : Representa un único carácter.

Aquí tienes algunos ejemplos de cómo puedes usar caracteres comodín con LIKE :

WHERE columna3 LIKE 'abc%' : Selecciona filas donde columna3 comienza con "abc".

WHERE columna3 LIKE '%xyz' : Selecciona filas donde columna3 termina con "xyz".

WHERE columna3 LIKE '%def%' : Selecciona filas donde columna3 contiene "def" en cualquier
posición.
WHERE columna3 LIKE '_xy_' : Selecciona filas donde columna3 tiene exactamente cinco
caracteres y el segundo y tercer carácter son "xy".

La cláusula LIMIT se utiliza en SQL para limitar el número de filas devueltas por una consulta. Es
especialmente útil cuando deseas obtener solo una cierta cantidad de registros de una tabla, por
ejemplo, los primeros 10 resultados o las 5 películas más recientes.

Aquí tienes un ejemplo de cómo usar LIMIT en una consulta:

SELECT columna1, columna2


FROM tabla
LIMIT cantidad;

En el ejemplo anterior, reemplaza columna1 , columna2 y tabla con los nombres reales de las
columnas y la tabla en tu consulta. Luego, reemplaza cantidad con el número de filas que deseas
obtener.

Por ejemplo, si deseas obtener los primeros 10 registros de una tabla, la consulta se vería así:

SELECT columna1, columna2


FROM tabla
LIMIT 10;

Si deseas obtener los 5 registros más recientes ordenados por fecha de estreno, podrías combinar
LIMIT con ORDER BY de la siguiente manera:

SELECT columna1, columna2


FROM tabla
ORDER BY fecha_estreno DESC
LIMIT 5;

En este caso, los registros se ordenan en orden descendente según la columna fecha_estreno y se
limita el resultado a las primeras 5 filas.

Para listar las 5 películas más modernas:

SELECT titulo AS "Título", fecha_estreno AS "Año de Estreno" FROM peliculas


ORDER BY fecha_estreno DESC LIMIT 5;

Las ordena descendentemente y limita el resultado a 5.

Esto listaría las películas con todas sus puntuaciones ordenadas descendentemente por fecha de
estreno.

SELECT titulo AS "Título", fecha_estreno AS "Año de Estreno",


GROUP_CONCAT(valoracion, ' ' SEPARATOR ', ') AS "Puntuaciones" FROM
peliculas p
JOIN puntuaciones pu
ON p.id_pelicula = pu.id_pelicula
GROUP BY p.id_pelicula
ORDER BY fecha_estreno DESC;

Esta otra mostraría el título, el estreno, todas las puntuaciones y el promedio de las puntuaciones con
dos posiciones decimales. El orden sería descendente por fecha de estreno.

SELECT p.titulo AS "Título", p.fecha_estreno AS "Año de Estreno",


GROUP_CONCAT(pu.valoracion, ' ' SEPARATOR ', ') AS "Puntuaciones",
ROUND(AVG(pu.valoracion),2) AS "Promedio"
FROM peliculas p
JOIN puntuaciones pu ON p.id_pelicula = pu.id_pelicula
GROUP BY p.id_pelicula
ORDER BY p.fecha_estreno DESC;

O lo mismo pero ordenadas de más a menos valoradas

SELECT p.titulo AS "Título", p.fecha_estreno AS "Año de Estreno",


GROUP_CONCAT(pu.valoracion, ' ' SEPARATOR ', ') AS "Puntuaciones",
ROUND(AVG(pu.valoracion),2) AS "Promedio"
FROM peliculas p
JOIN puntuaciones pu ON p.id_pelicula = pu.id_pelicula
GROUP BY p.id_pelicula
ORDER BY Promedio DESC;

Operaciones

En MariaDB, puedes realizar operaciones utilizando expresiones y operadores. Los operadores


permiten realizar diferentes tipos de operaciones, como aritmética, comparación y lógica, entre otros.
Aquí te presento algunos ejemplos de operadores comunes:

1. Operadores aritméticos:

Suma: "+"

Resta: "-"
Multiplicación: "*"
División: "/"

Módulo (resto de la división): "%"

2. Operadores de comparación:

Igualdad: "="
Desigualdad: "<>", "!=", "<", ">", "<=", ">="
Comparación de cadenas: LIKE, NOT LIKE
Comparación de valores nulos: IS NULL, IS NOT NULL
Rango de valores: BETWEEN ... AND ...

Comprobación de pertenencia a una lista: IN

3. Operadores lógicos:

AND: conjunción lógica

OR: disyunción lógica


NOT: negación lógica

4. Operadores de concatenación:

Concatenación de cadenas: CONCAT()

5. Operadores de control de flujo:

IF(): condicional

CASE: evaluación de múltiples condiciones

Aquí tienes algunos ejemplos de cómo utilizar operadores en consultas SQL:

-- Operadores aritméticos
SELECT 10 + 5; -- Resultado: 15
SELECT 10 * 3; -- Resultado: 30

-- Operadores de comparación
SELECT nombre FROM empleados WHERE salario > 5000;
SELECT nombre FROM empleados WHERE edad BETWEEN 25 AND 30;
SELECT nombre FROM empleados WHERE departamento IN ('Ventas', 'Marketing');

-- Operadores lógicos
SELECT nombre FROM empleados WHERE edad > 30 AND salario > 5000;
SELECT nombre FROM empleados WHERE edad > 40 OR salario > 10000;

-- Operadores de concatenación
SELECT CONCAT(nombre, ' ', apellido) AS nombre_completo FROM empleados;

-- Operadores de control de flujo


SELECT nombre, IF(edad >= 18, 'Mayor de edad', 'Menor de edad') AS
categoria_edad FROM personas;
SELECT nombre, CASE WHEN edad >= 18 THEN 'Mayor de edad' ELSE 'Menor de
edad' END AS categoria_edad FROM personas;

Recuerda que los operadores se utilizan dentro de las cláusulas SELECT, WHERE, HAVING, entre
otras, según la necesidad de la consulta.

También podría gustarte