Primer resumen:
Tema: MySQL
MySQL es uno
de los sistemas de gestión de bases de datos más populares del mercado. Se
trata de un SGBD basado en el modelo relacional.
A
continuación veremos comando para MySQL
Para crear una base de datos:
CREATE DATABASE base_datos;
Si ya existe
una base de datos con ese nombre, MySQL devolverá un error. Podemos añadir el
texto IF NOT EXISTS:
CREATE DATABASE IF NOT EXISTS base_datos;
A la hora de
crear la base de datos también se puede especificar el juego de caracteres y la
colación (conjunto de reglas utilizadas para comparar los caracteres) a
utilizar por defecto. Esto se logra con DEFAULT CHARACTER SET y DEFAULT COLLATE
respectivamente.
CREATE
DATABASE IF NOT EXISTS base_datos
DEFAULT
CHARACTER SET utf8
DEFAULT
COLLATE utf8_general_ci;
Para
comunicarnos con el servidor usando un cierto juego de caracteres se puede usar
el comando SET NAMES.
SET NAMES "utf8";
Podemos ver
una lista de los juegos de caracteres admitidos por MySQL mediante el comando
SHOW CHARACTER SET;. Algunos juegos de caracteres comúnmente utilizados son:
§
ascii;
Es una codificación de caracteres de 7 bits basado en el alfabeto inglés con 95
caracteres imprimibles.
ascii_general_ci
§
latin1,
el juego de caracteres por defecto en MySQL.
latin1_swedish_ci
§
utf8,
de 8-bit Unicode Transformation Format. Unicode es un acrónimo de “Universal
Code” (código universal) y es, como su nombre indica, un juego de caracteres
con el que podemos representar textos escritos en la mayoría de los alfabetos
del planeta.
utf8_general_ci
Los nombres
de las colaciones comienzan con el nombre del juego de caracteres asociado y
terminan con _ci (case insensitive).
SHOW COLLATION LIKE "utf8%";
Para ver las
distintas bases de datos disponibles en nuestro servidor MySQL:
SHOW DATABASES;
Para borrar
una base de datos:
DROP
DATABASE base_datos;
Para
seleccionar la base de datos con la que queremos trabajar:
USE base_datos;
Para ver las
tablas de la base de datos:
SHOW TABLES;
Para ver las
columnas de la tabla:
SHOW COLUMNS FROM tabla;
o bien el
atajo:
DESCRIBE
tabla;
e incluso:
DESC tabla;
Si
necesitamos ver también la colación, los privilegios que tenemos o los
comentarios de las columnas añadiremos la palabra clave FULL a SHOW COLUMNS.
Para crear
una tabla nueva se usa el comando CREATE TABLE tabla al que se le pasa la
definición de las columnas, las posibles restricciones y las opciones de la
tabla y de partición.
CREATE
TABLE usuario (
id_usuario INT PRIMARY KEY AUTO_INCREMENT,
nombre VARCHAR(50)
NOT NULL,
direccion VARCHAR(50)
NOT NULL,
ciudad VARCHAR(20)
NOT NULL,
edad TINYINT NOT NULL
);
Para eliminar
una tabla:
DROP TABLE tabla;
Para que no
produzca un error si la tabla no existe:
DROP
TABLE IF EXISTS tabla;
Para
modificar una tabla se utiliza ALTER TABLE que permite cosas como añadir
columnas:
ALTER TABLE tabla ADD COLUMN valor INT;
Eliminar columnas:
ALTER TABLE tabla DROP COLUMN valor;
Cambiar la
definición de las columnas:
ALTER TABLE tabla MODIFY COLUMN valor
TINYINT;
O renombrar
la tabla:
ALTER TABLE tabla RENAME TO tabla2;
Para insertar
valores en una tabla, si vamos a dar valores a todas las columnas:
INSERT INTO usuario VALUES (1, "Pablo Santander", "Calle Bolivia 18", "Madrid", 17);
Para insertar
varias tuplas con un solo INSERT solo hay que separarlas con comas:
INSERT INTO usuario VALUES
(3,
"Marta Marsopa", "Calle Italia 4", "Madrid",
58),
(4,
"Jaime Torres", "Avenida de Barcelona 12",
"Valladolid" , 37),
(10,
"Juan Martero", "Calle Madrid 12", "Barcelona",
26);
Para
actualizar las tuplas:
UPDATE usuario
SET
nombre = "Marta Marsupial", direccion = "Calle Italia
14"
WHERE
id = 3;
Para borrar
tuplas:
DELETE FROM usuario
WHERE
id = 2;
También
podemos usar funciones en las expresiones que determinan lo que estamos
seleccionando. En este caso se usa LOWER, que transforma una cadena en
minúsculas:
SELECT
LOWER(nombre), LOWER(direccion)
FROM
usuario;
Para limitar
el número de tuplas que queremos que devuelva SELECT se utiliza LIMIT:
SELECT *
FROM usuario
LIMIT
2;
LIMIT se le
pueden pasar dos números separados por comas, en cuyo caso el primer número
indica la tupla desde la que se empieza a y el segundo el número de tuplas a
devolver.
SELECT *
FROM usuario
LIMIT
2,2;
No hay comentarios:
Publicar un comentario