Foro de elhacker.net

Programación => Bases de Datos => Mensaje iniciado por: .:UND3R:. en 15 Febrero 2012, 22:30 pm



Título: Incrementar datos de una columna
Publicado por: .:UND3R:. en 15 Febrero 2012, 22:30 pm
Hola a todos bueno tengo las siguientes columnas:

|ID|nombre|
1     juan
2     esteban
3     alfonso
4     felipe

como podría hacer para que ID aumente de +1 cada vez que se introduscan datos en una fila es decir que si introduzco un nombre después de felipe ID quede con 5?, Muchas gracias Saludos


Título: Re: Incrementar datos de una columna
Publicado por: HdM en 15 Febrero 2012, 22:42 pm
Buenas.

Puedes hacerlo utilizando un campo de autoincremento.

De todos modos, yo de ti, si ese campo va a actuar como clave de la tabla (que parece ser que si), lo crearía de tipo entero y calcularía su valor con el alta de un nuevo registro (de este modo siempre vas a tener un mayor control). De hecho si tu bd tiene más tablas en las que la clave va a ser de este tipo, te puedes crear una función a la que le pases como parámetro el nombre de la tabla y te devuelva el valor que tienes que asignar al campo en la operación de nuevo registro.

Saludos.


Título: Re: Incrementar datos de una columna
Publicado por: Shell Root en 16 Febrero 2012, 04:10 am
Como lo dijeron, podrías hacerlo automaticamente mediante el uso de AUTO_INCREMENT dentro del campo, ejemplo:
Código
  1. CREATE TABLE PoC(
  2.  id INT(4) AUTO_INCREMENT PRIMARY KEY
  3.  nombre VARCHAR(30) NOT NULL,
  4.  apellido VARCHAR(30) NOT NULL
  5. );

O con el uso de la función COUNT() de MySQL, así:
Código
  1. SELECT COUNT(id) FROM PoC;


Título: Re: Incrementar datos de una columna
Publicado por: .:UND3R:. en 16 Febrero 2012, 04:23 am
Muchas gracias por sus respuestas, me han sido de mucha ayuda. Saludos


PD: Solucionado


Título: Re: Incrementar datos de una columna
Publicado por: HdM en 16 Febrero 2012, 09:42 am
Buenas.

Más que usar COUNT(), utilizaría MAX()+1. Se evitarán errores y problemas de duplicidad.

Saludos.