Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/03/2012, 08:11
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Update masivo a una tabla

Para hacer eso necesitas primero cambiar el tipo de columna de INT a VARCHAR, y luego hacer un UPDATE masivo que tome lo que hay y le agregue antes "REG".
Código MySQL:
Ver original
  1. UPDATE referencias
  2. SET id = CONCAT('REG', id);

Por otro lado, personalmente no le veo la utilidad de cambiar 120001, 120002, tc., por REG120001, REG120002, etc.
Si "REG2, es una categoría o un campo discriminante de la tabla, lo que necesitas es agregar una columna que lo contenga, y en las consultas hacer un CONCAT() entre ambas para obtener el ID de esa forma.
Por lo demás, el agregar un conjunto de caracteres hará que la condición de numero secuencial desaparezca, y no podrás hacer búsquedas de >= o <=, sin el auxilio de funciones de caracteres y conversiones.
¿Realmente es una necesidad del sistema hacerle ese agregado?
Creo que las desventajas superan a las ganancias...

Un tip final: ¿Sabías que ese numero entre paréntesis en la definición de un INT (como por ejemplo el INT(3)), no condiciona la cantidad de dígitos del número, sino sólo su representación en consola, y que de todos modos en tu caso no tiene ningún efecto?
El rango de una columna numérica no está definido por eso, sino por el tipo (INT, MEDIUMINT, etc.).
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 25/03/2012 a las 09:00