Está en la página 1de 6

21/03/13

9.- Insertar, cambiar y borrar datos de una tabla MySQL | tomando notas

tomando notas
9.- Insertar, cambiar y borrar datos de una
tabla MySQL
INTRODUCCIN
En el captulo anterior y a v im os cm o crear nuestra base de datos y cream os una tabla. Ahora v am os a v er
cm o introducir datos en esa tabla, com o borrarlos, com o cam biarlos si nos hem os equiv ocado y pos supuesto
cm o conseguir que m y sql nos m uestre los datos.
CMO INSERTAR DATOS EN UNA TABLA
Para m eter datos en una tabla utilizam os la orden INSERT

INSERT INTO nombre_de_la_tabla (


Columna1, columna 2, . )
VALUES (
Valor1, valor2, .);
En nuestro caso sera as:

INSERT INTO refranero ( refran , fecha )


VALUES (
' Ms vale pjaro en mano que ciento volando', '2003-06-01'
);
Not a: Recordem os que m y sql est en ingls, luego el form ato en que tenem os que m eter la fecha es en
ingls: AO-MES-DIA.
Los v alores que v am os a introducir, v an en com illas sim ples (), en el caso del ID, cm o no querem os
introducir ningn v alor (preferim os que lo asigne m y sql), dejam os el v alor v aco.
Practicar m etiendo los siguientes refranes:
No por m ucho m adrugar am anece m s tem prano, 2 003 -06 -03
Quien a buen rbol se arrim a buena som bra le cobija, 2 003 -08-1 5
CMO VER LOS DATOS QUE TENEMOS EN UNA TABLA
Para extraer los datos y que nos los presente en pantalla, utilizam os la orden SELECT. SELECT, sirv e para
hacer casi cualquier cosa, as que os cansaris de utilizarla

SELECT * FROM refranero;


En cristiano: Selecciona todo de la tabla refranero; * significa todo.

tomatoma.wordpress.com/manual-de-php/insertar-cambiar-y-borrar-datos-de-una-tabla-mysql/

1/6

21/03/13

9.- Insertar, cambiar y borrar datos de una tabla MySQL | tomando notas

Las selects pueden llegar a com plicarse m ucho, pero de m om ento, para nuestros fines, ha sido fcil no?
Si el texto de nuestro refrn es m uy largo, se nos puede descabalar un poco la tabla y no quedarnos las cosas
tan claras.
Pero y si querem os seleccionar slo un cam po?
SELECT nom bre_del_cam po FROM nom bre_de_la_tabla;
Para nuestra tabla sera;

SELECT ID FROM refranero;


+ -+
| ID |
+ -+
|1 |
|2|
|3|
+ -+

SELECT fecha FROM refranero;


+ -+ +
| ID | fecha |
+ -+ +
| 1 | 2 003 -06 -01 |
| 2 | 2 003 -06 -01 |
| 3 | 2 003 -06 -01 |
+ -+ +
FUNCIONES BSICAS
Cmo seleccionar part e de un campo.
Supongam os que querem os seleccionar slo una parte de cada refran, para que no nos ocupe m ucho en
pantalla, pero al m enos lo justo para reconocer de qu refrn se trata.
Utilizarem os la funcin LEFT que nos perm ite especficar el nm ero de caracteres m xim o que querem os
m ostrar. Por ejem plo querem os v er los 1 5 prim eros caracteres del cam po refrn (los espacios tam bin son
un carcter):

SELECT id, LEFT(refran,15), fecha FROM refranero;

Tam bin podram os seleccionar los ltim os 1 5 con

SELECT ID RIGHT(refran,15), fecha FROM refranero;


Cmo saber cunt os refranes t enemos?
Contando los registros con COUNT
tomatoma.wordpress.com/manual-de-php/insertar-cambiar-y-borrar-datos-de-una-tabla-mysql/

2/6

21/03/13

9.- Insertar, cambiar y borrar datos de una tabla MySQL | tomando notas

SELECT COUNT(*) FROM refranero;


+ -+
| COUNT(*) |
+ -+
|3|
+ -+
Cm o elegir slo aquellos registros que cum plan una determ inada condicin?
Utilizando la clusula WHERE
Por ejem plo, querem os v er todos aquellos refranes que hay an sido publicados despus del 1 junio:

SELECT * FROM refranero WHERE fecha > 2003-06-01;

Aqu la cosa est fcil porque slo tenem os 2 registros que cum plen la condicin, pero y si tuv iram os
cientos, y necesitram os saber cuntos tenem os? Pues los contam os

, utilizando COUNT com o v im os

antes, pero com binndolo con la condicin

SELECT COUNT(*) FROM refranero WHERE fecha > 2003-06-01;

Cmo elegir slo aquellos regist ros que cont engan det erminado t ext o?
Para esto tenem os LIKE, supongam os que querem os encontrar todos aquellos refranes que contenga la
palabra m adrugar. Con Like, le decim os a My sql que querem os que nos dev uelv a todos los registros que
cum plan un patrn que le especificam os, cm o puede ser contener una determ inada palabra, por ejem plo.

SELECT refran FROM refranero WHERE refran LIKE "%madrugar%";

Los caracteres % son com odines, rodeando m adrugar con este sm bolo, le decim os a m y sql que nos d todos
los registros que contengan la palabra m adrugar independientem ente de qu caracteres hay a antes y
despus de la palabra.
Si quisiram os todos los registros que em pezaran por la palabra m adrugar podram os hacer esta query :

SELECT refran FROM refranero WHERE refran LIKE "madrugar%";


Tam bin podem os com binar las distintas form as que hem os v isto para restringir an m s los resultados.
Por ejem plo podem os pedirle a m y sql que nos d todos los registros que contengan la palabra m adrugar y
que hay an sido publicados entre el 1 de julio y el 1 5 de agosto.

mysql> SELECT refran, fecha FROM refranero


-> WHERE refran LIKE "%madrugar%" AND
-> fecha >= "2003-07-01" AND
-> fecha < "2003-08-15";
tomatoma.wordpress.com/manual-de-php/insertar-cambiar-y-borrar-datos-de-una-tabla-mysql/

3/6

21/03/13

9.- Insertar, cambiar y borrar datos de una tabla MySQL | tomando notas

CMO MODIFICAR LOS DATOS QUE TENEMOS EN UNA TABLA


Ahora que y a hem os introducido nuestros refranes en la tabla, echam os un v istazo, y nos dam os cuenta de
que hem os com etido algn error, por ejem plo en el prim er refrn he m etido m al la fecha y aparece 000000-00 y adem s he escrito parajo en v ez de pjaro.
Para arreglar este tipo de entuertos tenem os la orden UPDATE, que nos perm ite hacer cam bios en los datos
que y a tenem os introducido.
La sintaxis de esta orden es:
My sql> UPDATE nom bre_de_table SET
-> nom bre_colum na = nuev o_v alor,
-> WHERE.
Por ejem plo en nuestro caso:

Mysql> UPDATE refranero SET fecha="2003-06-01" WHERE ID=1;


+ + -+ +
| ID | refran | fecha |
+ + -+ +
| 1 | Ms v ale prajo en m ano que ciento v olando | 2 003 -06 -01 |
+ + + +
1 row in set (0.00 sec)
Y ahora querem os cam biar prajo por pjaro, y para ello utilizam os el LIKE com o hacam os antes para v er
los registros, as que le decim os a m y sql que debe cam biar la colum na refrn

Mysql> UPDATE refranero SET refran="Ms vale pjaro en mano que ciento
volando" WHERE refran LIKE "%prajo%";
CMO BORRAR REGISTROS DE UNA TABLA
Ahora que y a sabem os aadir registros y cam biarlos nos toca aprender a borarlos, lo que, com o dice Kev in
Yank, es peligrosam ente fcil.
La sintaxis:
DELETE FROM nom bre_de_tabla WHERE condiciones
Por ejem plo

DELETE FROM refranero where id =1;


si querem os borrar todos los refranes que contengan la palabra am or?

DELETE FROM refranero WHERE LIKE "%amor%";


Y para borrar todos los refranes de nuestra tabla?

tomatoma.wordpress.com/manual-de-php/insertar-cambiar-y-borrar-datos-de-una-tabla-mysql/

4/6

21/03/13

9.- Insertar, cambiar y borrar datos de una tabla MySQL | tomando notas

Todav a m s fcil

DELETE FROM refranero;


Un consejo t ont o, cuando quieras borrar archiv os, prueba prim ero con un select si el select, funciona
correctam ente y te selecciona exactam ente los archiv os que queras borrar; entonces cam bias SELECT por
DELETE y listo.
Y ahora que nos hem os cargado todos los registros, nos cargam os tam bin la tabla y la base de datos

DROP TABLE refranero;


DROP DATABASE refranes;
Qu porqu hago esta locura? Para obligaros a v olv er a em pezar y que practiquis, porque en los siguientes
captulos la v is a necesitar.
Volv er al ndice

Like

Loading...

2 Responses to 9.- Insertar, cambiar y borrar


datos de una tabla MySQL
Jorge Hernandez Martinez
Decem ber 1 6 , 2 01 1 at 2 :1 6 pm
Gracias por el tutorial, m e est ay udando un m ontn pero tengo una duda:
Si quisieram os corregir una sola palabra de un texto en una colum na, por ejem plo quiero sustituir
pajaro por pjaro donde pajaro aparece en una frase com pleta dentro de la colum na created_by _alias,
Cm o puedo hacer para que en la frase el pajaro v uelta alto m e sustituy a slo pajaro por pjaro y
deje el resto de la frase intacta?
Si utilizo UPDATE jos_content SET created_by _alias= %pjaro% WHERE created_by _alias LIKE
pajaro m e m achaca todo el contenido actualizandolo slo con pjaro ;-(
Mil Gracias!

tomatoma
Decem ber 1 6 , 2 01 1 at 2 :3 7 pm
hola Jorge,
m e tem o que hace 1 0 aos y a que escrib este tutorial y hace por lo m enos 6 que no toco una lnea de
cdigo, el php desde entonces se ha ido actualizando
psate por aqu: http://www.forosdelweb.com /f1 8/ que son unos cracks

tomatoma.wordpress.com/manual-de-php/insertar-cambiar-y-borrar-datos-de-una-tabla-mysql/

5/6

21/03/13

9.- Insertar, cambiar y borrar datos de una tabla MySQL | tomando notas

Salu2

tomatoma.wordpress.com/manual-de-php/insertar-cambiar-y-borrar-datos-de-una-tabla-mysql/

6/6

También podría gustarte