INTRODUCCIÓN
En el capítulo anterior ya vimos cómo
crear nuestra base de datos y creamos una tabla.
Ahora vamos a ver cómo introducir datos en
esa tabla, como borrarlos, como cambiarlos si nos
hemos equivocado y pos supuesto cómo conseguir
que mysql nos muestre los datos.
CÓMO INSERTAR DATOS EN UNA TABLA
Para meter datos en una tabla utilizamos la orden
INSERT
Código:
INSERT INTO nombre_de_la_tabla (
Columna1, columna 2, …. )
VALUES (
Valor1, valor2, ….);
En nuestro caso sería así:
Código:
INSERT INTO refranero ( refran , fecha )
VALUES (
' Más vale pájaro en mano que ciento
volando', '2003-06-01'
);
Nota: Recordemos que mysql está en inglés,
luego el formato en que tenemos que meter la fecha
es en inglés: AÑO-MES-DIA.
Los valores que vamos a introducir, van en comillas
simples (‘), en el caso del ID, cómo
no queremos introducir ningún valor (preferimos
que lo asigne mysql), dejamos el valor vacío.
Practicar metiendo los siguientes refranes:
No por mucho madrugar amanece más temprano,
2003-06-03
Quien a buen árbol se arrima buena sombra
le cobija, 2003-08-15
CÓMO VER LOS DATOS QUE TENEMOS EN UNA
TABLA
Para extraer los datos y que nos los presente
en pantalla, utilizamos la orden SELECT. SELECT,
sirve para hacer casi cualquier cosa, así
que os cansaréis de utilizarla
Código:
SELECT * FROM refranero;
En cristiano: Selecciona todo de la tabla refranero;
* significa todo.
Las selects pueden llegar a complicarse mucho,
pero de momento, para nuestros fines, ha sido
fácil ¿no?
Si el texto de nuestro refrán es muy largo,
se nos puede descabalar un poco la tabla y no
quedarnos las cosas tan claras.
Pero ¿y si queremos seleccionar sólo
un campo?
SELECT nombre_del_campo FROM nombre_de_la_tabla;
Para nuestra tabla sería;
Código:
SELECT ID FROM refranero;
+-------+
| ID |
+-------+
| 1 |
| 2 |
| 3 |
+-------+
Código:
ó SELECT fecha FROM refranero;
+-------+---------------------------+
| ID | fecha |
+-------+---------------------------+
| 1 | 2003-06-01 |
| 2 | 2003-06-01 |
| 3 | 2003-06-01 |
+-------+---------------------------+
FUNCIONES BÁSICAS
Cómo seleccionar parte de un campo.
Supongamos que queremos seleccionar sólo
una parte de cada refran, para que no nos ocupe
mucho en pantalla, pero al menos lo justo para
reconocer de qué refrán se trata.
Utilizaremos la función LEFT que nos permite
específicar el número de caracteres
máximo que queremos mostrar. Por ejemplo
queremos ver los 15 primeros caracteres del campo
“refrán” (los espacios también
son un carácter):
Código:
SELECT id, LEFT(refran,15), fecha FROM refranero;

También podríamos seleccionar los
últimos 15 con
Código:
SELECT ID RIGHT(refran,15), fecha FROM refranero;
¿Cómo saber cuántos refranes
tenemos?
Contando los registros con COUNT
Código:
SELECT COUNT(*) FROM refranero;
+-------------------+
| COUNT(*) |
+-------------------+
| 3 |
+-------------------+
¿Cómo elegir sólo aquellos
registros que cumplan una determinada condición?
Utilizando la cláusula WHERE
Por ejemplo, queremos ver todos aquellos refranes
que hayan sido publicados después del 1
junio:
Código:
SELECT * FROM refranero WHERE fecha > “2003-06-01”;

Aquí la cosa está fácil porque
sólo tenemos 2 registros que cumplen la
condición, pero ¿y si tuviéramos
cientos, y necesitáramos saber cuántos
tenemos? Pues los contamos ;-), utilizando COUNT
como vimos antes, pero combinándolo con
la condición
Código:
SELECT COUNT(*) FROM refranero WHERE fecha >
“2003-06-01”;

¿Cómo elegir sólo aquellos
registros que contengan determinado texto?
Para esto tenemos “LIKE”, supongamos
que queremos encontrar todos aquellos refranes
que contenga la palabra madrugar. Con Like, le
decimos a Mysql que queremos que nos devuelva
todos los registros que cumplan un patrón
que le especificamos, cómo puede ser contener
una determinada palabra, por ejemplo.
Código:
SELECT refran FROM refranero WHERE refran LIKE
"%madrugar%";

Los caracteres % son comodines, rodeando madrugar
con este símbolo, le decimos a mysql que
nos dé todos los registros que contengan
la palabra madrugar independientemente de qué
caracteres haya antes y después de la palabra.
Si quisiéramos todos los registros que
empezaran por la palabra madrugar podríamos
hacer esta query:
Código:
SELECT refran FROM refranero WHERE refran LIKE
"madrugar%";
También podemos combinar las distintas
formas que hemos visto para restringir aún
más los resultados. Por ejemplo podemos
pedirle a mysql que nos dé todos los registros
que contengan la palabra madrugar y que hayan
sido publicados entre el 1 de julio y el 15 de
agosto.
Código:
mysql> SELECT refran, fecha FROM refranero
-> WHERE refran LIKE "%madrugar%"
AND
-> fecha >= "2003-07-01" AND
-> fecha < "2003-08-15";
CÓMO MODIFICAR LOS DATOS QUE TENEMOS EN
UNA TABLA
Ahora que ya hemos introducido nuestros refranes
en la tabla, echamos un vistazo, y nos damos cuenta
de que hemos cometido algún error, por
ejemplo en el primer refrán he metido mal
la fecha y aparece "0000-00-00" y además
he escrito parajo en vez de pájaro.
Para arreglar este tipo de entuertos tenemos
la orden UPDATE, que nos permite hacer cambios
en los datos que ya tenemos introducido.
La sintaxis de esta orden es:
Mysql> UPDATE nombre_de_table SET
-> nombre_columna = nuevo_valor,
-> WHERE....
Por ejemplo en nuestro caso:
Código:
Mysql> UPDATE refranero SET fecha="2003-06-01"
WHERE ID=1;
+---------+----------------------------------------------------------------+-----------------+
| ID | refran | fecha |
+---------+----------------------------------------------------------------+------------------+
| 1 | Más vale párajo en mano que
ciento volando | 2003-06-01 |
+---------+-----------------------------------------------------------------+-----------------+
1 row in set (0.00 sec)
Y ahora queremos cambiar párajo por pájaro,
y para ello utilizamos el LIKE como hacíamos
antes para ver los registros, así que le
decimos a mysql que debe cambiar la columna refrán
Código:
Mysql> UPDATE refranero SET refran="Más
vale pájaro en mano que ciento volando"
WHERE refran LIKE "%párajo%";
CÓMO BORRAR REGISTROS DE UNA TABLA
Ahora que ya sabemos añadir registros y
cambiarlos nos toca aprender a borarlos, lo que,
como dice Kevin Yank, es peligrosamente fácil.
La sintaxis:
DELETE FROM nombre_de_tabla WHERE condiciones
Por ejemplo
Código:
DELETE FROM refranero where id =1;
Ó si queremos borrar todos los refranes
que contengan la palabra "amor"?
Código:
DELETE FROM refranero WHERE LIKE "%amor%";
Y para borrar todos los refranes de nuestra tabla?
Todavía más fácil
Código:
DELETE FROM refranero;
Un consejo tonto, cuando quieras borrar archivos,
prueba primero con un select si el select, funciona
correctamente y te selecciona exactamente los
archivos que querías borrar; entonces cambias
SELECT por DELETE y listo.
Y ahora que nos hemos cargado todos los registros,
nos cargamos también la tabla y la base
de datos
Código:
DROP TABLE refranero;
DROP DATABASE refranes; |