Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Como eliminar contenido que tenga una fila en una tabla mysql

Estas en el tema de Como eliminar contenido que tenga una fila en una tabla mysql en el foro de Mysql en Foros del Web. Buenos dias amigos, quiene me puede ayudar, tengo una fila en una tabla en la cual quiero eliminar la data mas no la fila. si ...
  #1 (permalink)  
Antiguo 30/05/2013, 10:03
 
Fecha de Ingreso: enero-2009
Mensajes: 142
Antigüedad: 15 años, 9 meses
Puntos: 0
Pregunta Como eliminar contenido que tenga una fila en una tabla mysql

Buenos dias amigos, quiene me puede ayudar, tengo una fila en una tabla en la cual quiero eliminar la data mas no la fila. si alguien me puede ayudar se los agradezco
  #2 (permalink)  
Antiguo 30/05/2013, 10:11
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: Como eliminar contenido que tenga una fila en una tabla mysql

Hole juansiruiz:

No me queda claro qué es lo que quieres hacer .

¿a qué te refieres con "la data"? ¿al contenido de un campo? es decir, borrar el dato que está almacenado?

Si entendí correctamente lo que quieres hacer es esto:

Código MySQL:
Ver original
  1. mysql> SELECT * FROM tabla1;
  2. +------+-------------+
  3. | id   | descripcion |
  4. +------+-------------+
  5. |    1 | uno         |
  6. |    2 | dos         |
  7. |    3 | tres        |
  8. +------+-------------+
  9. 3 rows in set (0.00 sec)
  10.  
  11. mysql> UPDATE tabla1 SET descripcion = null;
  12. Query OK, 3 rows affected (0.19 sec)
  13. Rows matched: 3  Changed: 3  Warnings: 0
  14.  
  15. mysql> SELECT * FROM tabla1;
  16. +------+-------------+
  17. | id   | descripcion |
  18. +------+-------------+
  19. |    1 | NULL        |
  20. |    2 | NULL        |
  21. |    3 | NULL        |
  22. +------+-------------+
  23. 3 rows in set (0.00 sec)

Es decir, pongo como vacío (null) el campo descripción, pero no borro la fila...

Es esto lo que quieres hacer???

Te sugiero que en el futuro te tomes más de un renglón para explicar tu problema... total, el foro no cobra por el número de caracteres que incluyes en tu mensaje

Saludos
Leo.
  #3 (permalink)  
Antiguo 30/05/2013, 10:18
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Como eliminar contenido que tenga una fila en una tabla mysql

juansiruiz: Tengo la impresión de que estás confundiendo una tabla de base de datos con una tabla de Excel.
Como dice Leo, explica un poco más detalladamente a qué te refieres, porque lo que planteas no tiene mucho sentido.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 30/05/2013, 10:26
 
Fecha de Ingreso: enero-2009
Mensajes: 142
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Como eliminar contenido que tenga una fila en una tabla mysql

muchas gracias a todos por sus comentarios ya encontre lo que andaba buscando era asi:

UPDATE nombre_tabla SET columna ='';
  #5 (permalink)  
Antiguo 30/05/2013, 11:48
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: Como eliminar contenido que tenga una fila en una tabla mysql

Hola de nuevo juansiruiz:

Recuerda que una cadena vacía ('') no es lo mismo que un campo vacío (NULL) observa que en mi consulta asigno un NULL, esto quiere decir que el campo NO TIENEN NINGÚN VALOR ALMACENADO... este detalle, aunque simple, puede traerte problemas en algunos casos... Observa este script:

Código MySQL:
Ver original
  1. mysql> SELECT * FROM tabla1;
  2. +------+-------------+
  3. | id   | descripcion |
  4. +------+-------------+
  5. |    1 | algo        |
  6. |    2 |             |
  7. |    3 | NULL        |
  8. +------+-------------+
  9. 3 rows in set (0.00 sec)

El registro con el ID = 2 tiene asignada una cadena vacía ('') tal como lo tienes, pero observa qué pasa cuando haces algunas consultas filtrando por este campo:


Código MySQL:
Ver original
  1. mysql> #Preguntando por una cadena vacía
  2. mysql> SELECT * FROM tabla1 WHERE descripcion = '';
  3. +------+-------------+
  4. | id   | descripcion |
  5. +------+-------------+
  6. |    2 |             |
  7. +------+-------------+
  8. 1 row in set (0.00 sec)
  9.  
  10. mysql> #Preguntando por una cadena no vacía
  11. mysql> SELECT * FROM tabla1 WHERE descripcion != '';
  12. +------+-------------+
  13. | id   | descripcion |
  14. +------+-------------+
  15. |    1 | algo        |
  16. +------+-------------+
  17. 1 row in set (0.00 sec)
  18.  
  19. mysql> #Preguntando por un campo NO NULO
  20. mysql> SELECT * FROM tabla1 WHERE descripcion IS NOT NULL;
  21. +------+-------------+
  22. | id   | descripcion |
  23. +------+-------------+
  24. |    1 | algo        |
  25. |    2 |             |
  26. +------+-------------+
  27. 2 rows in set (0.00 sec)
  28.  
  29. mysql> #Preguntando por un campo NULO
  30. mysql> SELECT * FROM tabla1 WHERE descripcion IS NULL;
  31. +------+-------------+
  32. | id   | descripcion |
  33. +------+-------------+
  34. |    3 | NULL        |
  35. +------+-------------+
  36. 1 row in set (0.03 sec)


En lo particular no recomiendo asignar cadenas vacías a campos tipo texto, tal como lo haces... es parte de las buenas prácticas en SQL, pero también es cuestión de gustos

Saludos
Leo.

Etiquetas: contenido, fila, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:25.