En este artículo se explicarán los comandos básicos de administración bajo MySQL, no se va a utilizar ninguna interfaz del estilo phpmyadmin/mysqlworkbench ya que uno depende de un servidor web y el otro resulta ser muy problemático dependiendo del escenario.
Crear una base de datos:
CREATE DATABASE prueba;
SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| prueba |
| sys |
+--------------------+
5 rows in set (0.00 sec)
Crear una tabla:
USE prueba;
CREATE TABLE tabla_prueba (campo1 varchar(80), campo2 int(11));
DESCRIBE tabla_prueba;
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| campo1 | varchar(80) | YES | | NULL | |
| campo2 | int | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
2 rows in set (0.01 sec)
Insertar registros:
INSERT INTO tabla_prueba (campo1, campo2) values ('AAAA', '69');
Seleccionar registros:
SELECT * FROM tabla_prueba;
+--------+--------+
| campo1 | campo2 |
+--------+--------+
| AAAA | 69 |
+--------+--------+
1 row in set (0.00 sec)
Actualizar registros:
UPDATE tabla_prueba SET campo1='BBBB' WHERE campo1='AAAA';
SELECT * FROM tabla_prueba;
+--------+--------+
| campo1 | campo2 |
+--------+--------+
| BBBB | 69 |
+--------+--------+
1 row in set (0.00 sec)
Borrar registros:
DELETE FROM tabla_prueba WHERE campo1='BBBB';
SELECT * FROM tabla_prueba;
Empty set (0.00 sec)
Alterar tabla:
ALTER TABLE tabla_prueba ADD campo3 VARCHAR(60);
DESCRIBE tabla_prueba;
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| campo1 | varchar(80) | YES | | NULL | |
| campo2 | int | YES | | NULL | |
| campo3 | varchar(60) | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
Contar registros:
INSERT INTO tabla_prueba (campo1, campo2) values ('AAAA', '69');
INSERT INTO tabla_prueba (campo1, campo2) values ('BBBB', '96');
SELECT COUNT(*) FROM tabla_prueba;
+----------+
| COUNT(*) |
+----------+
| 2 |
+----------+
1 row in set (0.01 sec)
Ordenar salida:
SELECT * FROM tabla_prueba ORDER BY campo2;
+--------+--------+--------+
| campo1 | campo2 | campo3 |
+--------+--------+--------+
| AAAA | 69 | NULL |
| BBBB | 96 | NULL |
+--------+--------+--------+
2 rows in set (0.00 sec)
También podemos obtener solo el último registro:
SELECT * FROM tabla_prueba ORDER BY campo2 DESC LIMIT 1;
+--------+--------+--------+
| campo1 | campo2 | campo3 |
+--------+--------+--------+
| BBBB | 96 | NULL |
+--------+--------+--------+
1 row in set (0.00 sec)
Si queremos seleccionar un registro en concreto:
SELECT * FROM tabla_prueba LIMIT 1 OFFSET 0;
+--------+--------+--------+
| campo1 | campo2 | campo3 |
+--------+--------+--------+
| AAAA | 69 | NULL |
+--------+--------+--------+
1 row in set (0.00 sec)
SELECT * FROM tabla_prueba LIMIT 1 OFFSET 1;
+--------+--------+--------+
| campo1 | campo2 | campo3 |
+--------+--------+--------+
| BBBB | 96 | NULL |
+--------+--------+--------+
1 row in set (0.00 sec)
Truncar tabla:
TRUNCATE tabla_prueba;
SELECT * FROM tabla_prueba;
Empty set (0.00 sec)
Eliminar tabla:
SHOW TABLES;
+------------------+
| Tables_in_prueba |
+------------------+
| tabla_prueba |
+------------------+
1 row in set (0.01 sec)
DROP TABLE tabla_prueba;
SHOW TABLES;
Empty set (0.00 sec)
Eliminar base de datos:
SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| prueba |
| sys |
+--------------------+
5 rows in set (0.00 sec)
DROP DATABASE prueba;
SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
Con esto concluimos la introducción a MySQL, espero que lo hayáis disfrutado ;)