Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Mysql (http://www.forosdelweb.com/f86/)
-   -   Vaciar campos de la BD (http://www.forosdelweb.com/f86/vaciar-campos-bd-406589/)

Haggen 04/07/2006 02:46

Vaciar campos de la BD
 
Tengo una base de datos, en donde en un campo he metido cierto texto. Ese texto quisiera quitarlo y dejar ese campo simplemente en blanco.

Mi comodin en ese campo es "%disponible%" usando el phpmyadmin me ha dado el query para ver los resultados:

Código PHP:

SELECT *
FROM `mnl_items`
WHERE `descriptionLIKE CONVERT_utf8 '%%disponible%%'
USING latin1 )
COLLATE latin1_swedish_ci
LIMIT 0 
30 

(no me pregunten porque lo de "latin1_swedish_ci" que no tengo idea :pensando: )

Bueno, teniendo eso ya detectado, como puedo vaciar esos campos de una sola ves dejandolos en blanco? Son alrededor de 1000 registros, y pues como se imaginaran hacerlo de 1 en 1 seria la muerte. En todo caso me gustaria saber como vaciar la info y tambien como reemplazarla.

Ojala alguien me pueda ayudar.

claudiovega 04/07/2006 08:02

Te sirve esto:

Código:

DELETE campo
FROM `mnl_items`
WHERE `description` LIKE CONVERT( _utf8 '%%disponible%%'
USING latin1 )
COLLATE latin1_swedish_ci
LIMIT 0 , 30


Haggen 04/07/2006 11:56

No me funciona ese query...

lo puse asi

Código PHP:

 DELETE description FROM `mnl_items`  WHERE `descriptionLIKE CONVERT_utf8 '%%disponible%%' USING latin1 )  COLLATE latin1_swedish_ci 

Y me da este error..

#1109 - Unknown table 'description' in MULTI DELETE

claudiovega 04/07/2006 17:12

Cierto, una mala costumbre, creo que en access funciona ese query.
Prueba esto:

Código:

UPDATE
`mnl_items`
SET description=NULL
WHERE `description` LIKE CONVERT( _utf8 '%%disponible%%'
USING latin1 )
COLLATE latin1_swedish_ci
LIMIT 0 , 30


Haggen 04/07/2006 17:42

Excelente.. muchas gracias :D

Haggen 07/07/2006 10:40

Hola de nuevo... no quise abrir otro tema puesto que es basicamente lo mismo..

Tengo este campo, donde durante 2 años meti cierto valor que ya no deseo.. Pero, dentro de ese campo hay palabras que si deseo que permanezcan. Hay manera de eliminar palabras o texto especifico y dejar el resto intacto??


Muchas gracias

claudiovega 07/07/2006 13:26

Si, el mismo update te sirve, por ejemplo:

Código:

Tabla clientes

---------------------
id      nombre
---------------------
1        claudio vega
2        claudio vargas
3        juan perez

Supongamos que quieres borrar la palabra claudio del campo nombre, el sql sería:

Código:

update table clientes set nombre=replace("claudio","",nombre)
Esto daría como resultado:

Código:

Tabla clientes

---------------------
id      nombre
---------------------
1        vega
2        vargas
3        juan perez


Haggen 07/07/2006 16:06

Hizo el trabajo.. pero lo hizo alreves creo..

este fue my query...

Código PHP:

UPDATE TABLE
`mnl_items`
SET config_field_8=replace("<a href=","",config_field_8

Lo explico.. en ese campo estuve poniendo links a paginas oficiales de cada articulo. Cuando recien inicie con el sistema y metiendome un poco al PHP y MYSQL pues lo hice de la manera "facil", y esta fue meter el codigo html completo...

Código HTML:

<a href=http://www.pagina.com target=_blank><b>Info</b></a>
Ahora se como dejar unicamente la url e imprimirla como tal en la pagina. Por lo que quiero hacer es solo dejar la url en el campo de texto.

El query que use hizo el cambio, pero fue alreves... me quito todo excepto '<a href=', cual seria la modificacion?

Muchas gracias claudio..

P.D Afortunadamente respalde antes de hacer eso :D

Haggen 07/07/2006 16:16

Lo logre claudio.. estaba mal la sintaxis...

esta fue la final..

Código PHP:

UPDATE
`mnl_items`
set config_field_8 replace(config_field_8,'<a href=',''); 

Lo pongo de otra manera para la gente que busque REPLACE en el foro.


Código:

update [nombre_de_tabla]
set [nombre_del_campo] = replace([nombre_del_campo],'[texto_pa_buscar]','[el_reemplazo]');

NOTA: QUITEN LOS [ ]

**************************EDIT ***************************
Lo he logrado... quite todo el codigo basura que no me sirve.. Ahora tengo 2 urls en cada campo! haha... Son mas de 2000 articulos.. modificar esto y eliminar una de las urls me llevara muchisimo tiempo. Asi que ahora, mi nueva duda es..

Se pueden eliminar (o remplazar por caracter en blanco) caracteres apartir de cierta posicion hasta el final. veras.. mis campos se ven asi:

http://www.hanaukyo.com/ http://www.hanaukyo.com/

http://www.neo-rahxephon.com/ http://www.neo-rahxephon.com/

http://www.tv-tokyo.co.jp/anime/rockmanexe/ http://www.tv-tokyo.co.jp/anime/rockmanexe/

Etc etc.. mi idea (que no se como ejecutar) seria que reconozca al patron en este caso seria "/ http://" y que elimine todo lo que halla hasta el final?

Creo que seria la unica manera de conseguir borrar una de esas urls.

Agradezco mucho tu ayuda.


La zona horaria es GMT -6. Ahora son las 19:42.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.