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

update a una parte de una cadena?

Estas en el tema de update a una parte de una cadena? en el foro de Bases de Datos General en Foros del Web. Hola muchacho(a)s les cuento que tengo un campo con permisos de esta forma. campo = 00100010000100001 entonces quiero modificar el tercer valor de 1 a ...
  #1 (permalink)  
Antiguo 27/04/2010, 08:13
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 19 años, 2 meses
Puntos: 49
update a una parte de una cadena?

Hola muchacho(a)s les cuento que tengo un campo con permisos de esta forma.

campo = 00100010000100001

entonces quiero modificar el tercer valor de 1 a cero por ejemplo, de esta forma

UPDATE mitabla SET SUBSTRING(campo, 3, 1) = '$valor' WHERE id = '$_POST[id]';


pero no me resulta :/ no se puede hacer un substr hay?

saludos...
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #2 (permalink)  
Antiguo 27/04/2010, 09:31
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: update a una parte de una cadena?

que base de datos usas?
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 27/04/2010, 14:08
 
Fecha de Ingreso: octubre-2009
Mensajes: 43
Antigüedad: 15 años, 1 mes
Puntos: 1
Respuesta: update a una parte de una cadena?

Hola!!!

No modifiques solamente digito, modifica toda la cadena, que tiene como particularidad que se modifica el tercer valor, y haces un update. Asi te resulta mas como de manejar
__________________
Hosting y Web
!! su aliado virtual !!
http://www.hostingyweb.net
  #4 (permalink)  
Antiguo 27/04/2010, 14:18
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 19 años, 2 meses
Puntos: 49
Respuesta: update a una parte de una cadena?

uso mysql.
mmmm pero para modificar toda la cadena tengo que hacer una consulta antes para traerme la cadena y luego ingresar el resultado en una variable, para luego hacerle un substr con php por ejmplo e insertarle al tercer valor un update :/ no es como mucho digo io, creo que me podría evitar todo eso directamente haciéndolo en el update, pero no logro hacer que me tome el SUBSTRING :/ alguna otra idea?
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #5 (permalink)  
Antiguo 27/04/2010, 14:25
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: update a una parte de una cadena?

kaninox no existe una función que haga esto. La podrías construir desde mysql, pero sería lo mismo que si la trataras desde php.

El substring no aplica para estos casos, ya que lo que hace el substring es en su segundo prametro de entrada, pararse en esa posición y avanzar el numero de posiciones que indique la 3ra posición.

Código MySQL:
Ver original
  1. mysql> select substring(cad,3,1) from cadena;
  2. +--------------------+
  3. | substring(cad,3,1) |
  4. +--------------------+
  5. | 1                  |
  6. +--------------------+
  7. 1 row in set (0.00 sec)
  8.  
  9. mysql> select substring(cad,3,3) from cadena;
  10. +--------------------+
  11. | substring(cad,3,3) |
  12. +--------------------+
  13. | 100                |
  14. +--------------------+
  15. 1 row in set (0.00 sec)

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming

Etiquetas: update, cadenas
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 23:58.