elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  Agregar carácter a registros de un campo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Agregar carácter a registros de un campo  (Leído 7,494 veces)
rob1104


Desconectado Desconectado

Mensajes: 340


Usuario común


Ver Perfil WWW
Agregar carácter a registros de un campo
« en: 13 Marzo 2010, 22:42 pm »

Hola a todos, tengo una tabla en una base de datos MySQL, la cual tiene un campo nocontrol tipo varchar, el cual es un numero de control de cada persona. Bueno, debido a un error que tuve al importar los datos, es necesario que agregue un 0 a la izquierda de cada registro, debido a que tengo casi 1000 registros me es muy tedioso hacerlo a mano. Ademas algunos si tienen ya el 0 que les corresponde y otros no :S.

¿Alguna forma sencilla de hacerlo?

Lo mostraré con un ejemplo pequeño:
Código:
mysql> select * FROM alumnos;
+-----------+---------+-----------+
| nocontrol | nombres | apellidos |
+-----------+---------+-----------+
| 6280268   | Juan    | Gonzalez  |
| 6280269   | Jose    | Gutierrez |
| 6280270   | Raul    | Rodriguez |
| 06280271  | Miguel  | Martinez  |
| 6280272   | Pedro   | Perez     |
+-----------+---------+-----------+
5 rows in set (0.00 sec)

Como ven, quiero que todos queden como el de Miguel Martinez, con ese 0 a la izquierda.

Espero me haya explicado bien.

Saludos




En línea

Sin análisis de requisitos o sin diseño, programar es el arte de crear errores en un documento de texto vacío.
^Tifa^


Desconectado Desconectado

Mensajes: 2.804


Ver Perfil
Re: Agregar carácter a registros de un campo
« Respuesta #1 en: 14 Marzo 2010, 00:23 am »

A nivel de programacion en un script es mas simple... como ya tienes valores o registros en el campo... podrias crear una vista o otra tabla asi:

CREATE VIEW VISTA AS SELECT CONCAT('0',NOCONTROL), NOMBRES, APELLIDOS FROM ALUMNOS WHERE NOMBRES != 'MIGUEL';

Luego ya si en vez de una vista creas una tabla, podrias borrar la anterior y renombrar la nueva con el nombre de la anterior...


En línea

Spider-Net


Desconectado Desconectado

Mensajes: 1.165


Un gran poder conlleva una gran responsabilidad


Ver Perfil WWW
Re: Agregar carácter a registros de un campo
« Respuesta #2 en: 14 Marzo 2010, 01:15 am »

También podría hacerse desde PHP con un simple script, recorriendo cada uno de los valores en un bucle y concatenando el cero a la izquierda:

Código
  1. $sql=mysql_query("SELECT nocontrol FROM alumnos");
  2. while($row=mysql_fetch_array($sql)){
  3.      $nocontrol="0".$row['nocontrol'];
  4.      $actualizar=mysql_query("UPDATE alumnos SET nocontrol='$nocontrol' WHERE nocontrol=\"$row['nocontrol']\"");
  5. }
  6.  
« Última modificación: 14 Marzo 2010, 01:18 am por Spider-Net » En línea

rob1104


Desconectado Desconectado

Mensajes: 340


Usuario común


Ver Perfil WWW
Re: Agregar carácter a registros de un campo
« Respuesta #3 en: 16 Marzo 2010, 07:59 am »

Muchas gracias a los 2, lo solucioné de la siguiente forma:    
Código
  1. $sql = mysql_query("SELECT nocontrol FROM alumnos");
  2. while($row = mysql_fetch_array($sql))
  3. {
  4.    if($row[0][0] != 0)
  5.    {
  6.        $nocontrol = "0$row[0]";
  7. $actualizar = mysql_query("UPDATE alumnos SET nocontrol = '$nocontrol' WHERE nocontrol = '$row[0]'");
  8.    }  
  9. }

Saludos
En línea

Sin análisis de requisitos o sin diseño, programar es el arte de crear errores en un documento de texto vacío.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines